مدعوم من
Featured

شرح ثغرة «كولدكارد»: من خسر عملات البيتكوين ومن المعرض للخطر

استغل أحد المهاجمين البذور الضعيفة التي أنشأتها بعض محافظ «كولدكارد» (Coldcard) المادية لسرقة عملات بيتكوين تبلغ قيمتها عشرات الملايين تقريبًا من مئات العناوين في 30 يوليو.

بقلم
مشاركة
شرح ثغرة «كولدكارد»: من خسر عملات البيتكوين ومن المعرض للخطر

النقاط الرئيسية

  • أدت السرقات المرتبطة بـ Coldcard إلى استنزاف البيتكوين من مئات المحافظ في 30 يوليو.
  • تقول Coinkite إن بذور Mk3 كانت تحتوي على حوالي 40 بت من الإنتروبيا بدلاً من 128.
  • يجب على مستخدمي Coldcard تثبيت البرنامج الثابت المُصلح وإنشاء بذور جديدة قبل تحويل الأموال.

وفقًا لتحليل متعمق أجرته Galaxy Research، وقعت السرقة الرئيسية في موجة منسقة بدقة استمرت حوالي 25 دقيقة، في حين ربط تحليل أوسع نطاقًا لاحقًا ما يقرب من 1,196 عنوانًا وما يصل إلى 1,083 بيتكوين، تبلغ قيمتها حوالي 70 مليون دولار، بنشاط امتد لحوالي 41 دقيقة. قد تتغير الأرقام النهائية مع استمرار المحققين في تتبع المعاملات على سلسلة بلوكشين بيتكوين العامة.

خلل برمجي عمره 5 سنوات يصل إلى محافظ البيتكوين في جميع أنحاء العالم

كانت المحافظ المتضررة مملوكة في الغالب لحاملي عملات على المدى الطويل قاموا بإنشاء بذور الاسترداد الخاصة بهم باستخدام أجهزة Coldcard التي تعمل ببرمجيات ثابتة معرضة للخطر تم إصدارها اعتبارًا من مارس 2021 فصاعدًا. Coldcard هي محفظة أجهزة معزولة عن الإنترنت (air-gapped) من صنع الشركة الكندية Coinkite ومصممة للحفاظ على عزل مفاتيح البيتكوين (BTC) عن الأجهزة المتصلة بالإنترنت.

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

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

فشل مولد الأرقام العشوائية في Coldcard بهدوء

بذرة محفظة البيتكوين هي سر، تُعرض عادةً على شكل 12 أو 24 كلمة، تُستخدم لتوليد عناوين المحفظة ومفاتيحها الخاصة. تحتوي البذرة المكونة من 12 كلمة والمُولَّدة بشكل صحيح على 128 بت من الإنتروبيا، وهو مقياس تقني يصف عددًا هائلاً من التركيبات الممكنة، مما يجعل تخمين البذرة أمرًا مستحيلًا فعليًّا.

كان من المفترض أن تحصل أجهزة Coldcard على تلك العشوائية من مولد أرقام عشوائية مدمج في وحدة التحكم الدقيقة للجهاز. يعتمد هذا المكون على الضوضاء الكهربائية الفيزيائية التي لا يُفترض أن يتمكن المراقب الخارجي من التنبؤ بها.

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

أدى إعداد تكوين إلى تعطيل مسار الأجهزة الافتراضي لـ MicroPython لأن شركة Coinkite قدمت غلاف الأجهزة الخاص بها. ولم يتحقق البرنامج إلا من وجود هذا الإعداد، وليس من تفعيله. ونظرًا لوجود الإعداد ولكن مع تعيين قيمة صفر له، اكتمل البناء بنجاح، بينما تحول توليد البذرة بصمت إلى مولد البرامج الأضعف.

استبدال العشوائية الحقيقية ببيانات المصنع والتوقيت

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

قدّرت Coinkite مساحة البحث الفعّالة للبذور Mk3 المعرضة للخطر بحوالي 40 بت وفقًا للافتراضات الحالية. ولا يزال هذا يمثل عددًا كبيرًا من الاحتمالات، لكن يمكن البحث فيه باستخدام معدات حوسبة متخصصة، خاصةً عندما يتمكّن المهاجم من مقارنة البذور المرشحة بعناوين البيتكوين الظاهرة على سلسلة الكتل.

Screenshot of the Coldcard Mk3 model.
لقطة لطراز Coldcard Mk3.

أضافت طرز Coldcard الأحدث، بما في ذلك Mk4 وQ وMk5، بعض العشوائية من عنصر آمن. ومع ذلك، لم يصل سوى جزء محدود إلى المولد المتأثر، تاركًا ما يقدر بـ72 بت من الإنتروبيا الفعالة على البذور التي تم إنشاؤها قبل تثبيت البرنامج الثابت المصحح. وكان ذلك أقوى من مسار Mk3 لكنه لا يزال أقل من المعيار المقصود البالغ 128 بت.

الفرق مشابه لاستبدال تركيبة قفل عشوائية حقًّا بأخرى مشتقة من الرقم التسلسلي للقفل ووقت تشغيله لأول مرة. قد تبدو التركيبة الناتجة عشوائية، لكن أي شخص يعرف الصيغة ويستطيع تقدير المعلومات الأولية يمكنه إعادة إنتاجها. يقوم العديد من المستخدمين بالترحيل، ليس فقط من أجهزة Mk3، بل من أجهزة Mk4 وQ وMk5 أيضًا.

Coinkite تطلب من المستخدمين إنشاء بذور جديدة تمامًا

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

