Skip to content

ONHEXGROUP

اخبار دنیای امنیت سایبری

  • اخبار
    • آسیب پذیری امنیتی
    • آنالیز بدافزار
    • کنفرانس ،دوره ، وبینار ، لایو ، CTF
    • بازیگران تهدید
    • توسعه اکسپلویت
    • افشای اطلاعات
    • باگ بانتی
    • تیم آبی
    • تیم قرمز
    • امنیت وب
  • دوره های آموزشی
    • دوره رایگان مهندسی معکوس نرم افزار
  • لیست های ویژه
    • موتورهای جستجو برای امنیت سایبری
    • کاتالوگ KEV آژانس CISA
    • آسیب پذیری های وردپرس
      • آسیب پذیری پلاگین ها
      • آسیب پذیری های هسته
      • آسیب پذیری تم ها
    • محصولات خارج از پشتیبانی مایکروسافت
      • محصولات مایکروسافتی که در سال 2022 پشتیبانی نمیشن
      • محصولات مایکروسافتی که در سال 2023 پشتیبانی نمیشن
      • لیست محصولات مایکروسافتی که در سال 2024 پشتیبانی نمیشن
      • لیست محصولات مایکروسافتی که در سال 2025 پشتیبانی نمیشن
    • معرفی فیلم ها و سریالهای مرتبط با هک و امنیت
  • آموزش های ویدیویی
  • انتشارات
    • مجله
    • مقالات
    • پادکست
  • پروژه ها
    • ماشین آسیب پذیر
      • وردپرس آسیب پذیر
  • حمایت مالی ( Donate)
  • تماس با ما
 
  • Home
  • اخبار
  • آنالیز بدافزار
  • اخبار
  • بازیگران تهدید

احتمال حضور هکرهای ایرانی پشت کمپین WINTAPIX

On خرداد 3, 1402مهر 2, 1402
seyyid
Share
زمان مطالعه: 7 دقیقه

فورتی نت یه گزارشی منتشر کرده در خصوص یه کمپین، که از یه درایور کرنلی بنام WinTapix.sys در حملاتشون استفاده کردن و با توجه به هدف، با احتمال کم، اونو به ایران نسبت دادن.

فورتی نت گفته که فایلهای اجرایی مشکوکی که از ابزارها و فریمورکهای متن باز استفاده میکنن رو رصد میکنه. یکی از این ابزارها، پروژه Donut هستش. با استفاده از این ابزار میشه، .NET Assemblies ، فایلهای اجرایی و سایر پیلودها رو به یه شلکد مستقل (position-independent shellcode)  تبدیل کرد و با استفاده از تکنیکهایی مانند process hollowing یا thread hijacking از مموری لوود و اجرا کرد.

در جریان شکار تهدید در اوایل فوریه، محققین متوجه میشن که یه درایور کرنلی از Donut استفاده میکنه، بنابراین به قضیه مشکوک میشن و بیشتر آنالیزش میکنن.

درایوری که استفاده شده، WinTapix.sys هستش و بنابراین اسم نمونه ای که در شکار تهدید بدست آوردن رو ، WINTAPIX گذاشتن. از این نمونه، برای حملات هدفمندی در کشورهای خاورمیانه استفاده شده.

نمونه، در مه 2020 کامپایل شده اما در فوریه 2023 در VT آپلود شده. محققا با توجه به این نمونه، یه نمونه دیگه از این درایور رو به همین نام پیدا کردن که در همون زمان کامپایل شده اما در سپتامبر 2022 در VT آپلود شده. یه نمونه دیگه از WINTAPIX رو هم پیدا کردن که از درایور SRVNET2.SYS استفاده میکنه و در ژوئن 2021 کامپایل شده و در دسامبر 2021 در VT آپلود شده.

براساس اطلاعاتی که محققین بدست آوردن ، معنقدن که این درایور از اواسط 2020 مورد استفاده قرار گرفته و تا الان گزارشی در خصوصش منتشر نشده. همچنین محققین براساس گزارشات تله متری ، متوجه شدن که 65 درصد بررسیها برای این درایور ، در عربستان بوده، که نشون دهنده هدف اصلی بوده. همچنین تله متری نشون میده که بررسی ها برای این درایور در آگوست و سپتامبر 2022 و فوریه و مارس 2023 بیشتر شده. این نشون میده که بازیگران پشت این درایور، کمپین های بزرگی رو در این تاریخ ها اجرا کردن.

