
نص برمجي بلغة بايثون لاكتشاف ثغرة CVE-2026-24061 في telnetd عبر حقن NEW-ENVIRON، مع تقديم تقييم للمخاطر وإرشادات للتخفيف من الأثر.
أداة اختبار أمني بلغة Python للكشف عن قابلية التعرض لحقن متغيرات البيئة في خوادم telnetd عبر خيار telnet NEW-ENVIRON.
يختبر هذا السكربت خوادم telnetd للكشف عن CVE-2026-24061، وهي ثغرة أمنية تسمح للمهاجمين بحقن متغيرات البيئة عبر خيار telnet NEW-ENVIRON. إذا قام الخادم بمعالجة متغيرات البيئة هذه بشكل غير صحيح، فقد يكون عرضة لهجمات حقن الأوامر أو تجاوز المصادقة.
يوفر السكربت مخرجات مفصّلة وملوّنة مع تقدم خطوة بخطوة، ومعالجة شاملة للأخطاء، وملخصًا نهائيًا يتضمن نتيجة الاختبار، وتقييم المخاطر، وتحليل التأثير.
CVE-2026-24061 هي ثغرة أمنية في خوادم telnetd تتعامل بشكل غير صحيح مع متغيرات البيئة المرسلة عبر خيار telnet NEW-ENVIRON (RFC 1572).
تحدث الثغرة عندما تقوم خوادم telnetd بـ:
يسمح خيار NEW-ENVIRON (RFC 1572) لعملاء telnet بإرسال متغيرات البيئة إلى الخادم. قد يقبل الخادم الضعيف هذه المتغيرات ويعالجها دون تعقيم، مما قد يسمح للمهاجم بحقن قيم خبيثة قد تؤدي إلى تنفيذ أوامر أو تجاوز المصادقة.
لا يتطلب التثبيت. السكربت مستقل ويستخدم فقط وحدات مكتبة Python القياسية.
لينكس (Ubuntu/Debian):
sudo apt-get update
sudo apt-get install python3
macOS (باستخدام Homebrew):
# تثبيت Homebrew إذا لم يكن مثبتًا بالفعل
/bin/bash -c "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/HEAD/install.sh)"
# تثبيت Python 3
brew install python3
# التحقق من التثبيت
python3 --version
ويندوز:
python --version
أو باستخدام PowerShell:
python --version
لينكس/macOS:
./telnetd_CVE‑2026‑24061_test.py <host> [port]
ويندوز (موجه الأوامر):
python telnetd_CVE‑2026‑24061_test.py <host> [port]
ويندوز (PowerShell):
python telnetd_CVE‑2026‑24061_test.py <host> [port]
لينكس/macOS:
# اختبار منفذ telnet الافتراضي (23)
./telnetd_CVE‑2026‑24061_test.py 10.0.2.134
# اختبار منفذ مخصص
./telnetd_CVE‑2026‑24061_test.py 10.0.2.134 2323
# جعل السكربت قابلًا للتنفيذ (إذا لزم الأمر)
chmod +x telnetd_CVE‑2026‑24061_test.py
# أو تشغيله مباشرة مع python3
python3 telnetd_CVE‑2026‑24061_test.py 10.0.2.134 2323
ويندوز (موجه الأوامر):
REM اختبار منفذ telnet الافتراضي (23)
python telnetd_CVE‑2026‑24061_test.py 10.0.2.134
REM اختبار منفذ مخصص
python telnetd_CVE‑2026‑24061_test.py 10.0.2.134 2323
ويندوز (PowerShell):
# اختبار منفذ telnet الافتراضي (23)
python telnetd_CVE‑2026‑24061_test.py 10.0.2.134
# اختبار منفذ مخصص
python telnetd_CVE‑2026‑24061_test.py 10.0.2.134 2323
macOS (Python عبر Homebrew):
# إذا كنت تستخدم Python المثبت عبر Homebrew، استخدم python3 صراحةً
python3 telnetd_CVE‑2026‑24061_test.py 10.0.2.134
# أو اجعله قابلًا للتنفيذ وشغّله مباشرة
chmod +x telnetd_CVE‑2026‑24061_test.py
./telnetd_CVE‑2026‑24061_test.py 10.0.2.134 2323
NO_COLORيوفر السكربت أربع نتائج محتملة:
[-] NEW-ENVIRON not accepted
[RESULT] NOT IMPACTED
المعنى: لا يدعم الخادم أو لا يقبل خيار NEW-ENVIRON. الخادم غير عرضة لهذا الناقل المحدد للهجوم.
معلومات الملخص:
الإجراء المطلوب:
[!] ENV accepted by server
[RESULT] LIKELY IMPACTED (CVE-2026-24061)
المعنى: قبل الخادم خيار NEW-ENVIRON ويبدو أنه عالج متغير البيئة المحقون. من المحتمل أن يكون الخادم عرضة لـ CVE-2026-24061.
معلومات الملخص:
الإجراء المطلوب:
[+] No response to ENV injection
[RESULT] INCONCLUSIVE
المعنى: قبل الخادم NEW-ENVIRON لكنه لم يقدم استجابة واضحة. يُوصى بالتحقق اليدوي.
معلومات الملخص:
الإجراء المطلوب:
[RESULT] TEST FAILED - Communication Error
المعنى: تعذر إكمال الاختبار بسبب خطأ في الاتصال.
معلومات الملخص:
الإجراء المطلوب:
IAC DO NEW_ENVIRON لطلب خيار NEW-ENVIRONIAC WILL NEW_ENVIRON)USER=-f root عبر NEW-ENVIRON-f هي تقنية شائعة لتجاوز تسجيل الدخوليستخدم السكربت قيم بايت بروتوكول telnet القياسية:
IAC (255): تفسير كأمر (Interpret As Command)DO (253): طلب تمكين الخيارWILL (251): الموافقة على تمكين الخيارSB (250): بدء التفاوض الفرعيSE (240): نهاية التفاوض الفرعيNEW_ENVIRON (39): رقم خيار NEW-ENVIRON (RFC 1572)تتبع حمولة الحقن تنسيق RFC 1572:
IAC SB NEW_ENVIRON IS VAR USER <0x01>-f root IAC SE