بقلم: ليزا وشان @SlowMist فريق الأمن
وفقًا لمعلومات استخباراتية من فريق SlowMist الأمني، في مساء يوم 14 ديسمبر 2023، بتوقيت بكين، تعرضت Ledger Connect Kit لهجوم على سلسلة التوريد، وحصل المهاجم على ما لا يقل عن 600000 دولار أمريكي.
تدخل فريق SlowMist الأمني على الفور في التحليل وأصدر تحذيرًا مبكرًا:

في الوقت الحالي، تم حل الحادث رسميًا، ويقوم فريق SlowMist الأمني الآن بمشاركة معلومات الطوارئ على النحو التالي:
الجدول الزمني
في الساعة 7:43 مساءً، ذكر مستخدم تويتر @g4sarah أنه يشتبه في أن الواجهة الأمامية لبروتوكول إدارة الأصول DeFi Zapper قد تم اختطافها.

في الساعة 8:30 مساءً، أصدر ماثيو ليلي، كبير مسؤولي التكنولوجيا في Sushi، تحذيرًا على Twitter: "يُطلب من المستخدمين عدم التفاعل مع أي تطبيق dApp حتى إشعار آخر. موصل Web3 شائع الاستخدام (مكتبة JavaScript، جزء من مشروع web3-react) ويُشتبه في أنه قد تم اختراقه، مما سمح بحقن تعليمات برمجية ضارة تؤثر على العديد من التطبيقات اللامركزية." وفي وقت لاحق، ذكر أن Ledger قد يكون لديه تعليمات برمجية مشبوهة. وعلى الفور صرح فريق SlowMist الأمني أنه يقوم بمتابعة وتحليل هذه الحادثة.

8:56 مساءً، نشرت Revoke.cash على تويتر: «تم المساس بعدة تطبيقات تشفير شائعة (بما في ذلك Revoke.cash) والتي تتكامل مع مكتبة Ledger Connect Kit. لقد أغلقنا هذا الموقع مؤقتًا. ننصح بعدم استخدام أي مواقع تشفير خلال فترة استغلال هذه الثغرة». بعد ذلك، أعلن مشروع DEX عبر السلاسل Kyber Network أيضًا، ومن باب الحيطة، أنه قام بتعطيل واجهة المستخدم الأمامية (UI) حتى تتضح الحالة بالكامل.

9:31 مساءً، قامت Ledger أيضًا بنشر تنبيه: «لقد حددنا وأزلنا الإصدار الخبيث من Ledger Connect Kit. الآن نقوم بدفع النسخة الرسمية لاستبدال الملفات الخبيثة، يُرجى عدم التفاعل مع أي dApp مؤقتًا. إذا حدثت مستجدات، فسوف نُعلمكم. لم تتعرض أجهزة Ledger الخاصة بكم ولا تطبيق Ledger Live لأي ضرر.»

9:32 مساءً، نشرت MetaMask أيضًا تنبيهًا: «قبل أن يقوم المستخدم بإجراء أي معاملة على MetaMask Portfolio، يرجى التأكد من تفعيل ميزة Blockaid داخل امتداد MetaMask.»

تأثير الهجوم
فورًا، شرعت الكتلة/فريق الأمان من SlowMist في تحليل الكود ذي الصلة، ووجدنا أن المهاجم قام بزرع كود JS خبيث داخل إصدارات @ledgerhq/connect-kit =1.1.5/1.1.6/1.1.7، واستبدل منطق النافذة الطبيعي مباشرةً باستخدام فئة Drainer. لن يؤدي ذلك فقط إلى ظهور نافذة منبثقة مزيفة باسم DrainerPopup، بل سيقوم أيضًا بمعالجة منطق تحويل مختلف الأصول. ويقوم المهاجم بإطلاق هجوم التصيد عبر توزيع المحتوى عبر CDN للمستخدمين المشفرين (cryptocurrency).


نطاق الإصدارات المتأثرة:
@ledgerhq/connect-kit 1.1.5 (ذكر المهاجم في الكود كلمة Inferno؛ ويُرجّح أنها إشارة/«تحية» لعصابة التصيد الاحتيالي Inferno Drainer المتخصصة في الاحتيال متعدد السلاسل)