محققین اعلام کردن که هنوز نمیدونن این درایور چطوری توزیع شده و یا بازیگران تهدیدش چه کسانی هستن، اما براساس هدف اصلی که عربستان هستش، با احتمال کم اونو به، هکرهای ایرانی نسبت دادن. علاوه بر عربستان، اردن و قطر و امارات هم هدف قرار گرفتن که اینها هم باز اهداف ایران هستن.

از اونجایی که بازیگران تهدید ایرانی ، به اکسپلویت سرورهای Exchange برای استقرار بدافزار معروف هستن، ممکنه این درایور در کنار حملات Exchange استفاده شده باشه. چون زمان کامپایل درایورها با زمان حملات Exchange همسو هستش.

 

 

تحلیل فنی:

نمونه ای که محققا اونو بررسی کردن ، 8578bff36e3b02cc71495b647db88c67c3c5ca710b5a2bd539148550595d0330 هستش و شکل زیر ویژگی های این درایور رو با استفاده از ابزار sigcheck نشون میده :

 

درایور wintapix

 

همونطور که مشاهده میکنید، امضای اون نامعتبره، این یعنی اینکه، بازیگر ممکنه از یه درایور آسیب پذیر اما قانونی برای لوود Wintapix.sys استفاده کرده.

اگه درایور Wintapix.sys لوود بشه، مراحل زیر اجرا میشه :

  • Wintapix.sys در کرنل لوود میشه
  • این درایور یه شلکد رو به یه پروسس که امتیاز local system داره تزریق میکنه
  • شلکد یه پیلود دات نتی که رمزشده رو لوود و اجرا میکنه.

 

روند اجرای wintapix

 

درایور Wintapix :

Wintapix.sys تا حدودی با VMProtect محافظت شده. VMProtect یه ابزاری هستش که با استفاده از مجازی سازی ، از برنامه ها در برابر کرک و مهندسی معکوس جلوگیری میکنه. کاری هم که میکنه اینه که فایل اجرایی رو به یسری virtualized code تبدیل میکنه که در یه محیط امن قابل اجراست، در نتیجه آنالیز اونو سختتر میکنه.

اما نکته ای که وجود داره، همه بخش های درایور با این ابزار محافظت نشدن، از جمله قسمتی که مرحله بعدی حمله رو پیاده سازی میکنه.

 

تزریق شلکد:

Wintapix.sys در حقیقت یه لودر هستش. بنابراین هدف اصلی اون ، لود و اجرای مرحله بعدی حمله هستش. این کار توسط یه شلکد انجام میشه. نکته جالب اینکه این شلکد بدون هیچ مبهم سازی، در باینری قرار گرفته.

 

تزریق شلکد

 

این کار حفاظت VMProtect رو زیر سوال میبره، چون آنتی ویروسها میتونن، شلکد رو داخل باینری شناسایی کنن.

برای تزریق شلکد، درایور باید یه پروسس مناسب پیدا کنه. این پروسس باید شرایط زیر رو داشته باشه :

  • این پروسس باید با اکانت Local System اجرا شده باشه
  • 32 بیتی باشه
  • در لیست بلاک شده ها نباشه. این لیست شامل wininit.exe ، csrss.exe، smss.exe، services.exe ، winlogon.exe و lsass.exe هستش. (غیر از اینا باشه)

 

پروسس هدف

 

در نهایت اگه یه پروسسی پیدا بشه، اون پروسس با ZwOpenProcess باز شده و با ZwAllocateVirtualMemory یه حافظه ای در پروسس هدف اختصاص داده میشه و با NtWriteVirtualMemory ، شلکد بهش تزریق میشه. آدرس NtWriteVirtualMemory در زمان اجرا بازیابی میشه، تا بدافزار بتونه فراخوانی تابع رو از آنالیز استاتیک مخفی نگه داره.

 

تزریق شلکد wintapix

 

