
تحليل الهندسة العكسية لـ PureRAT RAT الذي يستغل msbuild.exe، واستخراج بنية C2 التحتية، وواجهات برمجة التطبيقات للتخفي في .NET، والتلاعب بنظام الملفات، وآليات الاستمرارية عبر VBScript.
يكشف تحليل الذاكرة باستخدام Process Hacker أن PureRAT يُنفَّذ عبر msbuild.exe (أداة بناء شرعية من Microsoft) ويتصل بخوادم C2 متعددة.
MSBuild.exe (PID 2056).pure8s.ddnsfree.com52.241.248.38HKEY_CURRENT_USER\Software\95082F4ACEBFA802830...Erişim izinlerinize izin verilmeyen bir... (رسالة خطأ رفض الوصول).msbuild.exe، وهي أداة شرعية، لأغراض التنفيذ.
عرض Process Hacker يُظهر سلاسل msbuild.exe مع نطاق C2 (pure8s.ddnsfree.com) وعنوان IP (52.241.248.38).
يكشف تحليل الذاكرة باستخدام Process Hacker لـ msbuild.exe أن PureRAT يستخدم واجهات برمجة التطبيقات (APIs) الخاصة بالتلاعب بـ .NET والتهرب لتجنب الاكتشاف.
DisableNativeImageLoad – يعطّل تحميل الصور الأصلية (تهرب).FlsSetValue / FlsGetValue – Fiber Local Storage (مكافحة التصحيح).OpenProcessToken / GetTokenInformation – التلاعب بالرموز (تصعيد الصلاحيات).CreateBoundaryDescriptorW – إنشاء واصفات الحدود (تهرب من البيئة المعزولة).mscordacwks.dll – مكتبة تصحيح .NET (تهرب محتمل من التصحيح).AssemblyPath / BindingConfiguration – تحميل تجميعات .NET.WerRegisterRuntimeExceptionModule – التلاعب بالإبلاغ عن الأخطاء.AttachThreadAlwaysOn – ربط الخيوط (الحقن).AssemblyPath و BindingConfiguration استخدام .NET.DisableNativeImageLoad و CreateBoundaryDescriptorW في تجنب الاكتشاف.OpenProcessToken من التلاعب بالرموز.FlsSetValue و AttachThreadAlwaysOn عملية التحليل.
عرض Process Hacker يُظهر DisableNativeImageLoad و OpenProcessToken وواجهات API أخرى للتهرب.
يكشف تحليل Binary Ninja لكود DisableNativeImageLoad المحفوظ أن PureRAT يستخدم التلاعب بتجميعات .NET وبنى بيانات قائمة على XML.
MicrodomImplementation – تنفيذ Microsoft XML DOM.CreateMicrodomSource – إنشاء مصدر XML DOM (الإعدادات).DsiGBufferedStream – دفق مُخزَّن مؤقتًا لمعالجة البيانات.CRTIXMLDSIGBaseHasher – تجزئة التوقيع الرقمي XML.CRTIXMLDSIGEnvelopedSignatureTransformer – تحويل توقيع XML.AssemblyPath – مسار تجميع .NET.BindingConfiguration – إعدادات ربط .NET.DsiGBufferedStream مع تدفقات البيانات الكبيرة.DisableNativeImageLoad تحميل الصور الأصلية، مما يعقّد التحليل.
عرض Binary Ninja يُظهر MicrodomImplementation و DsiGBufferedStream وواجهات API لتوقيع XML.
يستكمل هذا القسم تحليل Binary Ninja لكود DisableNativeImageLoad من القسم السابق. ويكشف عن عمليات نظام الملفات والتلاعب بـ CDF (ملف تعريف المكوّن) الذي يستخدمه PureRAT.
DeleteFile، QueryAttributesFile، QueryDirectoryFile، WriteFile، ReadFile، CopyFile، CreateHardLinkOrCopyFile، CreateFile – تحكم كامل بنظام الملفات.(ReferenceIdentityList != 0) || (CurrentPosition == 0) – يتحقق من مراجع CDF.(NewCdf->Flags & ~((0x00000001) | (0x00000002))) == 0 – يفحص أعلام CDF.CreateFile(da={da}, oa={oa}, fa={fa}, sa={sa}, cd={cd}, co={co}):(st={st}.h={h}) – يبني مسارات الملفات ديناميكيًا.
عرض Binary Ninja يُظهر عمليات الملفات والتحقق من CDF والبناء الديناميكي للمسارات.
يكشف تحليل الذاكرة باستخدام Process Hacker لـ msbuild.exe أن PureRAT يستخدم .NET Remoting وواجهات API الخاصة بالوكيل للاتصال بين العمليات وحقن الكود.
GetServerDomainIdForProxy – يسترجع معرّف نطاق الخادم للوكيل.RegisterAssembly – يسجّل تجميع .NET.CreateProxyForDomain – ينشئ وكيلًا لنطاق.MarshalToBuffer / UnmarshalFromBuffer – يُسلسل/يُزيل تسلسل البيانات.GetLocalSignature – يسترجع التوقيع المحلي.ThrowException – يطرح استثناءات (معالجة الأخطاء).UnsafeCast / UnsafeEnumCast – تحويل أنواع غير آمن (تهرب).ExecuteBackoutCodeHelper – ينفّذ كود التراجع.GetServerDomainIdForProxy استخدام Remoting.CreateProxyForDomain من الاتصال بين العمليات.MarshalToBuffer و UnmarshalFromBuffer مع البيانات.UnsafeCast و UnsafeEnumCast في تجاوز أمان الأنواع.
عرض Process Hacker يُظهر GetServerDomainIdForProxy و RegisterAssembly وواجهات API أخرى لـ Remoting.
يستكمل هذا القسم تحليل Binary Ninja لكود GetServerDomainIdForProxy من القسم السابق. ويكشف عن اتصالات HTTP واستخدام COM (نموذج كائن المكوّن) وعمليات نظام الملفات المعزول التي يستخدمها PureRAT.
Content-Type: %s Content-Length: %d Accept: %s – يُستخدم للاتصال بـ C2.CoTaskMemAlloc و IsolationImplementation::Com – يخصص ذاكرة لكائنات COM.*ppClsid = (CLSID *)... – يعيّن معرّف فئة COM.IsolatedFilesystemObject و RtlIsIsolatedFilesystemObjectHandleValid – يتحقق من مقابض نظام الملفات المعزول.
عرض Binary Ninja يُظهر رؤوس HTTP وتخصيص ذاكرة COM وتعيين CLSID وواجهات API لنظام الملفات المعزول.
كشف هذا التحليل عن PureRAT، وهو برنامج RAT متطور بلا ملفات يُنفَّذ عبر msbuild.exe ويستخدم تقنيات تهرب متقدمة في .NET.
msbuild.exe.pure8s.ddnsfree.com و 52.241.248.38.DisableNativeImageLoad و OpenProcessToken.DeleteFile، WriteFile، ReadFile، CopyFile، CreateFile).HKEY_CURRENT_USER\Software\95082F4ACEBFA802830...).pure8s.ddnsfree.com وعنوان IP 52.241.248.38.msbuild.exe لأوامر غير معتادة.DisableNativeImageLoad و OpenProcessToken.msbuild.exe.عينة PureRAT التي تم تحليلها متاحة على MalwareBazaar لمن يرغب في إجراء تحليله الخاص:
الأدوات المستخدمة: Process Hacker، Binary Ninja، x64dbg