
هندسة عكسية لـ Vidar Stealer: من سلاسل الذاكرة المُشوَّشة إلى حقن عمليات Chrome، وتنفيذ JavaScript الخبيث، واختطاف الجلسات النشطة على Google وReddit.
تُظهر عينة Vidar Stealer المحمّلة في Binary Ninja شيفرة مشوّشة بشكل كبير داخل الدالة main.vxormo. يكشف التحليل أن البرمجية الخبيثة تعتمد على تشفير النصوص، وإجراءات XOR مخصصة، وتجميع الذاكرة وقت التشغيل لإخفاء سلوكها الحقيقي. تشير مصفوفات البايتات المليئة بـ \x00 (x00\x00\x00...) في عرض pseudo-C إلى أن أجزاء الحمولة الخام يتم بناؤها مباشرة في الذاكرة.
دوال مشوّشة: تُستخدم أسماء مولّدة عشوائيًا مثل main.vxormo وmain.oqvmwusz وmain.dzgsnuhm لإخفاء الوظائف. نصوص مشوّشة: whatnthotsfalse... وcornbindtrue... هما نصان مشفّران يُفكّ تشفيرهما وقت التشغيل. إجراء XOR مخصص: اسم الدالة vxormo نفسه يوحي بوجود حلقة فك تشفير XOR مخصصة نشطة. بناء الحمولة في الذاكرة: تُكتب المصفوفات التي تحتوي على بايتات \x00 و\x89 و\x99 و\x48 في الذاكرة باستخدام _builtin_memcpy. يُظهر المؤشر uint8_t)rax أجزاءً خام من shellcode/الحمولة يجري تجميعها.
إفشال التحليل الساكن: يعني استخدام دوال بأسماء عشوائية ونصوص مشفّرة أن برامج مكافحة الفيروسات القائمة على التوقيعات الساكنة ستفشل في تحديد الحمولة. التنفيذ في الذاكرة (بدون ملفات): لا تُسقَط حمولة \x00 على القرص أبدًا؛ بل تُخصَّص وتُنفَّذ مباشرة في الذاكرة (RWX)، متجنّبةً فاحصات الملفات. تشفير XOR مخصص: يمنع إجراء XOR المخصص الاستخراج البسيط للنصوص أو مطابقة قواعد YARA. إخفاء البيانات: من المرجّح أن المصفوفات الضخمة غير المقروءة (\x00\x00\x00\x01...) هي كتل إعدادات مشفّرة (عناوين C2، ووحدات الاعتراض) لا تُفكّ تشفيرها إلا عند الحاجة.

يكشف عرض ثانٍ لعينة Vidar Stealer في Binary Ninja عن دالة (main.obttcklrlfwpzvugbzqtn) مخصصة للاستطلاع على النظام والتنظيف لمكافحة التحقيق الجنائي. تعالج الدالة نصوصًا مشفّرة وتحلّ أسماء واجهات API لمحو آثار تنفيذها، مستهدفةً تحديدًا ذاكرات DNS المؤقتة وسجلات الأحداث وملفات الإنترنت المؤقتة قبل إسقاط الحمولة النهائية.
حلّ واجهات API مشوّش: النص ...DiednsQuery_WGGetIfEntryCancelIoExCreatePipe... هو تسلسل مشفّر لاستدعاءات WinAPI واجهات API للتنظيف محدّدة: DnsQuery_W / DnsFlushResolverCache – يفرّغ ذاكرة DNS المؤقتة لإخفاء آثار حلّ نطاق C2. GetIfEntry – يعدّد واجهات الشبكة (للتحقق من وجود محوّلات وهمية/بيئة اختبار معزولة). WinExec – ينفّذ أدوات تنظيف النظام ديناميكيًا (مثل cmd.exe /c del ...). تنفيذ استدعاءات النظام/السكربتات: تشير الإشارات إلى dllws2_32.dll و/dev/stdin (إعادة توجيه الإدخال القياسي) إلى أن البرمجية الخبيثة تستعد للتفاعل مع التدفقات القياسية للنظام أو مكدس الشبكة.
مكافحة التحقيق الجنائي: يضمن تفريغ ذاكرة DNS المؤقتة (DnsFlushResolverCache) واستدعاء إجراءات التنظيف تدمير سجلات الشبكة والآثار المحلية، مما يعيق الاستجابة للحوادث. التجنّب من بيئات الاختبار المعزولة: يتيح الاستعلام عن واجهات الشبكة (GetIfEntry) للسارق اكتشاف البيئات الافتراضية (مثل VMware وVirtualBox) وإلغاء التنفيذ إذا اكتُشفت بيئة اختبار معزولة تضليل مسار التنفيذ: يعني استخدام WinExec للتنظيف أن البرمجية الخبيثة لا تحتاج إلى استيراد واجهات API للحذف بشكل ساكن؛ بل تفوّض العمل القذر إلى نظام التشغيل. تفاعل بدون ملفات: تتيح إعادة توجيه /dev/stdin واستخدام الأنابيب (CreatePipe) للسارق تمرير البيانات المسروقة إلى عملية محقونة أو صدفة أوامر دون لمس القرص.

