رجوع

2026/11/11

أداة الأمان التي نزّلتها هي البرمجية الخبيثة: مستودعات GitHub مزيفة تصيب أكثر من 2000 جهاز Windows

اكتشفت Doctor Web أدوات أمان مزيفة على GitHub تشغّل برمجيات خبيثة عند بنائها. كيف يعمل الفخ وما الذي يجب فحصه قبل بناء الشيفرة المستنسخة.

تعثر على أداة مساعدة صغيرة على GitHub تنظّم مخرجات أداة لفحص الشبكات. لديها ملف README ومشروع Visual Studio وتعليمات للبناء. تستنسخ المستودع وتضغط على زر البناء. لا يبدو أي شيء غريبًا، لكن قبل أن يبدأ المترجم البرمجي عمله يكون أمر مخفي قد نُفّذ بالفعل على جهازك.

هذا هو الفخ الذي وصفته شركة Doctor Web في 5 نوفمبر 2026. فقد عثر باحثوها على مستودعات في GitHub تتنكر في هيئة أدوات لأتمتة الفحص واختبار الأمان وتحليل السجلات، وأحصوا أكثر من 2000 جهاز Windows مصاب وقت إجراء البحث. يشرح هذا المقال كيف يعمل هذا الفخ، ولماذا يقع فيه حتى المهندسون المتمرسون، وما الذي ينبغي فحصه قبل بناء شيفرة استنسختها للتو.

أهم النقاط

  • تتنكر المستودعات في هيئة أدوات أمان، ويُنفَّذ الأمر الخبيث أثناء البناء أو عند تشغيل سكربت، دون الحاجة إلى تشغيل برنامج منفصل.
  • تختبئ الشيفرة في ملفات مشاريع Visual Studio، وفي ملفات .suo، وخلف سلاسل طويلة من المسافات الفارغة في ملفات المصدر المكتوبة بلغتي Python وGo.
  • الحمولات النهائية هي بابان خلفيان من نوع AsyncRAT، وأداة تستبدل عناوين محافظ العملات المشفرة في الحافظة، وبرنامج لسرقة المعلومات يستولي على بيانات المتصفح وإعدادات VPN وFTP ورموز Discord.
  • اقرأ ملفات البناء قبل البناء، وابنِ الشيفرة غير المعروفة في جهاز افتراضي مؤقت لا يحتوي على أي بيانات اعتماد.
  • إذا كنت قد بنيت أحد هذه المشاريع بالفعل، فاعتبر جهازك مخترقًا وغيّر كل بيانات الاعتماد التي كانت عليه من جهاز نظيف.

ما الذي اكتشفته Doctor Web

وفقًا لتقرير Doctor Web، ظهرت أولى المستودعات المصابة قبل نحو عامين. في ذلك الوقت كانت تستهدف مستخدمي محافظ العملات المشفرة، وكانت تُقدَّم على أنها ألعاب بلوك تشين وبرامج آلية للألعاب وأدوات غش. أما الآن فقد تحوّل المهاجمون إلى استهداف متخصصي أمن المعلومات. وقد احتوى أحد المستودعات المزيفة على سكربت لتحليل مخرجات أداة فحص الشبكات Fscan وتنظيفها وتنسيقها.

هذه ليست ثغرة في برنامج، ولا يوجد معرّف CVE يمكن سدّه بتحديث. إنها حملة تجمع بين الهجوم على سلسلة التوريد والهندسة الاجتماعية: ينشر المهاجمون مشروعًا يبدو مفيدًا وينتظرون أن يقوم أحدهم ببنائه. ويصف ملخص BleepingComputer للبحث حيلة المسافات الفارغة بأنها أسلوب قديم ما زال فعّالًا.

كيف يعمل الفخ

عثرت Doctor Web على الشيفرة الخبيثة في ثلاثة أنواع من الملفات، ولا يُعدّ أي منها من الملفات التي يفتحها المراجع عادةً أولًا.

أين تختبئماذا يحدثلماذا يسهل تفويتها
ملف المشروع .csprojيشغّل PreBuildEvent أمرًا قبل ترجمة المشروعيقرأ المراجعون الشيفرة المصدرية لا ملف المشروع
ملف .suoيحمل الملف أمر PowerShellإنه ملف إعدادات ثنائي يحتفظ به Visual Studio عادةً في مجلد مخفي
ملفات المصدر بلغتي Python وGoتقبع الشيفرة الخبيثة خلف عدد كبير من المسافات الفارغةيبدو السطر فارغًا ما لم تمرّر بعيدًا إلى اليمين أو تفعّل التفاف الأسطر

من هنا تتشابه السلسلة. يطلب سكربت PowerShell (يذكر التقرير C:\Users\Public\Pictures\t.ps1 وL.ps1 مثالين) سلسلة نصية مشفرة من خوادم المهاجمين أو من خدمات مشروعة مثل YouTube وTelegram وGoogle Docs وGitCode وPastebin. وبعد فك تشفيرها تصبح السلسلة رابط تنزيل لأرشيف يُفك ضغطه في C:\ProgramData\Windows.Microsoft.Photos.

