Skip to content
KitploitKITPLOIT
أدواتالمدونة
إرسال
أدواتالمدونة
إرسال

أدوات الاختراق واختبار الاختراق والأمن السيبراني لترسانتك الأمنية!

Kitploit هو دليل لأدوات الاختراق والأمن السيبراني واختبار الاختراق. اكتشف آخر تحديثات المشاريع للعثور على الثغرات وتحليل الأنظمة وأتمتة الاختبارات وتعزيز أمنك.

··الخلاصات·اتصال·الخصوصية·© 2026 Kitploit

دليل الأدوات

الفئات

عرض جميع الفئات
Loading categories
CVE-2021-44228-playground | Kitploit
أدوات/GitHubGitHub/b-abderrahmane/cve-2021-44228-playground
تحليل الثغرات الأمنيةالاستغلالاستغلال تطبيقات الويباختبار الاختراقالتعلم والتعليممختبرات وتدريب عملي
GitHubb-abderrahmane/cve-2021-44228-playground

CVE-2021-44228-playground

عرض المستودع
22منذ 24 أياملم تتم المراجعة بعد

الأكثر شعبية

عرض الكل →

اكتشف الأدوات الأكثر استخدامًا من قبل مجتمعنا.

استكشف جميع الأدوات

تصفح مجموعتنا من الأدوات

عرض جميع الأدوات →
مشاركة

LOG4SHELL-CVE-2021-44228-Validator

Basic test

Extended test

حول

تتيح لك هذه الأداة التحقق مما إذا كان تطبيق ويب Java بسيطًا عرضةً لثغرة CVE-2021-44228 وذلك بالنسبة لإصدار يقدمه المستخدم من Java وإصدار من Log4J. يمكنك أيضًا [اختياريًا] تطبيق أحد الإجراءات الوقائية المحددة مسبقًا. يستخدم مختبر المحاكاة الذي يتم تشغيله بواسطة log4shell_validator.py أداة docker-compose لمحاكاة استغلال ثغرة log4j والحصول على تنفيذ أوامر عن بُعد (RCE) على الجهاز المعرّض للثغرة.

طريقة العمل

أولًا، يجب بناء بعض صور docker. النص البرمجي ./build_images.sh يتكفل بذلك.

تتم محاكاة الهجوم بالطريقة التالية:

  • أولًا، يتم تشغيل تطبيق ويب Java بسيط داخل حاوية على المنفذ 8080. عندما يستقبل هذا التطبيق طلبات GET على /2021-44228-via-message، فإنه يسجل دائمًا حقل ترويسة User-Agent. الكود الخاص بهذا التطبيق متاح تحت ./poc_template.
  • يتم تشغيل خادم LDAP وهمي باستخدام marshalsec في حاوية منفصلة على المنفذ 1389. (تقوم هذه الحاوية بتوجيه طلبات LDAP المستلمة إلى خادم Nginx)
  • يتم تشغيل خادم ويب Nginx على المنفذ 8888، وتستضيف هذه الحاوية ملف .class المترجم الذي نريد تشغيله على تطبيقنا المعرّض للثغرة.
  • يتم تشغيل حاوية curl بسيطة، وتقوم هذه الحاوية بتشغيل النص البرمجي ./exploit.sh الذي يرسل حمولة (payload) إلى التطبيق المعرّض للثغرة.

التعليمات

  • تأكد من توفر python وdocker وdocker-compose وmaven محليًا.
  • قم ببناء ملف marshalsec jar بتشغيل الأمر: cd marshalsec/ ;mvn clean package -DskipTests ;cd -
  • شغّل ./build-images.sh
  • شغّل python log4shell_validator.py --java-version 8 --log4j-version 2.12.1

أمثلة الاستخدام

  • نص المساعدة الخاص بغلاف Python:
root@kitploit:~
~/workspace/CVE-2021-44228-playground$ python log4shell_validator.py --help
usage: log4shell_validator.py [-h] [--java-version JAVA_VERSION] --log4j-version LOG4J_VERSION [--no-cleanup] [--disable-trust-url] [--remove-jndi-lookup-class] [--disable-message-lookup] [--debug]
                              [--exploit-via-thread-context]

log4j-vulnerability-tester

optional arguments:
  -h, --help            show this help message and exit
  --java-version JAVA_VERSION
                        version of java to be used
  --log4j-version LOG4J_VERSION
                        version of log4j to be used
  --no-cleanup          Don't delete used containers.
  --disable-trust-url   Disable the LDAP trustURLCodebase setting on the victim app
  --remove-jndi-lookup-class
                        Remove the JNDI Lookup class from the log4j jar file
  --disable-message-lookup
                        Disable the JNDI message lookup in the victim app's JVM
  --debug               Display all container's logs
  --exploit-via-thread-context
                        By sending the payload to an HTTP handler which makes use of Custom logging with ThreadContext, attempt to bypass the no-message-lookup mitigation

الميزات المتاحة:

تم اختبار هذا المُتحقق (validator) مع عدة تركيبات من Java7/8 وإصدارات مختلفة من Log4J2، ولمزيد من الأمثلة يرجى الاطلاع على خط أنابيب الاختبارات الموسعة في تبويب github actions.

حاليًا، تم تنفيذ الإجراءات الوقائية التالية:

  • تعطيل trustURLCodebase لـ LDAP عبر تعيين الخاصية com.sun.jndi.ldap.object.trustURLCodebase إلى False.
  • إزالة ملف JNDILookup.class من ملف log4j jar.
  • تعطيل message lookup عبر تمرير العلم التالي إلى JVM: -Dlog4j2.formatMsgNoLookups=True

بالإضافة إلى ذلك، تمت إضافة علم جديد لاختبار ناقل استغلال يمكنه تجاوز تعطيل message lookups: --exploit-via-thread-context

إخلاء المسؤولية

تم إنشاء هذا البرنامج لأغراض البحث وتطوير تقنيات الوقاية الفعالة فقط، وليس المقصود استخدامه لمهاجمة الأنظمة إلا في الحالات المصرح بها صراحةً. القائمون على المشروع غير مسؤولين عن إساءة استخدام البرنامج. استخدمه بمسؤولية.

تنزيل الأداة