
سكربت Python 3 بسيط لاكتشاف ثغرة مكتبة Java "Log4j" (CVE-2021-44228) لقائمة من عناوين URL مع دعم تعدد الخيوط.
النص البرمجي "log4j-detect.py" المطوَّر بلغة Python 3 مسؤول عن كشف ما إذا كانت قائمة عناوين URL معرّضة للثغرة CVE-2021-44228.
للقيام بذلك، يرسل طلب GET باستخدام الخيوط (أداء أعلى) إلى كل عنوان URL في القائمة المحددة. يحتوي طلب GET على payload يعيد، عند نجاحه، طلب DNS إلى Burp Collaborator / interactsh. تُرسل هذه الـ payload في معامل اختبار وفي ترويسات "User-Agent" / "Referer" / "X-Forwarded-For" / "Authentication".
أخيرًا، إذا كان المضيف معرّضًا للثغرة، سيظهر رقم تعريف في بادئة النطاق الفرعي لـ payload الخاص بـ Burp Collaborator / interactsh وفي مخرجات النص البرمجي، مما يتيح معرفة أي مضيف استجاب عبر DNS.
تجدر الإشارة إلى أن هذا النص البرمجي يتعامل فقط مع كشف الثغرة عبر DNS ولا يختبر تنفيذ الأوامر عن بُعد.
wget https://raw.githubusercontent.com/Woahd/log4j-urlscanner/main/log4j-detect.py
python3 log4j-detect.py <urlFile> <collaboratorPayload>
