
Android版ES File ExplorerにおけるCVE-2019-6447のための技術的分析と安全性を考慮した研究用ハーネス
CVE-2019-6447 に対して独立に実装された、安全性に配慮した研究用ハーネスと技術分析です。これは、Android 版 ES File Explorer の脆弱なバージョンが公開する認証なしHTTPサービスを対象としています。
許可された研究のみに使用してください。 このプロジェクトは、自分が所有するデバイス、またはテストの明示的な許可を得たデバイスに対してのみ使用してください。CLI はデフォルトで非侵襲的なTCPプローブを実行します。デバイスデータやファイルを要求する操作には、明示的なラボ認証フラグが必要です。
| プロパティ | 値 |
|---|---|
| 影響を受ける製品 | Android 版 ES File Explorer ファイルマネージャー |
| 影響を受けるバージョン | 4.1.9.7.4 およびそれ以前 |
| 公開されるサービス | TCP/59777 上の認証なしHTTPサーバー |
| 攻撃の前提条件 | Android デバイスへのネットワーク隣接性 |
| 影響 | デバイス/アプリの列挙、任意ファイル読み取り、アプリケーション起動 |
| 根本的な脆弱性 | CWE-306 — 重要な機能に対する認証の欠如 |
| NVD 深刻度 | CVSS 3.1: 8.1 High (AV:A/AC:L/PR:N/UI:N/S:U/C:H/I:H/A:N) |
アプリケーションが起動されると、組み込みサービスはローカルWi-Fiネットワーク上で到達可能なままになる可能性があります。このサービスは、呼び出し元を認証せずにJSONコマンドを受け入れます。これにより、アプリ内部の管理インターフェースがネットワークからアクセス可能な攻撃対象領域に変わります。
flowchart LR
A["Adjacent-network attacker"] -->|"HTTP POST / TCP 59777"| B["Embedded ES HTTP service"]
B --> C["Command dispatcher"]
C --> D["Device and app metadata"]
C --> E["Shared-storage files"]
C --> F["Android app launch"]完全な分析は docs/technical-analysis.md を参照してください。
git clone https://github.com/acloudinthebluesky/CVE-2019-6447-ES-File-Explorer.git
cd CVE-2019-6447-ES-File-Explorer
python3 -m venv .venv
source .venv/bin/activate
python -m pip install -e .
esfile-6447 probe --target 192.168.56.10
これはTCPポート59777への接続を試みるだけです。ポートが開いていること自体は、対象が脆弱であることの証明にはなりません。
esfile-6447 command \
--target 192.168.56.10 \
--name getDeviceInfo \
--i-understand-this-is-an-authorized-lab
esfile-6447 pull \
--target 192.168.56.10 \
--remote-path /sdcard/lab-marker.txt \
--output ./evidence/lab-marker.txt \
--i-understand-this-is-an-authorized-lab
合成ファイルのみを使用してください。影響の証明として個人データを収集しないでください。
防御側は、TCP/59777 上の予期しないリスナーや、JSON command フィールドを含むHTTPリクエストを探すことができます。ネットワーク制御で露出を減らすことは可能ですが、永続的な修正は脆弱なアプリケーションを削除またはアップグレードすることです。組み込み管理サービスは、リモートアクセスが不可欠でない限りループバックにバインドし、すべてのリクエストを認証し、各操作を許可し、不要になったら終了する必要があります。
python -m unittest discover -s tests -v
テストはループバック専用のモックHTTPサーバーを起動します。外部ホストには接続しません。
このプロジェクトは、防御的な検証、教育、および許可された脆弱性研究を目的としています。サブネットスキャンを意図的に省略し、デフォルトは接続性のみのプローブです。許可なくデバイスにアクセスすると、ファイルを保持していなくても法律やポリシーに違反する可能性があります。
脆弱性の発見と最初の公開概念実証は、上記の研究者に帰属します。このリポジトリの実装は、独立した教育目的の再実装です。