پرسیست :

برای پرسیست در ابتدا از رجیستری استفاده میکنه و کلیدهای زیر رو ایجاد میکنه :

 

1
2
3
\\REGISTRY\\MACHINE\\SYSTEM\\CurrentControlSet\\Services\\WinTapix
\\REGISTRY\\MACHINE\\SYSTEM\\CurrentControlSet\\Control\\SafeBoot\\Minimal\\WinTapix.sys
\\REGISTRY\\MACHINE\\SYSTEM\\CurrentControlSet\\Control\\SafeBoot\\Network\\WinTapix.sys

 

بعدش برای درایورها ، سرویس ایجاد میکنه :

 

ایجاد سرویس wintapix

 

نکته جالب اینه که درایور قراره در Safe Boot لوود بشه. Safe Boot که بعنوان Safe Mode هم شناخته میشه، یه حالت راه اندازی با حداقل درایور و سرویس هستش تا کاربران بتونن، ایرادات سیستم رو تشخیص و رفع کنن. لوود درایور در حالت Safe Boot یه روش دیگه برای پرسیست هستش.

تمام کلیدهای رجیستری با استفاده از ZwNotifyChangeKey مونیتور میشن. این تابع که از نوع کرنلی هستش، تغییرات رجیستری رو مونیتور میکنه. این کار باعث میشه، اگه بدافزار حذف بشه، خودش دوباره بازیابی کنه.

همچنین یه Thread جدید بنام PsCreateSystemThread برای مونیتور کردن محل فایل Wintapix.sys ایجاد میشه. برای مونیتور کردن هم از NtNotifyChangeDirectoryFile استفاده میکنه. در نتیجه اگه فایل حذف بشه، دوباره اونو در همون محل ایجاد میکنه.

 

مونیتور فایل wintapix

 

شلکد تزریق شده :

خوشبختانه میشه شلکد رو از درایور دامپ گرفت و بصورت مجزا ، آنالیزش کرد. شلکد نشون دهنده اینه که با پروژه Donut ایجاد شده. بنابراین هدف اصلی اینجا اینه که مرحله بعدی حمله که .NET assembly هستش رو استخراج و آنالیز کنیم.

با شناسایی و شکستن تابع رمزگشا (decryption) در یه دیباگر ، میشه پیلود .NET رو از شلکد Donut استخراج کرد. برای این کار بعد از اجرای رمزگشا، میشه .NET assembly رو از مموری دامپ گرفت.

 

پیلود .NET :

محققا بعد از اینکه پیلود رو بعنوان یه فایل ذخیره کردن، اونو بعنوان یه فایل اجرایی دات نتی آنالیزش کردن.

از دید مهندسی معکوس، یکی از مزایای فایلهای دات نتی ، تبدیل ساده اونا به سورس کدشون هستش، که باعث درک ساده تر از اهداف و عملکرد باینری میشه. اما اگه این فایل دات نتی رو با Detect It Easy بررسی کنیم ، متوجه میشیم که با یسری مبهم کننده از جمله Smart Assembly و Eazfuscator محافظت میشه.

ابزارهای deobfuscator جواب ندادن و محققا مجبور شدن که اونو دستی تحلیل کنن.

 

obfuscator wintapix

 

تابع اصلی برنامه، در ابتدا با استفاده GetListUrls دو تا آرایه رو دیکد میکنه که نتایج شامل یسری URL هستش.

 

encoded strings

 

آرایه input بعد از دیکد شدن :

 

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
"accidents_"
"js-"
"aspnet_client_"
"js_search-"
"_book"
"library-"
"subject_"
"lookup_data-"
"_toj_web"
"mng_data_bank_"
"transactions-"
"_models"
"trn_fitness-"
"news_"
"update-"
"_omrvision"
"user_accounts-"
"popup_"
"violation-"
"_program_steps"
"workflow-"

 

آرایه input2 بعد از دیکد شدن :

 

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
"programs_skill_"
"competences-"
"properties_"
"-content"
"_report"
"evaluation-"
"expert_data_"
"css-"
"_expert_form"
"img-"
"-field"
"educat_"
"reports-"
"_employee"
"-scales"
"files_"
"scripts-"
"_fonts"
"-skill"
"helpes_"

 