في داخله برنامج تحميل مبني على Electron اسمه Microsoft.exe، تكتشفه Doctor Web باسم Trojan.Loader.3261. يرسل برنامج التحميل تفاصيل النظام عبر بوت على Telegram، ويحاول الحصول على صلاحيات أعلى، ويعطّل Windows Defender والتحكم في حساب المستخدم والإشعارات واستعادة النظام والنسخ الظلية لوحدات التخزين. كما يحاول إزالة منتجات ESET وMcAfee وMalwarebytes، ويعدّل ملف hosts لحظر نطاقات شركات مكافحة الفيروسات.

ولكي يبقى غير مرئي، يجعل برنامج التحميل في وضعه الافتراضي العملية explorer.exe تبدو وكأنها العملية الأم له، ويغيّر قيمة السجل VerifiedAndReputablePolicyState لتجاوز Smart App Control، ويستعيد الشيفرة الأصلية لـ ntdll.dll لإزالة نقاط الاعتراض التي تضعها منتجات الأمان فيها، وينفّذ استدعاءات نظام مباشرة، ويعدّل دوال Windows المستخدمة في تتبّع الأحداث وفحص السكربتات. ثم يحقن حمولاته في عمليات Windows مشروعة مثل RegAsm.exe.

تتبع ذلك ثلاث حمولات:

  • بابان خلفيان من نوع AsyncRAT. الملفان متطابقان لكنهما يستخدمان منفذين شبكيين مختلفين، وتقول Doctor Web إن ذلك قد يتيح لمشغّلَين اثنين التحكم في الجهاز نفسه في الوقت ذاته.
  • أداة لاستبدال محتوى الحافظة. تستبدل عناوين محافظ العملات المشفرة في الحافظة، وترسل لقطات شاشة وعنوان النافذة النشطة واسم دخول المستخدم وعنوان IP إلى بوت على Telegram.
  • برنامج لسرقة المعلومات (JS.Stealer.191). يتحقق من وجود بيئات معزولة وأجهزة افتراضية، ثم يجمع بيانات المتصفح وملفات الاتصال الخاصة بـ FileZilla وMobaXterm وTotal Commander وإعدادات VPN وملفات تطبيقات المراسلة وبيانات حسابات الألعاب ورموز Discord، ويرسلها عبر بوت على Telegram.

كما عثرت Doctor Web على مكوّن غير مكتمل من شأنه تثبيت خدمة Windows وإعادة تنزيل برنامج التحميل إذا حُذف، مما يشير إلى أن المهاجمين ما زالوا يطوّرون مجموعة أدواتهم.

لماذا تنجح مع المحترفين

بُنيت الحملة على عادات تُعدّ عادةً من الممارسات الجيدة.

  • يبدو البناء من المصدر أكثر أمانًا من تشغيل ملف منزَّل. يرفض كثير من المهندسين تشغيل ملف تنفيذي غير معروف، لكنهم يترجمون مشروعًا عن طيب خاطر لأنهم يستطيعون قراءة شيفرته. وهنا تكون الشيفرة التي يقرؤونها نظيفة، بينما يقبع الأمر في إعدادات البناء.
  • لا توجد لحظة «شغّل هذا البرنامج». يبدأ الأمر كجزء من عملية بناء عادية، فلا تأتي أبدًا لحظة التوقف المعتادة قبل تشغيل برنامج غير معروف.
  • GitHub مكان موثوق. يبدو المستودع الذي يحتوي على ملف README مرتب وتعليمات تثبيت مثل آلاف المشاريع النزيهة. وتشير Doctor Web إلى أن المهاجمين قدّموا حتى تعليمات لتثبيت Visual Studio واستنساخ المستودع.
  • جهاز المهندس يحمل المفاتيح. جلسات المتصفح المحفوظة وملفات تعريف VPN وملفات الاتصال بالخوادم هي بالضبط ما يجمعه برنامج سرقة المعلومات، وكثيرًا ما تفتح الطريق إلى أنظمة الإنتاج وبيئات العملاء.

ما الذي يجب فحصه قبل البناء

تستغرق هذه الفحوصات بضع دقائق وتصلح لأي مشروع استنسخته للتو، على Windows أو Linux أو macOS. نفّذها في مجلد المستودع قبل فتح المشروع في بيئة التطوير.

# 1. Build hooks and command execution in project files
grep -rniE 'PreBuildEvent|PostBuildEvent|<Exec |powershell|cmd\.exe' \
  --include='*.csproj' --include='*.vbproj' --include='*.vcxproj' \
  --include='*.props' --include='*.targets' .
# 2. Visual Studio user-option files that should not be in a repository
find . -name '*.suo'
# 3. Files with very long runs of spaces or tabs on one line
grep -rlE '[[:space:]]{200,}' .

على Windows دون صدفة شبيهة بـ Unix، يؤدي PowerShell المهمة نفسها لفحص المسافات الفارغة:

