Marvin هو عودة لثغرة أمنية عمرها 25 عامًا تسمح بعمليات التوقيع وفك التشفير بواسطة RSA
خلال مؤتمر ESORICS 2023 (الندوة الأوروبية لأبحاث أمن الحاسوب) الذي عقد في الفترة من 25 إلى 29 سبتمبر في هولندا، قدم باحث أمني يعمل لدى شركة Red Hat تقنية هجوم "Marvin Attack"، وهي تقنية هجوم تسمح بتحديد البيانات الأصلية عن طريق قياس التأخيرات أثناء عمليات فك التشفير بناءً على خوارزمية RSA.
هجوم مارفن هو شكل مختلف من طريقة بليشنباخر، التي تم اقتراحها في عام 1998 ، ويواصل تطوير هجمات ROBOT و New CAT التي تم نشرها في عامي 2017 و 2019.
يعد هجوم Marvin بمثابة عودة لثغرة أمنية عمرها 25 عامًا تسمح بتنفيذ عمليات التوقيع وفك التشفير بواسطة RSA كمهاجم مع القدرة على مراقبة وقت عملية فك التشفير التي يتم إجراؤها باستخدام المفتاح الخاص فقط.
في عام 1998، اكتشف دانييل بليشنباخر أن رسائل الخطأ المقدمة من خوادم SSL للأخطاء في حشوة PKCS #1 v1.5 مكنت من هجوم نص مشفر تم اختياره بشكل تكيفي؛ يكسر هذا الهجوم سرية TLS تمامًا عند استخدامه مع تشفير RSA. وفي عام 2018، أظهر هانو بوك، ويوراي سوموروفسكي، وكريغ يونغ، بعد 19 عامًا، أن العديد من خوادم الإنترنت لا تزال عرضة لتغيرات طفيفة في الهجوم الأصلي.
تعتمد هذه الطريقة أساسًا على مهاجم يستطيع، بناءً على اختلاف استجابات الخادم وأوقات التنفيذ، فصل كتل أوراكل الصحيحة عن الخاطئة المضافة باستخدام معيار PKCS #1 v1.5 لمحاذاة البيانات المشفرة على طول حدود الكتلة. ومن خلال التلاعب بمعلومات دقة كتل الحشو، يستطيع المهاجم استخدام أسلوب التجربة والخطأ لإعادة إنشاء نص مشفر صالح.
في هذه الحالة، لا يستعيد الهجوم المفتاح الخاص مباشرةً، بل يسمح فقط بفك تشفير النص المشفر أو إنشاء رسالة موقعة مزورة. ولتنفيذ هجوم ناجح، يجب إرسال عدد كبير جدًا من رسائل الاختبار لفك تشفيرها.
يُمكّن استخدام هجوم ضد خوادم TLS التي تستخدم تشفير RSA المهاجم من تخزين البيانات المُعترضة بشكل سلبي ثم فك تشفيرها . أما بالنسبة للخوادم التي تدعم PFS، فيصبح تنفيذ الهجوم أكثر صعوبة، ويعتمد نجاحه على سرعة تنفيذه.
علاوة على ذلك، تسمح هذه الطريقة بإنشاء توقيع رقمي وهمي يتحقق من محتوى رسائل ServerKeyExchange في TLS 1.2 أو رسائل CertificateVerify في TLS 1.3 المرسلة أثناء مرحلة تبادل المفاتيح، والتي يمكن استخدامها لتنفيذ هجمات MITM لاعتراض اتصال TLS بين العميل والخادم.
يذكر أن الفرق بين طريقة مارفن يكمن في التكنولوجيا المحسنة لفصل البيانات التزايدية الصحيحة وغير الصحيحة ، وتصفية النتائج الإيجابية الخاطئة، وتحديد تأخيرات الحساب بدقة أكبر، واستخدام قنوات إضافية من جهات خارجية أثناء القياس.
ومن الناحية العملية، تسمح الطريقة المقترحة بفك تشفير حركة المرور أو إنشاء التوقيعات الرقمية دون معرفة مفتاح RSA الخاص. ولاختبار إمكانية تطبيق الهجوم، تم نشر برنامج نصي خاص لفحص خوادم TLS وأدوات تحديد المشكلات في المكتبات.
تؤثر هذه المشكلة على العديد من تطبيقات البروتوكولات التي تستخدم خوارزميتي RSA وPKCS . على الرغم من أن مكتبات التشفير الحديثة تتضمن بعض الحماية ضد الهجمات القائمة على طريقة بليشنباخر، إلا أن الدراسة كشفت أن هذه المكتبات تحتوي على قنوات تسريب مفتوحة ، ولا توفر وقت معالجة متسقًا للحزم ذات الحشو الصحيح وغير الصحيح. على سبيل المثال، لا يرتبط تطبيق مارفن لهجوم GnuTLS بالشيفرة التي تُجري حسابات RSA مباشرةً، بل يستخدم أوقات تنفيذ مختلفة للشيفرة التي تُقرر عرض رسالة خطأ معينة.
يعتقد مؤلف الدراسة أيضًا أن فئة الثغرات الأمنية التي تم النظر فيها لا تقتصر على RSA وقد تؤثر على العديد من خوارزميات التشفير الأخرى التي تعتمد على المكتبات القياسية لحسابات الأعداد الصحيحة.
ولتأكيد إمكانية تنفيذ هجوم Marvin عمليًا، أثبت الباحث إمكانية تطبيق الطريقة على التطبيقات المعتمدة على مكتبات M2Crypto وpyca/cryptography، والتي كانت فيها بضع ساعات كافية لاختراق التشفير من خلال إجراء تجربة على كمبيوتر محمول متوسط.
وأخيرًا، إذا كنت مهتمًا بمعرفة المزيد، يمكنك العثور على التفاصيل في الرابط التالي.