از این مقادیر برای ساخت URL استفاده میشه. با این حال بدافزار دنبال ویژگی های Microsoft Internet Information Services (IIS) ، برای ساخت اوناست. این یعنی اینکه بدافزار فقط سرورهای IIS هدف قرار میده.

با توجه به ویژگی های IIS که در شکل زیر مشاهده میکنید، بدافزار سایتهایی که توسط سرور IIS میزبانی میشن رو استخراج میکنه و با استفاده از اونا و رشته هایی که در بالا استخراج شدن، لیستی از الگوهای URL رو ایجاد میکنه که میخواد به اونا گوش بده.

 

ایجاد الگوی url

 

در نهایت از این لیست URLها، برای بکدور و پروکسی استفاده میشه.

از لیست input2 برای بکدور استفاده میشه. یه HTTP listener روی این URLها راه اندازی میکنه و با استفاده از تابع Program.HandleRequest ، درخواستهای ورودی رو مدیریت میکنه، در نهایت اونارو به تابع RequestHandler.Execute که در شکل زیر مشاهده میکنید ، می فرسته :

 

بررسی درخواستهای ورودی در RequestHandler.Execute

 

در انتهای کدهای بالا، اگه درخواست ورودی حاوی رشته ، wOxhuoSBgpGcnLQZxipa باشه، رشته UsEPTIkCRUwarKZfRnyjcG13DFA برگردونده میشه. این عمل در حقیقت فعال بودن بکدور (heartbeat implementation) رو بررسی میکنه.

اگه درخواست حاوی پارامتر Jet یا <space>Ver باشه، مقدار اونا با base64 دیکد شده و یه دستور با cmd /c <command> می سازه و اونو به تابع RunCommand ارسال میکنه، که با استفاده از Process.start اجرا شده و خروجی بعنوان پاسخ به درخواست مربوطه ارسال میشه.

اگه درخواست دارای یه بدنه (body) باشه، تابع RunData ، که در شکل زیر مشاهده میکنید، اجرا میشه.

 

wintapix rundata

 

این تابع ، بدنه درخواست رو رمزگشایی میکنه و بسته به پیام ارسالی ، کارایه زیر انجام میده :

  • RunCommand : مانند موارد قبلی دستور اجرا میکنه.
  • UploadFile : فایل موجود در درخواست، در یه فایلی مینویسه
  • DownloadFile: فایل درخواست شده رو بصورت HTTP response ارسال میکنه.

همه پیامهای ارسالی و دریافتی رمزنگاری میشن. همونطور که در شکل زیر مشاهده میکنید، وجود PrivateKey نشون دهنده یه الگوریتم نامتقارن هستش. اما با بررسی که روی کد کردن متوجه شدن که چنین نبوده و یه رمزنگاری ساده XOR با کلید PrivateKey هستش.

 

 wintapix PrivateKey

 

تابع رمزگشای wintapix

 

از لیست input ،با استفاده از تابع Proxy.HandleRequest برای راه اندازی proxy listener روی این URLها استفاده میشه. این قسمت از برنامه میتونه انواع مختلفی از data stream رو مدیریت کنه. اگه فقط داده باشه، بعنوان یه پروکسی عمل میکنه و داده ها رو بین دو طرف پروکسی ارسال و دریافت میکنه.

همچنین میتونه پیکربندی RDP رو بگیره :

 

rdp wintapix

 

با این داده میتونه یه ارتباط RDP روی ماشین هدف باز کنه و اونو به عامل تهدید پروکسی کنه.

 

IOC ها :

 

نام فایل sha256
srvnet2.sys f6c316e2385f2694d47e936b0ac4bc9b55e279d530dd5e805f0d963cb47c3c0d
WinTapix.sys 1485c0ed3e875cbdfc6786a5bd26d18ea9d31727deb8df290a1c00c780419a4e
WinTapix.sys 8578bff36e3b02cc71495b647db88c67c3c5ca710b5a2bd539148550595d0330
injected shellcode aae9c8bd9db4e0d48e35d9ab3b1a8c7933284dcbeb344809fed18349a9ec7407
.net payload 27a6c3f5c50c8813ca34ab3b0791c08817c803877665774954890884842973ed

 