لا يكفي تثبيت التحديث وحده. فالبذرة التي تم إنشاؤها في ظل النظام المعيب تظل ضعيفة بشكل دائم لأن تحديث البرنامج الثابت لا يمكنه إضافة العشوائية إلى الكلمات الموجودة بالفعل.

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

حددت الشركة الإصدارات التي تم إصلاحها، بما في ذلك Mk3 الإصدار 4.2.0 أو الأحدث، وMk4 وMk5 الإصدار 5.6.0 أو الأحدث، وQ الإصدار 1.5.0Q أو الأحدث، إلى جانب إصدارات Edge المقابلة. تستخدم منتجات Tapsigner و Opendime و Satscard رموزًا مختلفة، ولم تتأثر حسبما ورد.

أمان إضافي يحمي بعض مالكي بطاقات Coldcard

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

كما أن عبارة مرور BIP-39 القوية تنشئ محفظة منفصلة لا يمكن إعادة بنائها من كلمات البذرة وحدها. وكانت المحافظ متعددة التوقيعات، التي تتطلب مفاتيح من أجهزة أو مواقع متعددة قبل أن يتم تحويل البيتكوين، محمية بشكل كبير أو كامل عندما كانت بذرة Coldcard المعرضة للخطر تمثل جزءًا واحدًا فقط من ترتيب التوقيع.

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

«Coinkite» تتحمل المسؤولية مع تحول النقاش إلى الذكاء الاصطناعي

اعتذر رودولفو نوفاك، الرئيس التنفيذي لشركة Coinkite والمعروف على نطاق واسع باسم NVK، علنًا في 31 يوليو وقال إن الشركة تتحمل المسؤولية الكاملة عن فشل البرنامج الثابت. «أنا آسف وأشعر بصدمة شديدة. فريقنا حزين للغاية بسبب أخبار الأمس"، كتب نوفاك. وأقر بأن التصحيح المؤقت يؤمن البذور التي تم إنشاؤها حديثًا، لكنه لا يستطيع إصلاح البذور التي تم إنشاؤها باستخدام برامج معرضة للخطر.

Coinkite CEO Rodolfo Novak's article screenshot.
مقال الاعتذار الذي كتبه رودولفو نوفاك، الرئيس التنفيذي لشركة Coinkite. مصدر الصورة: X.

وأوضح نوفاك أن Coinkite ستنشر تقريرًا تقنيًّا كاملاً بعد التحقق من التفاصيل، وستساعد المستخدمين المتضررين في الحصول على محاضر الشرطة أو المطالبات التأمينية أو إجراء تحقيقات مستقلة. كما حذر المطورين من أن أدوات الذكاء الاصطناعي (AI) يمكنها الآن فحص الشفرات المفتوحة القديمة بحثًا عن نقاط الضعف الخفية بسرعة تفوق قدرة عمليات المراجعة التقليدية على اكتشافها.

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

وقالت الشركة لمستخدمي X بعد حادثة Coldcard: «لم تتأثر Ledger بالتنبيه الذي نُشر مؤخرًا بشأن Coldcard Mk3». "تستخدم أجهزة Ledger مولد أرقام عشوائية حقيقي (TRNG) معتمدًا ومدمجًا مباشرةً في شريحة Secure Element الخاصة بنا، مما يولد إنتروبيا كاملة تبلغ 256 بت لكل عبارة استرداد سرية مكونة من 24 كلمة."

"مستخدمو Trezor: أموالكم آمنة"، أوضحت شركة Trezor المصنعة للمحافظ المادية يوم الجمعة. "تقتصر مشكلة Coldcard الأخيرة على البرامج الثابتة المخصصة الخاصة بهم وكيفية توليد العشوائية في بعض أجهزتهم. ولا تستخدم Trezor ذلك الكود."

وأضاف حساب Trezor X:

"لقد دأبنا دائمًا على مزج عدة مصادر مستقلة للعشوائية معًا (أجهزة الجهاز + المضيف + العناصر الآمنة في الطرز الأحدث). ونأسف بشدة لكل من خسر عملة بيتكوين."

ما يجب على مستخدمي Coldcard الانتباه إليه بعد ذلك

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

"مفارقة مثيرة للاهتمام: تقوم Coinkite بمسح جميع سجلات عملائها بعد 120 يومًا للحماية من اختراقات البيانات"، وفقًا لما أفاد به جيمسون لوب، المؤسس المشارك لشركة Casa، على X. «وهذا يعني أنهم غير قادرين على التواصل مع العملاء الذين اشتروا بطاقات «كولدكارد» المعرضة للخطر خلال السنوات الخمس الماضية لتحذيرهم من هذه الثغرة الأمنية.»

X screenshot of the pseudonymous open-source bitcoin developer calle.
وقد شارك مطور البيتكوين المفتوح المصدر الذي يستخدم الاسم المستعار «calle» أفكاره حول هذه المسألة. وقال «calle» على X: «أشعر بحزن شديد تجاه جميع المتضررين، خاصة أولئك الذين ربما فقدوا للتو مدخرات حياتهم. والأسوأ من ذلك أنهم فعلوا كل شيء بشكل صحيح».

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

وبعيدًا عن السرقة المدمرة، يدق مستخدمو البيتكوين في جميع أنحاء المجتمع ناقوس الخطر ويحثون الآخرين على نشر الخبر قبل أن تُفرغ المحافظ الأكثر عرضة للخطر.

تمت ترجمة هذه المقالة من الإنجليزية باستخدام الذكاء الاصطناعي. النسخة الإنجليزية الأصلية هي المصدر الموثوق؛ وقد تحتوي الترجمات الآلية على أخطاء، لا سيما في المصطلحات القانونية والتنظيمية.

وسوم في هذه القصة