
استغلال تجريبي لثغرة CVE-2021-44026، وهي حقن SQL في Roundcube
يحتوي هذا المستودع على استغلال تجريبي لثغرة حقن SQL في Roundcube.
إخلاء مسؤولية:
هذا الكود مخصص لأغراض تعليمية فقط ولمساعدة فرق الأمن في تحديد الثغرات في نسخ Roundcube الخاصة بهم. يجب استخدامه فقط في عمليات الاختراق الأخلاقي التي يمتلك فيها مختص الأمن إذنًا كتابيًا لاستغلال الهدف(الأهداف) المضمنة في النطاق بشكل أخلاقي. المؤلفون غير مسؤولين عن أي إساءة استخدام أو استخدام غير قانوني لكود الاستغلال هذا.
usage: exploit.py [-h] smtp_server smtp_port sender_email sender_password target_email c2_server
Roundcube CVE-2020-35730 & CVE-2021-44026 exploit
positional arguments:
smtp_server Sender SMTP server name
smtp_port Sender SMTP server port
sender_email Sender email address
sender_password Sender email password for logging into the SMTP server
target_email Target email address
c2_server The URL on which the C2 server will listen
optional arguments:
-h, --help show this help message and exit
عند تشغيله، يبدأ الكود خادم Flask، وهو c2_server في الكود، والذي يقوم بالاستغلال في خطوتين:
يرسل بريدًا إلكترونيًا إلى هدف من عنوان مرسل معين. يحتوي هذا البريد على استغلال لثغرة أخرى في Roundcube، وهي ثغرة XSS تُعرف باسم CVE-2020-35730. نستخدمها لإرسال الطلبات اللازمة لحقن SQL من جلسة مصادق عليها. جميع كود JavaScript الذي يعمل على جانب العميل موجود في static/fetcher.js
يستخرج كود JavaScript جميع الجلسات من قاعدة البيانات ويرسلها مرة أخرى إلى خادم C2 بصيغة VCARD. على جانب الخادم، يتم استخراج متغيرات الجلسة من VCARD. لكل جلسة مصادق عليها، يستخرج الكود أحدث رسائل البريد الإلكتروني المستلمة.
ملاحظة: يمكنك استخدام حساب Gmail كبريد إلكتروني للمرسل. استخدم stmp.gmail.com للخادم و587 للمنفذ. قم بإعداد كلمة مرور لهذا الاستخدام فقط باتباع الدليل هنا.