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

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

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

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

دليل الأدوات

الفئات

عرض جميع الفئات
Loading categories
cve-2026-25994_PJSIP — PJSIP cve-2026-25994 إثبات مفهوم (PoC) لتجاوز سعة المخزن المؤقت | Kitploit
أدوات/GitHubGitHub/vabismo/cve-2026-25994_pjsip
تحليل الثغرات الأمنيةالاستغلالاستغلال تطبيقات الويبالاختبار العشوائيالتعلم والتعليماستغلال الملفات الثنائية
GitHubvabismo/cve-2026-25994_pjsip

cve-2026-25994_PJSIP

PJSIP cve-2026-25994 إثبات مفهوم (PoC) لتجاوز سعة المخزن المؤقت

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

الأكثر شعبية

عرض الكل →

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

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

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

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

CVE-2026-25994 – تجاوز سعة المخزن المؤقت للمكدس في PJNATH ICE (pjsip ≤ 2.16)

نظرة عامة

CVE-2026-25994 هو ثغرة أمنية من نوع تجاوز سعة المخزن المؤقت للمكدس تؤثر على تنفيذ ICE (Interactive Connectivity Establishment) في pjsip ≤ 2.16، وتحديدًا داخل مكوّن PJNATH.

توجد الثغرة في الدالة:

pj_ice_sess_create_check_list()

الموجودة في:

pjnath/src/pjnath/ice_session.c

تفاصيل الثغرة

تنتج المشكلة عن معالجة غير آمنة للسلاسل النصية عند إنشاء اسم مستخدم ICE:

root@kitploit:~
char buf[128];                  // Fixed-size stack buffer
username.ptr = buf;
pj_strcpy(&username, rem_ufrag);   // No bounds checking
pj_strcat2(&username, ":");
pj_strcat(&username, &ice->rx_ufrag);

السبب الجذري

يتم أخذ rem_ufrag مباشرةً من خاصية SDP:

root@kitploit:~
a=ice-ufrag:

لا يتم إجراء أي تحقق من الطول قبل النسخ إلى مخزن مؤقت للمكدس بحجم 128 بايت

وهذا يسمح للمهاجم بتجاوز سعة المكدس، مما قد يؤدي إلى استبدال:

عنوان العودة

إطار المكدس

بيانات Canary / المحاذاة

الاستغلال

يؤدي دعوة SIP خبيثة تحتوي على ice-ufrag طويل إلى تجاوز السعة

يحدث الاستغلال الموثوق مع حمولات يبلغ طولها ≥ ~130 بايت

عمليًا، توفر الحمولات التي تبلغ ~500+ بايت (مثل 520) سلوك تعطل ثابت

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

✅ المتأثرة: pjsip ≤ 2.16

❌ المُصلحة: pjsip ≥ 2.17

التصحيح

يضيف الإصلاح تحققًا مناسبًا من الحدود:

root@kitploit:~
if (rem_ufrag->slen >= MAX_USERNAME_LEN ||
    (rem_ufrag->slen + ice->rx_ufrag.slen + 1) >= 512)
{
    return PJ_ETOOBIG;
}

الأثر

رفض الخدمة (DoS) عبر خطأ تجزئة (segmentation fault) إمكانية تنفيذ التعليمات البرمجية عن بُعد (RCE) اعتمادًا على:

حمايات المكدس (ASLR، NX، canaries) تخطيط الذاكرة درجة تطور الاستغلال

1.200.000 جهاز متأثر

root@kitploit:~
Shodan link : https://www.shodan.io/search?query=pjmedia

إثبات المفهوم (PoC)

يرسل إثبات المفهوم المرفق دعوة SIP مصممة بعناية تحتوي على ice-ufrag ضخم لتشغيل تجاوز السعة.

الميزات

متزامن بالكامل (بدون asyncio) قابل للتهيئة من سطر الأوامر إعادة محاولة تلقائية حمولة SDP واقعية كشف التعطل عبر المهلة الزمنية

تشغيل الخادم المعرّض للثغرة

ابدأ تشغيل pjsua مع تفعيل ICE:

root@kitploit:~
pjsua-x86_64-unknown-linux-gnu --use-ice --local-port=5060 --log-level=5 --no-tcp --auto-answer=200

تشغيل إثبات المفهوم

root@kitploit:~
python3 pjsip.py -i <target_ip> -p 5060 -a 3
root@kitploit:~
Arguments
Option	Description	Default
-i, --ip	Target IP address	127.0.0.1
-p, --port	SIP port	5060
-a, --attempts	Number of attempts	3
Expected Behavior
Vulnerable Target
No response from server
صورة

التخفيف

قم بالترقية إلى pjsip ≥ 2.17

طبّق التحقق من صحة المدخلات لخصائص SDP

استخدم حمايات المكدس: كناري المكدس (Stack canaries) ASLR NX (مكدس غير قابل للتنفيذ)

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

يتم توفير إثبات المفهوم هذا لأغراض تعليمية وبحوث أمنية فقط.

لا تستخدم هذا الكود ضد أنظمة لا تملكها أو ليس لديك إذن صريح لاختبارها.

المؤلفون

V.Nos

فريق BinSmasher

تنزيل الأداة