منبع

 

 

اشتراک در شبکه های اجتماعی :

Facebook
Twitter
Pinterest
LinkedIn
In آنالیز بدافزار اخبار بازیگران تهدیدIn Detect It Easy , donut , Exchange , Fortinet , NET assembly , NtNotifyChangeDirectoryFile , NtWriteVirtualMemory , process hollowing , Safe Boot , Safe Mode , shellcode , sigcheck , Smart Assembly , SRVNET2.SYS , Thread hijacking , VirusTotal , VMProtect , WINTAPIX , WinTapix.sys , ZwAllocateVirtualMemory , ZwNotifyChangeKey , ZwOpenProcess , آنالیز بدافزار , درایور , شلکد , فورتی نت

راهبری نوشته

گوگل اکانتهایی که بیش از 2 سال غیرفعال بودن، حذف میکنه
برنامه باگ بانتی گوگل برای برنامه های موبایل

دیدگاهتان را بنویسید لغو پاسخ

نشانی ایمیل شما منتشر نخواهد شد. بخش‌های موردنیاز علامت‌گذاری شده‌اند *

دسته‌ها

  • Osint
  • آسیب پذیری امنیتی
  • آموزش های ویدیویی
  • آنالیز بدافزار
  • اخبار
  • افشای اطلاعات
  • امنیت وب
  • انتشارات
  • اینترنت اشیاء
  • بازیگران تهدید
  • باگ بانتی
  • پادکست
  • پروژه ها
  • توسعه اکسپلویت
  • تیم آبی
  • تیم قرمز
  • دوره های آموزشی
  • فازینگ
  • کنفرانس ،دوره ، وبینار ، لایو ، CTF
  • لیست های ویژه
  • ماشین آسیب پذیر
  • مجله
  • مقالات
  • مهندسی معکوس نرم افزار

پست های مرتبط

  • آسیب پذیری امنیتی
  • اخبار
seyyid
On دی 16, 1401اسفند 23, 1401

تکنیک جدید COVID-bit برای هک سیستمهای air-gap

  • آسیب پذیری امنیتی
  • اخبار
seyyid
On مرداد 16, 1402

آسیب پذیری Command Injection در Check Point Gaia Portal

  • اخبار
  • تیم قرمز
seyyid
On اسفند 8, 1401فروردین 28, 1402

انتشار نسخه جدید Empire و Starkiller

  • آسیب پذیری امنیتی
  • اخبار
  • بازیگران تهدید
  • توسعه اکسپلویت
  • مقالات
seyyid
On فروردین 13, 1402فروردین 28, 1402

استفاده از آسیب پذیری 10 ساله در حملات 3CX

درباره ما

بعد از چندین سال فعالیت تو حوزه امنیت سایبری و تولید محتوا در شبکه های اجتماعی ، بالاخره تصمیم گرفتیم تا یه سایت راه اندازی کنیم و مطالب رو ساده تر ، در یک محیط منسجم و طبقه بندی شده به دست مخاطب برسونیم. امیدوارم که قدمی در راستای رشد امنیت سایبری کشورمون برداشته باشیم.

تگ ها

0day APT command injection Deserialization of Untrusted Data Directory Traversal FBI Fortinet Heap buffer overflow integer overflow kali LockBit Memory Corruption nuclei Off By One Security out-of-bounds write Out of bounds read Patch Tuesday PWN2OWN Stack Buffer overflow type confusion use after free vulnerable wordpress XSS ZDI vulnerability آموزش اکسپلویت نویسی ارز دیجیتال اندروید اپل اکسپلویت باج افزار تلگرام زیرودی سیسکو فارنزیک فورتی نت فیشینگ لاک بیت مایکروسافت هوش مصنوعی وردپرس وردپرس آسیب پذیر ویندوز پلاگین کروم گوگل

شبکه های اجتماعی

    • Instagram
    • Telegram
    • Twitter
    • GitHub
    • YouTube
    • LinkedIn
      کپی مطالب با ذکر منبع بلامانع است | 1401-1404