كان تطبيق WalletGenerator.net الذي ينشئ المحافظ الورقية للعملات المشفرة على الإنترنت يعمل بواسطة كود تسبب في إصدار أزواج مفاتيح خاصة/عامة لعدة مستخدمين. وقد تم وصف مشكلة عدم الحصانة في أحد منشورات المدونة الرسمية بواسطة الباحث الأمني هاري دنلي من ماي كريبتو يوم ٢٤ مايو.
ووفقًا للمنشور، كان الكود العيب ساريًا بحلول أغسطس ٢٠١٨، ولم يتم تصحيحه مؤخرًا إلا اعتبارًا من ٢٣ مايو. ومن المفترض أن الكود المباشر على الموقع هو كود مفتوح المصدر ومراجع على “غيت هاب”، ولكن تم اكتشاف اختلافات بين الاثنين. وبعد البحث عن الكود المباشر، خلص دينلي إلى أن المفاتيح تم إنشاؤها بشكل نهائي على النسخة المباشرة للموقع، وليس بشكل عشوائي.
وفي أحد اختبارات “ماي كريبتو” في الفترة ما بين ١٨-٢٣ مايو، حاولوا استخدام مولد المجمع الخاص بالموقع لإنشاء ١٠٠٠ مفتاح. وقام إصدار غيتهاب بإرجاع ١٠٠٠ مفتاح فريد، لكن الكود المباشر أعاد ١٢٠ مفتاحًا. ويُقال إن تشغيل مولد المجمع دومًا يعيد ١٢٠ مفتاحًا فريدًا بدلًا من ١٠٠٠ حتى إذا تم تغيير العوامل الأخرى، بما في ذلك تحديثات المتصفح أو تغييرات VPN أو تغييرات المستخدم.
وهناك حاجة إلى العشوائية لإنشاء أزواج المفاتيح من أجل أن تكون محافظ الورق آمنة. وحسبما يصف المنشور:
“ELI٥: عند إنشاء مفتاح ما، فأنت تأخذ رقمًا عشوائيًا فائقًا، وتقوم بتحويله إلى مفتاح خاص، ومن ثم تحويله إلى مفتاح/عنوان عام. ومع ذلك، إذا كان الرقم “العشوائي الفائق” دائمًا هو “٥”، فسيظل المفتاح الخاص الذي تم إنشاؤه هو نفسه دائمًا. وهذا هو السبب في أنه من المهم أن يكون الرقم العشوائي الفائق عشوائيًا فعليًا وليس “٥.”
وقد قام WalletGenerator بتصحيح المشكلة الحتمية بعد أن تواصل معه ماي كريبتو خلال منتصف التحقيق. ويزعم أن WalletGenerator استجاب بعد ذلك قائلًا إنه لا يمكن التحقق من المزاعم، بل وسأل المراسل عما إذا كان ماي كريبتو عبارة عن “موقع تصيد إلكتروني”.
وقد أضاف “ماي كريبتو” أنه يجب على المستخدمين الذين قاموا بإنشاء أزواج المفاتيح بعد ١٧ أغسطس ٢٠١٨ نقل أموالهم على الفور إلى محفظة مختلفة وأوصى بعدم استخدام WalletGenerator.net.