فانتوم بوت: من سرقة بيانات الاعتماد إلى شبكة الروبوتات

فانتوم بوت: حملة انتحال أسماء النطاقات التي تحولت من سرقة بيانات الاعتماد إلى مجموعة أدوات شبكة بوت جاهزة للاستخدام

TL؛ DR

ناشر واحد لـ npm، deadcode09284814شنت حملة تضليلية ضد المواقع الشرعية axios و chalk-template الطرود منذ منتصف مايو 2026.

بدأت الحملة كعملية تقليدية لسرقة بيانات الاعتماد والمحافظ الإلكترونية، حيث تم تسريب البيانات إلى نفق HTTPS من سيرفيو.

On 2026-05-17، مع axois-utils:1.0.9قام المشغل بتبديل الحمولة بالكامل: نفس هيكل خطاف التثبيت الثلاثي، نفس الناشر، نفس اسم الحزمة.

لكن برنامج التثبيت أصبح الآن أداة لتجنيد شبكة بوتات DDoS متعددة المنصات.

تتحدث الحمولة إلى localhost.run يقوم هذا البرنامج باختراق النظام واستقبال أوامر الفيضان، مما يحول البيئات المصابة إلى جزء من شبكة بوت قادرة على شن هجمات DDoS.

بل إن المشغل قام بشحن ملف تنفيذي لخادم C2 داخل ملف tarball، يظهر تصعيد واضح من سرقة بيانات الاعتماد إلى بنية تحتية نشطة لشبكة الروبوتات.

حزمتان، وأربعة إصدارات لا تزال نشطة في السجل، ومشغل واحد يقوم الآن بتشغيل كلا الوحدتين بالتوازي.

الخطورة: عالية.

عنوان رئيسي للجنة الأولمبية الدولية أي إصدار من axois-utils أو chalk-tempalte من الناشر deadcode09284814

الهجوم: كيف يعمل

تعتمد الحملة على هيكل توصيل ممل عمداً: اسمان لحزمتين مليئان بالأخطاء الإملائية، يختلفان بحرف واحد عن أسماء حزم أخرى تحظى بمئات الملايين من التنزيلات الأسبوعية (أكسيوس, قالب طباشيري)، والتركيب الثلاثي hooks وهذا يضمن التنفيذ. الأمر المثير للاهتمام هو ما يوفره الهيكل يحمل - وحقيقة أن المشغل قام بتغيير الشحنة دون تغيير أي شيء آخر.

السقالة المشتركة

تُعلن جميع الإصدارات المنشورة من كلا الحزمتين عن نفس دورة الحياة الثلاثية hooks in package.json:

إدراج الحمولة تحت كل من الثلاثة hooks مبالغة — بعد التثبيت سيتم تشغيلها بمفردها بشكل افتراضي تركيب npm. الخيار مهم: npm install --ignore-scripts يتجاوز هذا البرنامج النصي، ولكنه يستعيد العديد من سير العمل الشائعة (استعادة ذاكرة التخزين المؤقت للتكامل المستمر التي تعيد تشغيل دورة الحياة). hooks بشكل انتقائي، أو للمطورين الذين يقومون فقط بالتدقيق بعد التثبيت) يجعل الإعلان الثلاثي المتكرر الخيار الأكثر أمانًا للمهاجم.

قالب الطباشير ويضيف آلية ثانية: وهي تعلن axois-utils:^1.0.7 كوقت تشغيل التبعيةتثبيت برنامج Typosquatted قالب طباشيري وبالتالي، يتم استدعاء حزمة typosquat الشقيقة أيضًا، ويتم تشغيل كلتا الحزمتين. الحزمتان تشكلان زوجًا متناسقًا، وليستا قائمتين مستقلتين.

المرحلة أ - سارق بيانات الاعتماد / المحفظة (2026-05-15 → حتى الآن)

المرحلة أ هي الحمولة الأصلية. اللودر عبارة عن وحدة تحميل قصيرة postinstall.js يشير ذلك إلى نفق عكسي HTTPS من Serveo:

يقوم النطاق الفرعي Serveo بتشفير عنوان IP الوجهة (80.200.28.28) مباشرةً في اسم المضيف - وهو اصطلاح معروف لتلك الخدمة. يقوم المشغل بتدوير بادئة النطاق الفرعي العشوائية بين الإصدارات لتجنب قوائم حظر النطاقات الساذجة، لكن عنوان IP الأساسي لا يتغير أبدًا.chalk-tempalte:1.0.14 مستعمل 8a3e818ea8f11186-80-200-28-28…; 1.0.16 / 1.0.19 / 1.0.20 استخدام f04a273bd84c0622-….)

postinstall.js لا تلمس phantom.js، وحدة "جامع" مجمعة مكونة من 7,667 سطرًا. phantom.js يرافق المضيف في جولة من أجل:

مفتاح SSH الخاص (~/.ssh/*)
.npmrc المحتويات وأي npm_* رموز البيئة
ملفات بيانات اعتماد AWS وGCP وAzure
GitHub personal-access-token regex (ghp_*, gho_*, ghu_*, ghs_*)
أدوات محافظ العملات الرقمية لعملات بيتكوين، وإكسودوس، وإلكتروم، ومونيرو، ولايتكوين، ودوجكوين، وزيكاش، وداش
دالة تكرارية .env* المشي من خلال ~/projects, ~/dev, ~/code, ~/workspace، ومجلد العمل الحالي للتثبيت
تاريخ شركة شل والكامل process.env

تم إرسال الحزمة إلى نفق سيرفو في / يجمعلا يوجد تشويش، ولا منطق مضاد للآلات الافتراضية، ولا مرحلة تمهيدية - رهان المشغل هو على الحجم والسرعة.

المرحلة ب - تجنيد PhantomBot DDoS (2026-05-17، axois-utils:1.0.9 فقط)

تستبدل المرحلة الثانية ملفي phantom.js و postinstall.js بملف واحد باسم distrube.js (الخطأ المطبعي من المُشغِّل). يبقى هيكل الخطافات الثلاثية في ملف package.json دون تغيير؛ إذ تحتفظ الحزمة بنفس الاسم والنطاق ونمط ترقية الإصدار. من الخارج، يبدو axois-utils:1.0.9 كإصدار ثانوي من 1.0.6، لكنه في الواقع ينتمي إلى عائلة برمجيات خبيثة مختلفة.

distrube.js يبدأ البرنامج بكتلة إعدادات تحدد العلامة التجارية الخاصة بالمشغل:

// axois-utils-1.0.9/distrube.js:11-15
// Use your localhost.run HTTPS URL (the tunnel handles HTTP internally)
const C2_HOST = 'b94b6bcfa27554.lhr.life'; // Your localhost.run tunnel
const C2_PORT = 443; // HTTPS port - tunnel handles SSL
const BOT_ID = `${os.hostname()}_${Date.now()}_${crypto.randomBytes(4).toString('hex')}`;

تُوجَّه هذه التعليقات إلى مُشغِّل مستقبلي يُشغِّل هذه الحزمة ("استخدم عنوان URL الخاص بـ localhost.run HTTPS"). هذا، بالإضافة إلى ما يُرفق مع برنامج العميل، يُشير إلى أن هذه ليست مجرد حمولة مُستهدفة، بل هي الحزمة نفسها.

التدفق:

  1. إصرار يتم تشغيله أولاً. يقوم البرنامج النصي بتثبيت نفسه بثلاث طرق مختلفة لكل نظام تشغيل (سجل النظام). يجري + مجلد بدء التشغيل + schtasks على نظام ويندوز؛ crontab + phantom-bot.service وحدة النظام + .bashrc/.zshrc. إلحاق + /etc/rc.local على نظام لينكس؛ LaunchAgent com.phantom.bot.plist (على نظام macOS). اسم خدمة الثبات وتسمية LaunchAgent كلاهما فانتوم-بوت / com.phantom.botوهذا هو أيضاً مصدر اسم الحملة.
  2. تسريب معلومات النظام يُنفَّذ هذا الإجراء مرة واحدة فقط - وهو عبارة عن طلب POST لبصمة الجهاز إلى b94b6bcfa27554.lhr.life:443/collect، يحمل اسم المضيف، والمنصة، والبنية، واسم المستخدم، ووحدة المعالجة المركزية/ذاكرة الوصول العشوائي، وواجهات الشبكة، وملف process.env، ومجلد العمل الحالي، ومجلد المستخدم الرئيسي، وإصدار Node.js، وعنوان IP العام. يُعد هذا الإجراء أقل عدوانية بكثير من المرحلة الأولى: لا يتطلب استخدام SSH، ولا محافظ، ولا تكرار لملف .env. مهمة البوت هي التسجيل، وليس السرقة.
  3. حلقة نبضات القلب يفتح طلب HTTPS POST كل 30 ثانية إلى b94b6bcfa27554.lhr.life:443/. وكيل المستخدم هو PhantomBot/1.0. تم تعطيل التحقق من TLS صراحةً (rejectUnauthorized: false). يتم تحليل استجابة C2 كـ JSON بالصيغة {type, target, port, duration, threads, method} ثم يتم إرسالها.
  4. ترسانة الفيضانات موصول بستة أوامر:
نوع الأمر وحدة ملاحظة
بينغ رد حيوي يُعرّف البوت عن نفسه
HTTP فيضان HTTP فيضان طلبات الطبقة 7
HTTPS فيضان HTTPS كما هو الحال مع بروتوكول HTTP، ولكن مع تغليف TLS
برنامج التعاون الفني فيضان TCP 65 كيلوبايت من الرسائل العشوائية
UDP فيضان UDP حزم UDP بحجم 65,507 بايت
سريع هجوم حجب الخدمة سريع إعادة الضبط عبر HTTP/2 تقنية CVE-2023-44487 لعام 2023

جميع وحدات الفيضان الخمس تأخذ الهدف, ميناء, مدة الأقامةو المواضيع الحجة - البوت عبارة عن برنامج إغراق عام مُستأجر، وليس مُوجّهًا لضحية مُحددة. قائمة ضحايا المُشغّل موجودة على خادم التحكم والسيطرة، وليست مُضمنة في الحزمة.

ما الجديد هنا؟ - ملف C2 الثنائي الذي تم شحنه

المرحلة أ ذات شكل مألوف: سرقة بيانات الاعتماد، وخطاف التثبيت، وC2 المُخترق من قِبل البائع. المرحلة ب هي أيضا شكل مألوف - لطالما كانت شبكات الروبوتات المستخدمة في هجمات DDoS جزءًا أساسيًا من حزم npm الخبيثة لسنوات. الأمر غير المعتاد هو أن المشغل قام بشحن جانب الخادم من محتويات حزمة npm المضغوطة:

  • c2 — ملف ثنائي ELF مُجمَّع بلغة Go بحجم 4 ميجابايت
  • c2.go — مصدر Go المكون من 426 سطرًا لهذا الملف الثنائي

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

هذا هو الجزء من القصة الذي يبرر استخدام مصطلح "مجموعة أدوات شبكة الروبوتات الجاهزة". أي شخص قام بتنزيلها axois-utils:1.0.9 قبل عملية الإيقاف، لا يقتصر الأمر على وجود عينة من الضحية فحسب، بل لديهم أيضًا خادم تحكم وسيطرة يعمل.

المحور، في جملة واحدة

نفس الناشر، نفس أسماء الحزم، نفس الهيكل الثلاثي، نفس العلامة التجارية "الوهمية" - ولكن لقد غيّرت الحمولة نموذج تحقيق الدخل بين عشية وضحاهامن "جمع الأسرار التي يمكنني إعادة بيعها" إلى "تأجير سعة الفيضان التي يمكنني استئجارها". تتشابه أساليب وتقنيات وتقنيات التثبيت التي يجب على المدافعين مراقبتها تقريبًا في المرحلتين؛ دفاعات قائمة على التوقيعات مرتبطة بسلاسل مسار المحفظة في المرحلة أ أو بـ phantom.jsكان جامع الخطوط البالغ عددها 7,667 خطًا سيفوت المرحلة ب بالكامل.

التاريخ (UTC) الحدث/الفعالية
2026-05-15 النشر الأول: axois-utils:1.0.4 (بناء اختبار الشبكة المحلية، جهاز التطوير في 192.168.129.19)
2026-05-15 axois-utils:1.0.6 نُشر — تم تبديل المرحلة أ ج2 إلى 80.200.28.28 عبر نفق سيرفيو؛ تعليق المصدر // Change to '80.200.28.28' for public يؤكد هذا التغيير من بيئة التطوير إلى بيئة الإنتاج
2026-05-16 chalk-tempalte:1.0.14 و 1.0.16 تم النشر - مُحمِّل متسلسل يُعلن axois-utils:^1.0.7 كاعتمادية وقت التشغيل؛ تم تدوير النطاق الفرعي Serveo
2026-05-16 تم اكتشاف حملة من المرحلة (أ) أثناء فحص روتيني لـ npm؛ وتم تطبيق أحكام مؤكدة بأنها خبيثة.
2026-05-17 axois-utils:1.0.9 تم النشر — محور الحمولة: تجنيد برنامج PhantomBot DDoS عبر نفق localhost.run؛ من جانب المشغل c2 ثنائي و c2.go تم شحن المصدر في ملف مضغوط (tarball).
2026-05-17 chalk-tempalte:1.0.19 و 1.0.20 تم النشر — لا تزال المرحلة أ (سارقة)؛ يقوم المشغل الآن بتشغيل كلا الوحدتين بالتوازي
2026-05-17 اكتشاف المرحلة ب أثناء الفحص الروتيني؛ تم تطبيق الأحكام على الجميع 2026-05-17 الإصدارات
(جاري التنفيذ) تقارير إزالة المحتوى قيد الانتظار؛ جميع الحزم الأربع المنشورة لا تزال متاحة في السجل وقت كتابة هذا التقرير

مؤشرات التسوية

الباقات

النظام الإيكولوجي فئة الإشتراك إصدارات
الآلية الوقائية الوطنية axois-utils (خطأ مطبعي في كلمة axios) 1.0.4, 1.0.6, 1.0.9
الآلية الوقائية الوطنية chalk-tempalte (خطأ مطبعي في كلمة chalk-template) 1.0.14, 1.0.16, 1.0.19, 1.0.20

هوية المؤلف

الحقل بعد التخفيض
ناشر npm deadcode09284814
البريد الإلكتروني للناشر phantomdeadcode@tutamail.com
SCM التحقق لا شيء

القيادة والتحكم

مرحلة نقطة النهاية النقل
A f04a273bd84c0622-80-200-28-28.serveousercontent.com:443/collect نفق HTTPS من سيرفيو
A 8a3e818ea8f11186-80-200-28-28.serveousercontent.com:443/collect نفق HTTPS من Serveo (إصدار سابق)
A 80.200.28.28:443/collect نقطة نهاية VPS الأساسية
B b94b6bcfa27554.lhr.life:443/ localhost.run HTTPS reverse-tunnel

ملخصات الملفات (SHA-256)

قم بتقديم SHA-256 ملاحظة
c2 (Go ELF، 4 ميجابايت) 165fa92d237fd017c227d00da06ab788212a62be94bf61e95df2d22d00377ef2 خادم C2 الخاص بالمشغل، يتم شحنه بالداخل axois-utils:1.0.9
c2.go (426 سطرًا) 7d0ae79fdb1e9968f3323a3712b624643a782ba3efb2cf3a2cb9c4c5513cea30 مصدر Go للملف الثنائي C2
distrube.js 308b15c023088a7188dea4ef609010ac2493eb4c365b103053d7621a9ca5b935 عميل بوت المرحلة ب
phantom.js (chalk-tempalte:1.0.19) 9e380ec88d3ccf3929e1a104e3b868d4d7b59ca189a8a431a54e9f3357dfdd81 جامع بيانات اعتماد المرحلة أ / محفظة
phantom.js (chalk-tempalte:1.0.20) d1c9e3f296ee9f7d5032f73f9c504cede50334bc14c394055fd5cb9c3a6e08b3 جامع المرحلة أ (الإصدار 1.0.20)
postinstall.js (chalk-tempalte:1.0.19 = 1.0.20) ffba9bdd6793edd5b38e12900252c1813a693f59c25af51c3b658cf3f27b6162 مُحمِّل المرحلة أ، متطابق البايت في كلا الإصدارين

الإسناد والتحفيز

نتابع هذه الحملة على النحو التالي: فانتومبوت، مستخدماً العلامة التجارية الخاصة بالمشغل من وكيل المستخدم: PhantomBot/1.0 عنوان نبضات القلب، phantom-bot.service وحدة systemd، com.phantom.bot علامة LaunchAgent، و phantomdeadcode@ اسم المستخدم الإلكتروني. يستخدم المشغل هذا الاسم نفسه في أربع وثائق على الأقل.

كتالوج الإشارات

  • Publisher - deadcode09284814 على npm. حساب بمقبض واحد، بريد إلكتروني مؤقت من Tutamail، لا SCM التحقق. لا يوجد تاريخ نشر سابق يتجاوز هذه الحملة.
  • إعادة استخدام العلامة التجارية — تظهر كلمة "phantom" في البريد الإلكتروني للناشر، وفي اسم ملف جامع المرحلة أ (phantom.js) في اسم خدمة استمرارية المرحلة ب (phantom-bot.service), في تسمية LaunchAgent (com.phantom.bot), وفي وكيل المستخدم الخاص بالبوت (فانتوم بوت/1.0).
  • البنية التحتية — خادم افتراضي خاص واحد في 80.200.28.28 تُنفَّذ المرحلة أ عبر تدوير النطاق الفرعي لسيرفو؛ وتنتقل المرحلة ب إلى localhost.run نفق عكسي (b94b6bcfa27554.lhr.life). كلا خدمتي البائع مجانيتان ولا تتطلبان سوى اتصال SSH صادر من جانب المشغل، بما يتوافق مع الإعدادات منخفضة الميزانية ومنخفضة مستوى أمن العمليات.
  • أسلوب الكود — جافا سكريبت عادية بالكامل؛ لا تشويش، لا ترميز للسلاسل النصية، لا فحوصات مضادة للآلات الافتراضية. أسماء المتغيرات وصفية (سرقة معلومات النظام, تنفيذ الأمر, فيضان HTTP). التعليقات في distrube.js يخاطب الملف بشكل مباشر عاملاً مستقبلياً ("استخدم عنوان URL الخاص بـ localhost.run HTTPS")، مما يشير إلى أن الملف كان من المفترض إعادة توزيعه كمجموعة أدوات، وليس استخدامه من قبل مهاجم واحد.
  • إيصال أمن العمليات — تتضمن حزمة Phase B المضغوطة كلاً من عميل البوت وخادم C2 الخاص بالمشغل (c2 ELF + c2.go (المصدر). يتوافق هذا مع قيام أحد المستخدمين برفع شجرة العمل الخاصة به إلى npm دون مراجعة قائمة الملفات. إما أن المستخدم يفتقر إلى الخبرة، أو أن حزمة البرامج غير مكتملة. يعني سيتم توزيعها علنًا، والملف الثنائي C2 هو جزء من المنتج.
  • تأكيد الذات - axois-utils:1.0.4 يحتوي على تعليق المصدر // غيّر إلى '80.200.28.28' للعرض العام في السطر 12، يؤكد ذلك تقدم التطوير / مرحلة الاختبار / الإنتاج الذي ينكره المشغلون عادةً.

الدافعية

تتمثل حمولة المرحلة (أ) في سرقة مالية مباشرة: بيانات الاعتماد، ومفاتيح السحابة، ورموز GitHub، ومحافظ العملات المشفرة، جميعها لها أسواق إعادة بيع سائلة. أما المرحلة (ب) فهي مالية أيضًا، ولكنها غير مباشرة: إذ تستأجر خدمات هجمات الحرمان من الخدمة الموزعة (DDoS) ("المُشغِّلون") سعة إغراق بالدقيقة، وتُعدّ برامج الروبوت، مثل تلك التي تم شحنها هنا، هي المخزون الذي تعمل عليه هذه الخدمات. نبض القلب كل 30 ثانية، والنمط العام الهدف/ميناء/مدة الأقامة مخطط الأوامر، وترسانة هجمات الفيضان المكونة من خمسة بروتوكولات هي standard منتج من مشغل آلة تفجير.

تشغيل كلا الوحدتين بالتوازي — chalk-tempalte:1.0.19 و 1.0.20 استمر في شحن السارق بينما axois-utils:1.0.9 يشير شحن الروبوت إلى أن المشغل يحاول تنويع مصادر دخله بدلاً من التخلي عن المرحلة الأولى. هذا التحول هو... إضافة، وليس بديلا.

ما لا ندّعيه

لم نتمكن من تأكيد هوية حقيقية وراء deadcode09284814 لا ننسب هذه الحملة إلى أي جهة تهديد أو جماعة أو دولة محددة. تتشابه العلامة التجارية "الوهمية" بشكل كافٍ عبر جميع العناصر، مما يوحي بوجود مُشغّل واحد، إلا أن توزيع ملف C2 الثنائي على شكل حزمة يترك الباب مفتوحًا أمام احتمال إعادة استخدام نفس الشفرة في حزم مستقبلية من جهات أخرى.

التأثير والاتجاهات وما ينبغي على المدافعين فعله

التأثير

الأهداف المشروعة لتمارين القرفصاء أكسيوس و قالب طباشيري يعتمد عليها بشكل كبير في بيئة جافا سكريبت؛ أكسيوس تحتل هذه الحزمة وحدها مكانةً بين أفضل ثلاثين حزمةً من حزم npm الأكثر تحميلاً. أسماء الحزم المزيفة لا تختلف عن الأسماء الحقيقية إلا بضغطة زر واحدة (المحورأكسيوس, قالبقالب)، وكلاهما خطأ إملائي محتمل من الناحية اللغوية.

لم نتمكن من الحصول على إحصائيات تنزيل موثوقة للإصدارات الخبيثة قبل إزالتها - لا يحتفظ npm بعدد التنزيلات لكل إصدار بعد إلغاء نشر الحزمة، و npms.ioتُعدّ الخوادم الوكيلة من نوع -style مزعجة عند هذا النطاق. أي مؤسسة يُشير ملف القفل الخاص بها إلى حزمة باسم axois-utils or قالب الطباشير من الناشر deadcode09284814 يجب التعامل معها على أنها مخترقة: قم بتدوير كل بيانات اعتماد موجودة في عملية. env على المضيف المتأثر، قم بمراجعة متجهات الاستمرارية لكل نظام تشغيل (انظر "ما يجب على المدافعين فعله" أدناه)، وقم بإزالة التبعية.

الأنماط الناشئة

تُجسد هذه الحملة تحولاً شهدناه في العديد من حوادث npm الأخيرة: السقالة ذات الخطافات هي أصل دائمالحمولة قابلة للتبديلنفس الناشر، نفس الحزمة، نفس التثبيت المسبق / تثبيت / بعد التثبيت ثلاثة أضعاف، وحتى نفس وتيرة تحديث الإصدار - الشيء الوحيد الذي تغير بينهما axois-utils:1.0.6 و axois-utils:1.0.9 هل كان الملف hooks تشغيل. الكشف القائم على التوقيعات والمرتبط بحمولة المرحلة أ (سلاسل مسار المحفظة، phantom.jsكان جامع البيانات المكون من 7,667 سطرًا (مضيف Serveo C2) سيشير إلى الإصدارات الثلاثة الأولى ويتجاهل المرحلة B تمامًا.

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

والنتيجة المترتبة على ذلك هي أن تُعد توقيتات وتقنيات وأساليب التثبيت إشارة أفضل. إعلانات خطافات التثبيت الثلاثية، نصوص التثبيت التي تستورد HTTPS or عملية الطفلقم بتثبيت البرامج النصية التي تكتب إلى مجلدات بدء تشغيل المستخدم، وقم بتثبيت البرامج النصية التي تحل أسماء المضيفين على خدمات النفق العكسي المجانية (Serveo، localhost.run(مثل ngrok و cloudflared) نادرة في الحزم الشرعية وشائعة في الحزم الخبيثة.

ما ينبغي على المدافعين فعله

  • تدقيق ملفات القفل. ابحث في كل حزمة lock.json / غزل.قفل / pnpm-lock.yaml في مؤسستك للحصول على السلاسل النصية الدقيقة axois-utils و قالب الطباشيرتعامل مع أي مباراة على أنها حل وسط.
  • تدوير الأسرار على الأجهزة المضيفة المتأثرة. المرحلة أ: بيانات اعتماد SSH، والسحابة، وGitHub، وnpm، والمحفظة الإلكترونية التي تم جمعها بكميات كبيرة. افترض وجود جميع بيانات الاعتماد التي كانت موجودة على الإطلاق في عملية. env, ~ / .ssh, ~/.aws, ~/.npmrc, ~ / تكوين، أو أي .env* تم كشف الملف الموجود على الجهاز المضيف المتأثر.
  • إزالة الثبات (المرحلة ب). في نظام ويندوز، احذف HKCU\Software\Microsoft\Windows\CurrentVersion\Run\SystemUpdate، إزالة %APPDATA%\Microsoft\Windows\Start Menu\Programs\Startup\system-update.batو schtasks /delete /tn SystemUpdate /fعلى نظام لينكس، -e كرونتاب وإزالة @reboot node …, systemctl –user disable –now phantom-bot.service ثم احذف ~/.config/systemd/user/phantom-bot.service، افرك .bashrc / .zshrc. / /etc/rc.localعلى نظام macOS، launchctl unload ~/Library/LaunchAgents/com.phantom.bot.plist ثم احذف ملف plist.
  • قم بحظر مضيفي C2. أضف نقاط النهاية C2 الأربعة الموجودة في جدول IOC إلى قائمة حظر الخروج الخاصة بك. *.serveousercontent.com و *.lhr.life يمكن حظرها بالكامل إذا لم يكن لبيئتك استخدام مشروع لخدمات النفق العكسي.
  • البحث حسب وقت التثبيت TTPوليس الحمولة. إدخالات ملف قفل المخزون التي package.json يعلن التثبيت المسبق, تثبيتو بعد التثبيت جميعها تشير إلى نفس البرنامج النصي. تحقق من عمر الحزمة وحالة التحقق من الناشر. هذا النمط نادر في الحزم الأصلية، وهو المؤشر الأكثر موثوقية الذي يعيد PhantomBot استخدامه.
  • تدقيق الملف الثنائي C2. أي شخص قام بتنزيل axois-utils:1.0.9 يحتوي على خادم التحكم والسيطرة الخاص بالمشغل (c2 ELF، sha256 165fa92d…) على القرص. افحص ذاكرة التخزين المؤقت ومخازن بيانات التكامل المستمر. الملف التنفيذي غير نشط في حد ذاته، لكن وجوده على محطة العمل دليل قاطع على تثبيت الحزمة.

الخط الفاصل

يمكن لنفس المشغل، ونفس الحزمة، ونفس أداة التثبيت أن تُطلق تهديدات مختلفة تمامًا في غضون 48 ساعة. راقب الهيكل، لا الحمولة.

أدوات تحليل التركيبات البرمجية sca
إعطاء الأولوية للمخاطر التي تتعرض لها برامجك، ومعالجتها، وتأمينها
احصل على حسابك المجاني.
أي بطاقة ائتمان.

قم بتأمين تطوير البرامج الخاصة بك وتسليمها

مع مجموعة منتجات Xygeni