عرض الذاكرة في Process Hacker لعملية chrome.exe (PID 8944) يؤكد أن Vidar Stealer قد حقن حمولته مباشرةً في مساحة ذاكرة المتصفح. يكشف فحص السلاسل النصية عن كتل تنفيذ خيوط متعددة، وهي أثر قياسي لتجويف العمليات (process hollowing) أو حقن الخيوط عن بُعد. فمن خلال الحقن في Chrome، يعمل السارق تحت عملية موثوقة عالية التكامل لجمع ملفات تعريف الارتباط وبيانات الاعتماد المحفوظة ورموز الجلسات بصمت.
الخيوط المحقونة (سلاسل الذاكرة): THREAD_BROWSER_WATCHDOG / THREAD_GPU_WATCHDOG – تم اختطاف خيوط المراقبة لإبقاء الخيوط المحقونة حية. THREAD_CACHE_BLOCKFILE – يشير إلى التلاعب بذاكرة التخزين المؤقت لـ Chrome (على الأرجح لاستخراج بيانات الجلسة). THREAD_AUDIO_INPUTDEVICE / THREAD_GAMEPAD_POLLING – خيوط غير أساسية أُعيد توظيفها لإخفاء النشاط الخبيث. THREAD_WEBCRYPTO – مثير للشك الشديد؛ إذ تُستخدم واجهة التشفير الداخلية لـ Chrome لفك تشفير كلمات المرور وملفات تعريف الارتباط المحفوظة. THREAD_PROXYRESOLVER / THREAD_DATABASE – تُستخدم لاعتراض حركة مرور الشبكة والوصول إلى قاعدة بيانات بيانات الاعتماد المحلية.
سرقة بيانات اعتماد المتصفح: يتيح اعتراض THREAD_WEBCRYPTO وTHREAD_DATABASE لـ Vidar تجاوز تشفير Chrome وسرقة كلمات المرور وملفات تعريف الارتباط المحفوظة. العيش على الأرض (Living off the Land): من خلال الحقن في chrome.exe، يتخفى البرنامج الخبيث في صورة حركة مرور متصفح شرعية، متجاوزًا بسهولة جدران الحماية وقواعد شبكة EDR. تجويف العمليات (Process Hollowing): وجود خيوط Chrome القياسية إلى جانب الخيوط المحقونة يعني أن البرنامج الخبيث على الأرجح جوّف خيطًا شرعيًا أو استخدم CreateRemoteThread. اختطاف الجلسات: يتيح THREAD_CACHE_BLOCKFILE واستخراج ملفات تعريف الارتباط للمهاجم سرقة الجلسات النشطة (اختطاف الجلسات) دون الحاجة إلى كلمة مرور المستخدم. التهرب: نادرًا ما تفحص حلول مكافحة الفيروسات داخل مساحة ذاكرة متصفح موقّع مثل Chrome.

يكشف التعمق في مساحة الذاكرة المحقونة لـ chrome.exe (PID 8944) عن مجموعة من السلاسل النصية التي تستهدف تحديدًا تدفقات مصادقة Google وجلسات Reddit وتنفيذ JavaScript في المتصفح. ويؤكد وجود هذه السلاسل أن Vidar Stealer يحقن JavaScript خبيثًا أو يعترض واجهات برمجة تطبيقات المتصفح لاعتراض بيانات اعتماد تسجيل الدخول ورموز الجلسات.
أهداف بيانات الاعتماد / المصادقة: accounts.google.com – يستهدف تحديدًا صفحات تسجيل الدخول إلى حساب Google لسرقة بيانات الاعتماد. https://www.reddit.com/notifications – يراقب نشاط جلسة Reddit (على الأرجح سرقة ملفات تعريف الارتباط). Gelen Kutusu (بالتركية تعني "صندوق الوارد") – يشير إلى استهداف واجهات البريد الإلكتروني أو المراسلة. toDashCase / MemoryInfra / BackForwardCacheCSIgnoreUnc... – أعلام الذاكرة والعرض الداخلية لـ Chrome AutoFillEnableExpandIframeRegexPatt... – التلاعب بوظيفة AutoFill في Chrome لالتقاط كلمات المرور/النماذج المحفوظة إدخالات text/javascript متعددة: تؤكد أن Vidar يحقن JavaScript خبيثًا وينفذه مباشرةً داخل سياق المتصفح. ResourcePool / sfsssqcxxwqecaddbbbcqpvadzvwrze – على الأرجح نقطة نهاية C2 مشفرة أو معرّف جلسة مُولَّد عشوائيًا.
حصاد بيانات الاعتماد الموجّه: إظهار accounts.google.com يدل على أن Vidar لا يقوم فقط بالكشط العشوائي؛ بل يستهدف بنشاط بوابات المصادقة عالية القيمة. اعتراض واجهات برمجة المتصفح (Browser API Hooking): سلاسل نصية مثل AutoFillEnableExpandIframeRegexPatt تُثبت أن Vidar يتلاعب بمحرك AutoFill في Chrome لاعتراض بيانات الاعتماد المحفوظة وبيانات النماذج حقن JavaScript: الحضور الكثيف لـ text/javascript في الذاكرة يعني أن Vidar ينفّذ سكربتات داخل المتصفح لقراءة ملفات تعريف الارتباط (document.cookie) وتجاوز حمايات HTTPOnly. إساءة استخدام Mojo IPC: تشير interfaceMessageHeader إلى أن أداة السرقة تتواصل مع IPC الداخلي لـ Chrome (Mojo) لاستخراج البيانات مباشرة من عمليات المتصفح المعزولة (sandboxed). اختطاف الجلسات: استهداف إشعارات وصناديق بريد Reddit يؤكد أن الهدف هو اختطاف الجلسات النشطة (سرقة ملفات تعريف الارتباط) وليس مجرد استخراج كلمات المرور الثابتة.