كيف وغالبا ما يأتي ينرر القديم الجيد لمساعدتنا! من وقت لآخر ، قام بتفريغ محفوظاتنا بعناية وبدون أنانية ، ثم قام بإعادة حزمها. لكن تقدمنا في السن ، والآن أريد تجربة شيء أكثر إثارة للاهتمام ، أليس كذلك؟ وبعد ذلك فقط عثروا على ثغرة أمنية تبلغ من العمر 19 عامًا تتيح حفظ البرامج الضارة المستخرجة من الأرشيف إلى موقع تعسفي. دعونا نرى كيف يمكن القيام بذلك ، وذلك باستخدام مثال المهمة رقم 9 من
المرحلة الإلكترونية لـ NeoQUEST-2019 .
وفقا للأسطورة ، لدينا اثنين من الخوادم. يسمح لك الخادم الأول (http://213.170.100.213:800/) بإرسال هدية إلى Pandora ، التي تحب تفريغ جميع الكائنات غير المحددة التي لفتت انتباهها. تنسيق "الهدية" معروف: يقوم الخادم بتنزيل أرشيفات rar فقط. قم بتنزيل أرشيف rar التعسفي. استجابة لذلك ، نرى ما يلي:
ليس من المرجح أن يكون Pandora مهتمًا بأرشيفنا. دعونا نحاول معرفة المزيد حول الخادم باستخدام nmap:
الآن نعلم أن الخادم الأول:
- يسمح لتحميل المحفوظات رر.
- التي أثيرت على ويندوز.
وين + رر = ينرر! من المحتمل أن تتم معالجة الأرشيفات بواسطة هذا الأرشيف ، حيث اكتشفوا (بدقة أكبر - في مكتبة UNACEV2.DLL) ثغرة أمنية موجودة منذ 19 عامًا. تسمح لك هذه "الحفرة" بفك ضغط محتويات الأرشيف في دليل تعسفي ، بغض النظر عن مكان استخراج الملفات من المستخدم. نجد وصفا مفصلا لآلية استغلال الضعف
هنا . ننتقل إلى إنتاج الأرشيف ، الذي
يمشي بمفرده ويقرر بنفسه مكان تفريغه.
بادئ ذي بدء ، احصل على الأداة المساعدة WinAceArchiver. وفقًا للتعليمات الواردة على الرابط أعلاه ، نقوم بإنشاء أرشيف بدائي يحتوي على ملف hello.txt. في WinAceArchiver ، انقر فوق الزر "إنشاء" ، ضمن علامة التبويب "خيارات" ، قم بتعيين "الضغط على المتجر" ، ثم عد إلى علامة التبويب "تحديد" ، وحدد ملف hello.txt ، وحدد المسار لحفظ الأرشيف ، والأهم من ذلك! - اضبط خيار "تخزين المسار الكامل":
بعد ذلك ، انقر فوق الزر "إضافة" واحصل على أرشيف Hello.ace. يبقى لضبط المسار قليلا وتصحيح المجموع الاختباري.
سيساعدنا أي محرر ثنائي و
acefile.py في هذا الأمر ، مما يساعدك على حساب القيم الفعلية بمفرده.
لاستغلال مشكلة عدم الحصانة ، يجب إضافة تسمية وحدة تخزين قبل المسار المطلق للملف ، والذي سيتم إسقاطه بواسطة الأرشيف. ثم سيتم أخذ بقية المسار كأقارب "آمن". لذلك ، افتح المحرر وقم بتعديل المسار بحيث يبدأ بـ
C: \ C: \ .
كان:
أصبح:
تحقق الآن من المجموع الاختباري باستخدام البرنامج النصي acefile.py:
صحح القيمة الحالية:
يبقى فقط إعادة تسمية أرشيفنا إلى Hello.rar. القيام به. تحقق كيف باندور مثل هذه الهدية؟
! ممتاز تزامنت التوقعات مع الواقع ، وعالج WinRar الأرشيف تمامًا كما نحتاج. يبقى لمعرفة شيء واحد: أي طريق نحتاج؟
وفقًا للأسطورة ، نعلم أنه يمكن "عرض" الكنوز على الخادم الثاني (http://213.170.100.213:900/). كيف يكون هذا أسهل للقيام به؟ بالطبع ، عن طريق تشغيل البرنامج النصي php الخاص بك ، والذي سينتج ، على سبيل المثال ، سرد دليل خادم الجذر. نؤكد تخميننا:
رائع ، الخادم جاهز لتنفيذ برنامج php الخاص بنا! حان الوقت لمعرفة مكان وضع هذا البرنامج النصي بالضبط. نحن نعرف حتى الآن أن الخادم يعمل على نظام التشغيل Windows - لذلك ، على الأرجح ، يبدأ المسار بـ
C: \ . وبعد ذلك؟ تعلم المزيد حول خادم الكنز.
على الخادم يتم رفع إنجن إكس. من المؤكد أن بيئة باندورا تتبع الكلمة الأخيرة للتقدم التكنولوجي (في كل ما لا يتعلق بالمحفوظين) وتستخدم أحدث إصدار من nginx ، وهو 1.15.9 (يمكنك التحقق
هنا ). يبقى لإضافة الدليل الجذر للخادم المحدد في ملف تكوين nginx الافتراضي:
والنتيجة هي كما يلي:
C: \ nginx-1.15.9 \ html . ما سوف باندورا الإجابة هذه المرة؟
الوصول إلى الدليل محظور ... لكن لا يمكن أن نخطئ! نحن بالتأكيد على الطريق الصحيح ، حيث تم رفض الوصول ، لكن الدليل موجود. ربما هناك شيء لا نعرفه بعد. نواصل جمع المعلومات حول الخادم باستخدام ماسح الدليل:
نعم ، هناك. يبدو المشرف / الدليل واعداً. دعونا نحاول إرسال Pandore إلى أرشيف الآس ، حيث يعمل
C: \ nginx-1.15.9 \ html \ admin كمسار مطلق:
النجاح! أخيرًا ، ننفذ البرنامج النصي الخاص بنا والذي يتم فيه سرد دليل جذر الخادم:
213.170.100.213 : 800 / admin / test34852ED2-8996-4F81-A919-30B6FE9F03AB.php . قد يبدو البرنامج النصي مثل هذا:
<?php if ($handle = opendir('C:\nginx-1.15.9\html')) { while (false !== ($entry = readdir($handle))) { if ($entry != "." && $entry != "..") { echo "$entry <br>"; } } closedir($handle); } ?>
والنتيجة هي كما يلي:
وجدتها! Pandorica! وبالمثل ، دعونا نرى أي نوع من "الكنز"
pandorica / محفوف
بالمشاهدة key.txt الذي طال انتظاره ، والذي لم يعد من
الصعب قراءته. القيام به!
في المستقبل القريب ، سيتم نشر المقالات مع تحليل المهام العديدة المتبقية. وقريبا سيعقد NeoQUEST 2019! كل الأخبار - على
موقع الحدث ، لا تفوت!