
تقرير تقني وإثبات مفهوم مصادق عليه للـ reverse-shell لـ CVE-2026-96515، وهو ثغرة تنفيذ أوامر بصلاحيات root في معالج الاستيراد التشخيصي BOA لموجّه Netlink HG323RW.
يمكن لمستخدم ويب محدود مُصادَق عليه رفع نص برمجي shell عبر معالج استيراد التشخيص في Netlink HG323RW وجعل عملية BOA ذات UID-0 تنفذه. يُشترط المصادقة وقيم التحقق/CSRF الصالحة؛ هذا المستودع لا يدّعي تنفيذ التعليمات البرمجية قبل المصادقة.
| الحقل | القيمة |
|---|---|
| CVE | CVE-2026-96515 |
| المنتج | Netlink ICT HG323RW Router |
| العتاد المتأثر | V3.7 |
| البرنامج الثابت المتأثر | 3.1.02-260228 (Netlinkver) |
| المكوّن | bin/boa |
| نقطة النهاية | /boaform/formImportOMCIShell |
| الوصول المطلوب | حساب ويب محدود مُصادَق عليه على الشبكة المجاورة/الخاصة |
| التأثير المُثبَت | محتوى shell المرفوع يُنفَّذ بصلاحيات UID 0 |
| CWE | CWE-862 (غياب التفويض)، CWE-434 (رفع غير مقيّد لملف من نوع خطير) |
| CVSS | 8.6 مرتفع — CVSS:4.0/AV:A/AC:L/AT:N/PR:L/UI:N/VC:H/VI:H/VA:H/SC:N/SI:N/SA:N |
| البرنامج الثابت المُصلَّح | 3.1.02-260904 (أبلغت عنه CERT-In وتم فحصه بشكل مستقل؛ أكّد التحقق أثناء التشغيل أن /boaform/formImportOMCIShell و /boaform/admin/formImportOMCIShell كلاهما يُرجع HTTP 404) |
| المُبلِّغ | Muhammed Safvan |
نشرت CERT-In السجل في 24 سبتمبر 2026 كاستشارة CIVN-2026-0473. تُدرج Netlink تنزيلات البرنامج الثابت على صفحة البرنامج الثابت.
يُهيَّأ الحساب المحدود الافتراضي من المصنع في /etc/config_default.xml، وتُنشئ BOA ملف /var/boaUser.passwd من قيم MIB المُهيَّأة أثناء بدء التشغيل. بعد المصادقة كمستخدم محدود، يمكن لطلب ما إرسال حقل multipart باسم binary إلى formImportOMCIShell. تُحدِّد الأدلة المستخرجة من bin/boa المُقيَّم الوجهة /tmp/omcishell ومصدر التنفيذ /bin/sh /tmp/omcishell.
يسجّل النص المرفق للجهاز المُصرَّح به shell بقيم صفرية لمعرّفات UID/GID الحقيقية والفعلية والمحفوظة ونظام الملفات. لم يكن كود C المصدر وسجل الإصدارات متاحين، لذا فإن ادعاءات الإصدارات المتأثرة محصورة عمداً على الصورة المُقيَّمة. كلا الأرشيفين — المُقيَّم والمُرقَّع المُدرَج في CNA — محفوظان تحت firmware/؛ تم التحقق من بنيتهما وإصداراتهما المضمّنة ومجاميع التحقق الخاصة بهما، لكن لم يُعَد تشغيل اختبار انحدار الاستغلال أثناء خطوة التغليف هذه.
اقرأ REPORT.md للحصول على التحليل الكامل والمتطلبات المسبقة وقيود الأدلة وإرشادات المعالجة.
REPORT.md — تقرير تقني مكتفٍ ذاتياً.poc/ — إثبات مفهوم reverse-shell مُصادَق عليه على الشبكة المحلية الخاصة وملاحظات الاستخدام.analysis/ — ملاحظات تحليل ثابت مُنقّاة لتهيئة الحساب والتوجيه وسلوك الأدوار.binary/ — تعريف ضيّق لـ BOA وسلاسل نصية وأدلة تجزئة مستخرجة من الصورة المُقيَّمة.firmware/ — أرشيفات البرنامج الثابت الكاملة للمورّد (المتأثرة والمُرقَّعة) والتجزئات وتحذيرات الترقية.runtime/ — بيانات وصفية مُنقّاة للبرنامج الثابت ومصدر إثبات وقت التشغيل المُقدَّم.hashes/ — ملخصات القطع الأثرية المصدرية ونتائج التحقق.MANIFEST-SHA256.txt — ملخص لكل ملف آخر متتبَّع في المستودع.يُوزَّع أرشيفا البرنامج الثابت الكاملان دون أشجار عمل مستخرجة. لا تُضمَّن أي جلسة نشطة أو رمز CSRF أو معرّف جهاز أو بيانات عملاء أو كلمة مرور مُشفَّرة مُصدَّرة بشكل منفصل أو بيانات اعتماد غير عامة. تُناقَش زوج بيانات الاعتماد الافتراضي من المصنع لأنه جوهري للإعداد المتأثر. تظل إعادة توزيع البرنامج الثابت واستخدامه خاضعة لشروط المورّد.
يرفع إثبات المفهوم العام حِمل reverse-shell ثابتاً قائماً على FIFO ويوفّر مستمعاً تفاعلياً، بحيث تُنفَّذ الأوامر المُدخَلة بعد الاتصال على الراوتر. يرفض عناوين الهدف والاستدعاء العامة، ويطلب كلمة المرور افتراضياً، ويتطلب تأكيداً صريحاً بـ EXECUTE ما لم يوفّر المشغّل تجاوز الأتمتة الموثّق. تم فحصه نحوياً لكن لم يُنفَّذ أثناء تحديث المستودع هذا. استخدمه فقط على جهاز تملكه أو مُصرَّح لك صراحةً باختباره.
تم الاحتفاظ بمقطع فيديو توضيحي قدّمه المالك خارج هذا المستودع العام لأنه يُظهر مساراً محلياً خاصاً بجهاز المُؤلِّف وسياق سطح المكتب. يتضمّن المستودع الآن كود مصدر إثبات مفهوم reverse-shell المقابل؛ ويُحفظ تجزئة التسجيل وملخص ملاحظات متحفظ في runtime/video-observation.txt.