Get-ChildItem -Recurse -File |
  Select-String -Pattern '\s{200,}' -List |
  Select-Object -ExpandProperty Path

العثور على نتيجة ليس دليلًا على وجود برمجية خبيثة. فكثير من المشاريع النزيهة تستخدم أحداث البناء، والملفات المصغّرة تحتوي على أسطر طويلة. لكنه سبب لفتح الملف وقراءة ما يفعله الأمر قبل تشغيل أي شيء.

  1. اقرأ ملفات البناء أولًا. يمكن لملفات المشاريع وMakefile وsetup.py وسكربتات تثبيت الحزم وملفات CI أن تشغّل أوامر. اقرأها بالعناية نفسها التي تقرأ بها الشيفرة المصدرية.
  2. احذف ملفات .suo ومجلدات .vs التي تصل مع المستودع. فهي إعدادات خاصة بكل مستخدم ولا يحتاجها المشروع للبناء.
  3. فعّل التفاف الأسطر أو إظهار المسافات الفارغة في محررك عند مراجعة شيفرة غير مألوفة.
  4. اطّلع على تاريخ المستودع. الحساب الجديد، والإيداع الكبير الوحيد، وقلة البلاغات والمساهمين الحقيقيين، والأداة التي تكرر مشروعًا معروفًا، كلها أسباب لمزيد من الحذر. أما النجوم والتفريعات وحدها فلا تثبت الكثير، لأنه يمكن تزييفها.
  5. ابنِ الشيفرة غير المعروفة في بيئة مؤقتة. استخدم جهازًا افتراضيًا أو حاوية للاستخدام مرة واحدة، بلا كلمات مرور محفوظة ولا ملف تعريف VPN ولا مفاتيح SSH، واحذفها بعد ذلك.

نصيحة: احتفظ بلقطة نظيفة واحدة لجهاز افتراضي لتجربة الأدوات. استنسخ وابنِ واختبر هناك، ثم ارجع إلى اللقطة. وإذا ثبتت فائدة الأداة، فراجعها جيدًا قبل أن تقترب من جهاز عملك اليومي.

إذا كنت قد بنيت أحدها بالفعل

نشرت Doctor Web بصمات الملفات والنطاقات والعناوين وأمثلة على أسماء المستودعات في قائمة مؤشرات الاختراق الخاصة بها. ومن العلامات المذكورة في التقرير:

  • مجلد C:\ProgramData\Windows.Microsoft.Photos أو برنامج باسم Microsoft.exe؛
  • الملف t.ps1 أو L.ps1 في C:\Users\Public\Pictures؛
  • استثناءات في Windows Defender للملف regasm.exe أو dwm.exe لم تضفها بنفسك؛
  • نطاقات شركات مكافحة الفيروسات في ملف hosts، أو تعطيل استعادة النظام والنسخ الظلية؛
  • برامج أمان اختفت أو توقفت عن التحديث.

إذا وجدت أيًا من هذه العلامات، أو كنت تعلم أنك بنيت مشروعًا من القائمة، فتصرّف كما لو أن كل ما على ذلك الجهاز قد قُرئ:

  1. افصل الجهاز عن الشبكة وأبلغ فريق الأمن لديك.
  2. من جهاز آخر نظيف، غيّر كلمات المرور المحفوظة في المتصفح وسجّل الخروج من الجلسات النشطة، حتى تتوقف ملفات تعريف الارتباط المسروقة الخاصة بالجلسات عن العمل.
  3. استبدل ملفات تعريف VPN وكلمات المرور أو المفاتيح المخزنة في برامج FTP وبرامج الطرفية، وراجع الخوادم التي كان يمكن الوصول إليها من خلالها.
  4. أعد تعيين جلسات Discord وتطبيقات المراسلة الأخرى، وانقل أصولك من العملات المشفرة إلى محفظة أُنشئت على جهاز نظيف.
  5. أعد تثبيت نظام التشغيل بدلًا من تنظيفه. فبرنامج التحميل يعطّل ميزات الأمان والاستعادة ويثبّت بابين خلفيين، لذا يصعب الوثوق بنظام جرى تنظيفه.

نصيحة: افحص سجلات الخوادم وVPN بحثًا عن عمليات تسجيل دخول من الحساب المتأثر بعد تاريخ بناء المشروع. فملفات الاتصال المسروقة تُستخدم من أنظمة المهاجمين، لا من الجهاز المصاب.

كيف يمكن أن تساعدك LOGIQ

تساعد LOGIQ المؤسسات على تشغيل البرمجيات مفتوحة المصدر بأمان، بدءًا من Linux للمؤسسات وOpenJDK وصولًا إلى مسارات البناء والنشر المحيطة بهما. إذا كنت تريد رأيًا ثانيًا في الطريقة التي تُدخل بها فرقك الشيفرة الخارجية إلى بيئتها، أو تحتاج إلى مساعدة في فصل أنظمة البناء عن بيانات الاعتماد المهمة، تواصل معنا.