تسبب خطأ في تكامل الكود البرمجي خلال تحديث مارس 2021 في جعل أجهزة كولدكارد تتجاوز شريحة توليد الأرقام العشوائية الفعلية (Hardware Entropy Chip) المخصصة لها أثناء توليد عبارة الاسترداد السرية، والرجوع بدلاً من ذلك إلى مولد أرقام عشوائي زائف (PRNG) قائم على البرامج . أثر هذا الخطأ على إصدارات البرامج الثابتة من 4.0.1 إلى 4.1.9، وبعد تحليل لاحق، امتد ليشمل الإصدارات حتى 5.0.3 على أجهزة Mk3 .
في الأجهزة المتضررة من فئة Mk3، انهارت العشوائية الفعلية من 128 بت المتوقعة إلى ما يقارب 40 بت فقط، مما جعل عبارات الاسترداد السرية قابلة للاختراق عبر التخمين الحسابي دون أي حاجة إلى الوصول الفعلي للجهاز أو التصيد الاحتيالي أو البرمجيات الخبيثة . وأكد تحليل كوينكايت (Coinkite) لاحقًا أن بعض عبارات Mk3 كانت تحتوي على حوالي 40 بت فقط من العشوائية . كما أن فحصًا برمجيًا كان من المفترض أن يتحقق من أن شريحة العشوائية الفعلية تعمل، قد تعطل هو نفسه بفعل نفس التحديث، مما سمح ببقاء العيب مكتشفًا لأكثر من خمس سنوات .
نشر باحثون من بلوك (Block، المعروفة سابقًا باسم سكوير) تحليلاً تقنيًا مفصلاً في 31 يوليو، متتبعين السبب الجذري إلى خطأ في دمج الكود البرمجي لتوليد الأرقام العشوائية في كولدكارد. وجاء في تقرير بلوك: "تحتوي البرامج الثابتة لكولدكارد على خطأ في دمج RNG يؤدي إلى استخدام ngu.random لمولد يعتمد على خوارزمية ياسمارانغ (Yasmarang) البرمجية بدلاً من مولد الأرقام العشوائية الفعلية لمعالج STM32" . هذا يعني أن عبارات الاسترداد تم توليدها باستخدام قيم يمكن التنبؤ بها — بما في ذلك الرقم التسلسلي للمعالج الدقيق وعداد النظام — بدلاً من العشوائية الفعلية .
تتراوح تقديرات الخسائر بين 38 مليون دولار و130 مليون دولار، وهذا الاختلاف الكبير ليس متناقضًا — بل يعكس لقطات زمنية مختلفة مع تطور الهجوم واكتشاف الباحثين لمزيد من المحافظ المخترقة.
| التقدير (BTC) | القيمة التقريبية ($) | المصدر / التوقيت |
|---|---|---|
| 594 BTC | ~38 مليون | أول تحذير من كوينكايت، أكثر من 500 محفظة غير نشطة |
| 1,082.65 BTC | ~70.2 مليون | جلطة أبحاث غالاكسي، أول موجة كبرى استمرت 41 دقيقة |
| 1,367 BTC | ~88–89 مليون | جلطة أبحاث غالاكسي، تتبع بداية أغسطس |
| 1,816 BTC | ~116 مليون | فوربس / تي آر إم لابز، أكثر من 5,200 عنوان |
| 2,055 BTC | ~130 مليون | جلطة أبحاث غالاكسي، 4 موجات، أكثر من 7,300 عنوان |
كان رد كوينكايت سريعًا، لكن الشركة واجهت مشكلة أساسية: لأن الثغرة كانت في عملية توليد المفاتيح نفسها، فإن تحديث البرامج الثابتة لا يمكنه إصلاح المفاتيح التي تم إنشاؤها بالفعل .
تحرك مجتمع أمن المعلومات بشكل واسع وسريع لرسم خريطة نطاق الاختراق وتتبع سببه.
تسبب خطأ في تكامل الكود البرمجي خلال تحديث مارس 2021 في جعل أجهزة كولدكارد تتجاوز شريحة توليد الأرقام العشوائية الفعلية (Hardware Entropy Chip) المخصصة لها أثناء توليد عبارة الاسترداد السرية، والرجوع بدلاً من ذلك إلى مولد أرقام عشوائي زائف (PRNG) قائم على البرامج . أثر هذا الخطأ على إصدارات البرامج الثابتة من 4.0.1 إلى 4.1.9، وبعد تحليل لاحق، امتد ليشمل الإصدارات حتى 5.0.3 على أجهزة Mk3 .
في الأجهزة المتضررة من فئة Mk3، انهارت العشوائية الفعلية من 128 بت المتوقعة إلى ما يقارب 40 بت فقط، مما جعل عبارات الاسترداد السرية قابلة للاختراق عبر التخمين الحسابي دون أي حاجة إلى الوصول الفعلي للجهاز أو التصيد الاحتيالي أو البرمجيات الخبيثة . وأكد تحليل كوينكايت (Coinkite) لاحقًا أن بعض عبارات Mk3 كانت تحتوي على حوالي 40 بت فقط من العشوائية . كما أن فحصًا برمجيًا كان من المفترض أن يتحقق من أن شريحة العشوائية الفعلية تعمل، قد تعطل هو نفسه بفعل نفس التحديث، مما سمح ببقاء العيب مكتشفًا لأكثر من خمس سنوات .
نشر باحثون من بلوك (Block، المعروفة سابقًا باسم سكوير) تحليلاً تقنيًا مفصلاً في 31 يوليو، متتبعين السبب الجذري إلى خطأ في دمج الكود البرمجي لتوليد الأرقام العشوائية في كولدكارد. وجاء في تقرير بلوك: "تحتوي البرامج الثابتة لكولدكارد على خطأ في دمج RNG يؤدي إلى استخدام ngu.random لمولد يعتمد على خوارزمية ياسمارانغ (Yasmarang) البرمجية بدلاً من مولد الأرقام العشوائية الفعلية لمعالج STM32" . هذا يعني أن عبارات الاسترداد تم توليدها باستخدام قيم يمكن التنبؤ بها — بما في ذلك الرقم التسلسلي للمعالج الدقيق وعداد النظام — بدلاً من العشوائية الفعلية .
تتراوح تقديرات الخسائر بين 38 مليون دولار و130 مليون دولار، وهذا الاختلاف الكبير ليس متناقضًا — بل يعكس لقطات زمنية مختلفة مع تطور الهجوم واكتشاف الباحثين لمزيد من المحافظ المخترقة.
| التقدير (BTC) | القيمة التقريبية ($) | المصدر / التوقيت |
|---|---|---|
| 594 BTC | ~38 مليون | أول تحذير من كوينكايت، أكثر من 500 محفظة غير نشطة |
| 1,082.65 BTC | ~70.2 مليون | جلطة أبحاث غالاكسي، أول موجة كبرى استمرت 41 دقيقة |
| 1,367 BTC | ~88–89 مليون | جلطة أبحاث غالاكسي، تتبع بداية أغسطس |
| 1,816 BTC | ~116 مليون | فوربس / تي آر إم لابز، أكثر من 5,200 عنوان |
| 2,055 BTC | ~130 مليون | جلطة أبحاث غالاكسي، 4 موجات، أكثر من 7,300 عنوان |
كان رد كوينكايت سريعًا، لكن الشركة واجهت مشكلة أساسية: لأن الثغرة كانت في عملية توليد المفاتيح نفسها، فإن تحديث البرامج الثابتة لا يمكنه إصلاح المفاتيح التي تم إنشاؤها بالفعل .
تحرك مجتمع أمن المعلومات بشكل واسع وسريع لرسم خريطة نطاق الاختراق وتتبع سببه.