
أداة إثبات مفهوم بلغة Python للثغرة CVE-2026-100740، وهي كتابة خارج الحدود في حقل L2TP Host Name AVP ضمن tunnel_set_params في جهاز D-Link DIR-895L A1_102b07. تقوم ببصمة الجهاز واختياريًا بإرسال محفّز UDP 1701 مخصص للمختبر فقط.
إثبات مفهوم بلغة Python 3 لـ CVE-2026-100740 — D-Link DIR-895L إصدار البرنامج الثابت A1_102b07.
CVE-2026-100740 — كتابة خارج الحدود (CWE-787 / CWE-119) في tunnel_set_params() (tunnel.c)، محلل قناة تحكم L2TP. يتم تقييد طول Host Name AVP إلى 127 لكن يتم كتابة مُنهي NUL عند peer_hostname[len+1] على مخزن بحجم 128 بايت → تلف في الذاكرة بمقدار بايت واحد (والبايتات المجاورة). الهجوم عن بُعد عبر UDP 1701 عندما يشارك الجهاز في L2TP (غالبًا عميل WAN إلى خادم L2TP الخاص بمزود الخدمة؛ نظير خبيث أو منتحل). المتأثر: DIR-895L A1_102b07 فقط (وفق VulDB). تمت الإشارة إلى استغلال عام؛ لا يوجد إصلاح من المورد مُدرج في NVD عند النشر.
البحث: Notion — DIR-895L L2TP Host Name AVP (نفس فئة الثغرة كما في تحليل DIR-822A).
صفحة PoC: https://pocbit.org/pocs/cve-2026-100740
الفهرس: https://pocbit.org/pocs/
| المورد / الطراز | D-Link DIR-895L |
| البرنامج الثابت | A1_102b07 |
| المكوّن | محلل تحكم L2TP / tunnel.c |
| المتجه | Host Name AVP مُصمَّم (الطول 127) |
| المنفذ | UDP 1701 |
| CVSS 4.0 | VulDB PR:L، شبكة، تأثير عالٍ |
يقوم هذا الـ PoC بـبصمة الراوتر (HTTP)، وفحص UDP 1701، واختياريًا إرسال مُحفِّز SCCRQ للمختبر فقط (--oob-send). لا يتضمن سلسلة RCE كاملة.
pip install -r requirements.txt
python poc.py -u 192.168.0.1 --mode check
python poc.py -u 192.168.0.1 --mode check --l2tp-probe
python poc.py -u 192.168.0.1 --mode exploit --oob-send
python poc.py --list targets.example.txt --mode check -j 20
CVE-2026-100740 PoC: D-Link DIR-895L A1_102b07 L2TP Host Name AVP out-of-bounds write (tunnel_set_params). Detects device, UDP 1701, optional OOB trigger packet. PoCbit
CVE-2026-100740: DIR-895L A1_102b07 L2TP parser’da Host Name AVP ile OOB write; uzaktan UDP 1701. PoC: tespit + lab’de --oob-send.
للاختبار المصرح به فقط. قد يؤدي --oob-send إلى تعطل الراوتر.