ثغرة تجاوز سعة المخزن المؤقت في libssh

تم التعرف على ثغرة أمنية (CVE-2-2) في مكتبة libssh (يجب عدم الخلط بينها وبين libssh2021)، وهي مصممة لإضافة دعم العميل والخادم لبروتوكول SSHv3634 إلى برامج C، مما يؤدي إلى تجاوز سعة المخزن المؤقت عند بدء عملية إعادة المفتاح باستخدام تبادل المفاتيح الذي يستخدم خوارزمية تجزئة مختلفة. تم إصلاح المشكلة في الإصدار 0.9.6.

جوهر المشكلة هو أن عملية تغيير المفتاح تسمح باستخدام تجزئة التشفير بحجم تحويل يختلف عن الخوارزمية المستخدمة في الأصل. في الوقت نفسه، تم تخصيص ذاكرة التجزئة في libssh بناءً على حجم التجزئة الأصلي، ويؤدي استخدام حجم تجزئة أكبر إلى الكتابة فوق البيانات خارج حدود المخزن المؤقت المخصص. كطريقة أمان احتياطية، يمكنك قصر قائمة طرق تبادل المفاتيح المدعومة على الخوارزميات التي لها نفس حجم التجزئة فقط. على سبيل المثال، للربط بـ SHA256، يمكنك إضافة إلى التعليمات البرمجية: rc = ssh_options_set(s->ssh.session, SSH_OPTIONS_KEY_EXCHANGE, "diffie-hellman-group14-sha256,curve25519-sha256,ecdh-sha2-nistp256");

المصدر: opennet.ru

إضافة تعليق