@ledgerhq/connect-kit 1.1.6 (ترك المهاجم ملاحظة داخل الكود وزرع كود JS خبيث)

@ledgerhq/connect-kit 1.1.7 (ترك المهاجم ملاحظة داخل الكود وزرع كود JS خبيث)

توضح Ledger أن محفظة Ledger نفسها غير متأثرة؛ وإنما المتأثر هو التطبيقات التي تدمج مكتبة Ledger Connect Kit.
ومع ذلك، تستخدم العديد من التطبيقات Ledger Connect Kit (مثل SushiSwap و Zapper و MetalSwap و Harvest Finance و Revoke.cash وغيرها)، وبالتالي فإن نطاق التأثير لن يكون صغيرًا بل سيبقى واسعًا أو يزداد.
يمكن لهجوم هذه الجولة من المهاجم تنفيذ أي كود تعسفي بمستوى صلاحيات مطابق للتطبيق نفسه. على سبيل المثال، لا يحتاج المهاجم إلى تفاعل؛ إذ يمكنه استنزاف جميع أموال المستخدمين فورًا. كما يمكنه نشر عدد كبير من روابط التصيد لخداع المستخدمين. بل وحتى استخدام مشاعر الذعر لدى المستخدمين؛ فالمستخدمون يحاولون تحويل الأصول إلى عنوان جديد، لكنهم يقومون بتنزيل «محفظة» مزيفة مما يؤدي إلى خسارة الأصول.

تحليل الأساليب والتكتيكات
في التحليل أعلاه لتأثير الهجوم، وبناءً على خبراتنا التاريخية في الاستجابة للطوارئ، نرجح أن هذه قد تكون عملية تصيد احتيالي (هندسة اجتماعية) مُخططة مسبقًا.
وفقًا لتغريدة @0xSentry، تتضمن آثار رقمية تركها المهاجم حساب Gmail الخاص بـ @JunichiSugiura (Jun، الموظف السابق لدى Ledger). ويُحتمل أن يكون هذا الحساب قد تم اختراقه، وقيام Ledger بنسيان حذف صلاحيات وصول الموظف هذا.

11:09 مساءً، أكد المسؤولون الرسميون هذا الاستنتاج — أصبح موظف سابق لدى Ledger ضحية لهجوم تصيد احتيالي:
1) حصل المهاجم على إمكانية الوصول إلى حساب NPMJS الخاص بهذا الموظف؛
2) قام المهاجم بنشر نسخة خبيثة من Ledger Connect Kit (1.1.5 و1.1.6 و1.1.7)؛
3) استخدم المهاجم كودًا خبيثًا، حيث حوّل الأموال إلى عنوان محفظة المخترق عبر WalletConnect خبيث.
في الوقت الحالي، أصدرت Ledger نسخة Ledger Connect Kit رسمية مُتحقق منها (1.1.8)، يُرجى الترقية في أقرب وقت.
على الرغم من حذف الإصدارات التي تم تسميمها في Ledger npmjs، إلا أنه لا يزال توجد ملفات JS مصابة على jsDelivr حاليًا:
https://cdn.jsdelivr.net/npm/@ledgerhq/connect-kit@1.1.7
https://cdn.jsdelivr.net/npm/@ledgerhq/connect-kit@1.1.6
تنبيه: نظرًا لاحتمال وجود تأخير بسبب عامل CDN، توصي الجهة الرسمية بعدم استخدام Ledger Connect Kit إلا بعد مرور 24 ساعة.
يُستحسن من جهة المشروع عند نشر مصادر CDN التابعة لجهات خارجية كمكونات معتمدة (dependencies) أن يتأكدوا دائمًا من تثبيت الإصدارات ذات الصلة، لمنع المخاطر الناجمة عن إصدار خبيث ثم تحديثه لاحقًا. (وفقًا لتوصية @galenyuan)
في الوقت الحالي، قبلت الجهة الرسمية بالفعل التوصيات ذات الصلة، وتُرجّح أنه سيتم تغيير الاستراتيجية في الفترة القادمة:

المخطط الزمني النهائي الرسمي لدى Ledger:

تحليل MistTrack
عميل Drainer: 0x658729879fca881d9526480b82ae00efc54b5c2d
عنوان رسوم Drainer: 0x412f10AAd96fD78da6736387e2C84931Ac20313f
وفقًا لتحليل MistTrack، حقق المهاجم (0x658) أرباحًا لا تقل عن 600 ألف دولار أمريكي، وهو مرتبط بعصابة التصيد الاحتيالي Angel Drainer.
الطريقة الرئيسية لهجمات عصابة Angel Drainer هي شن هجمات الهندسة الاجتماعية على مزودي خدمات النطاقات والموظفين. ومن كان مهتمًا يمكنه النقر لقراءة التحقيق في «الملائكة» السوداء — كشف عصابة Angel Drainer للتصيد.

يحتفظ Angel Drainer (0x412) حاليًا بأصول تقارب 363 ألف دولار أمريكي.

وفقًا لشبكة معلومات التهديدات من شركة SlowMist، توجد الملاحظات التالية:
1) IP 168.*.*.46، 185.*.*.167
2) قام المهاجم بتحويل جزء من ETH إلى XMR
11:09 مساءً، قامت Tether بتجميد عناوين مستغلي ثغرة Ledger. بالإضافة إلى ذلك، قامت MistTrack بحظر العناوين ذات الصلة، وستستمر في مراقبة حركة الأموال.
الخلاصة
يعيد هذا الحادث تأكيد أن أمن DeFi ليس مجرد أمان العقود؛ فالأمان منظومة كاملة.
من ناحية، يبرز هذا الحادث أن ثغرات أمان سلسلة التوريد قد تؤدي إلى عواقب خطيرة. إذ يمكن للبرامج الضارة والأكواد الخبيثة زرع نفسها في مراحل مختلفة من سلسلة توريد البرمجيات، بما في ذلك أدوات التطوير، والمكتبات التابعة لجهات خارجية، وخدمات السحابة، وعمليات التحديث. وبمجرد نجاح حقن هذه العناصر الخبيثة، يمكن للمهاجم استخدامها لسرقة أصول العملات المشفرة والمعلومات الحساسة للمستخدمين، أو تعطيل وظائف النظام، أو ابتزاز الشركات، أو الانتشار على نطاق واسع للبرامج الضارة.
ومن ناحية أخرى، يمكن للمهاجم عبر هجمات الهندسة الاجتماعية الحصول على معلومات الهوية الشخصية للمستخدمين، وأوراق اعتماد الحساب، وكلمات المرور، وغيرها من المعلومات الحساسة. كما سيستخدم المهاجم رسائل بريد إلكتروني أو رسائل نصية أو مكالمات هاتفية مخادعة لإغراء المستخدمين للنقر على روابط خبيثة أو تنزيل ملفات خبيثة. يُنصح المستخدمون باستخدام كلمات مرور قوية، تشمل مزيجًا من الأحرف والأرقام والرموز، وتغييرها بانتظام لتقليل فرص تخمين المهاجمين لكلمات المرور أو استخدام تقنيات الهندسة الاجتماعية للحصول عليها قدر الإمكان. كما ينبغي تطبيق المصادقة متعددة العوامل، وذلك باستخدام عوامل تحقق إضافية (مثل رموز التحقق عبر الرسائل النصية، أو التعرف على البصمات، إلخ) لزيادة أمان الحساب، وتحسين القدرة على الوقاية من هذا النوع من الهجمات.
تهدف (متطلبات ممارسات أمن مشاريع Web3) و(دليل إرشادات أمان سلسلة التوريد في قطاع Web3) اللذان نشرتهما مجموعة SlowMist للأمن، إلى توجيه وتنبيه فرق مشاريع Web3 للاهتمام بإجراءات الأمان الشاملة. ويغطي نظام المراقبة الأمنية MistEye الذي نشرته مجموعة SlowMist للأمن، مجالات شاملة مثل مراقبة العقود ومراقبة الواجهة الأمامية والخلفية والتنبيهات المبكرة لاكتشاف الثغرات وغيرها. وهو يركز على الأمان طوال دورة حياة مشروع DeFi من مرحلة ما قبل وقوع الهجوم وأثناءه وبعده. نرحب بمشاريعكم باستخدام نظام المراقبة الأمنية MistEye للسيطرة على المخاطر وتعزيز مستوى أمان المشروع.
