
معلومات واستغلال لثغرة CVE-2023-29930: قراءة/كتابة ملفات عمياء في إعدادات خادم توفير Genesys TFTP
هذا سكربت استغلال لثغرة قراءة/كتابة ملفات عمياء في خادم توفير TFTP من Genesys (المعروف سابقًا باسم InIn).
تعود هذه الثغرة إلى خيارات إعداد غير مقيدة لمسار جذر TFTP وامتدادات الملفات. بعبارة أخرى، من خلال واجهة الإدارة، يمكنك تغيير مسار TFTP إلى أي دليل على الإطلاق ورفع أو تنزيل أي ملفات تريدها.
(لاحظ مع ذلك أن TFTP كبروتوكول لا يسمح بسرد الملفات، وهذا ما يجعل هذه الثغرة قراءة ملفات عمياء.)
ويتفاقم هذا بشكل خاص بسبب أن الخادم يستخدم افتراضيًا بيانات اعتماد معروفة ومثبتة في الكود ولا يُجبر المستخدم على تغييرها.
من حيث التصنيف، تحمل جوانب من تصنيفات CWE التالية:
جميع الإصدارات المعروفة حتى الآن معرضة للخطر.
أفضل تخفيف في الوقت الحالي هو ببساطة تحديث بيانات اعتماد المسؤول الخاصة بخادم إعداد TFTP.
أنصح باستخدام هذا مع دفتر Jupyer أو حلقة REPL الخاصة بـ Python، أو في حالات الاستخدام الأكثر تقدمًا، كتابة سكربت خاص بك واستيراد هذا الملف.
فقط قم باستيراد ملف بايثون الرئيسي، وأنشئ كائنًا من الصنف، واستدعِ get_file و put_file كما تشاء.
$ python3
>>> from tftplunder import TFTPlunder
>>> tp=TFTPlunder("example.com")
>>> tp.get_file("C:/Windows/Panther/Unattended.xml")
>>> tp.get_file("C:/ProgramData/ntuser.pol")
إلخ.
تلميح: راجع https://github.com/jtpereyda/regpol للمساعدة في فك ترميز ntuser.pol
وانظر إلى قوائم مثل https://github.com/soffensive/windowsblindread/blob/master/windows-files.txt للحصول على أمثلة لملفات أخرى يمكن تجربتها.