content:// protocol
Last updated
Last updated
Learn & practice AWS Hacking:HackTricks Training AWS Red Team Expert (ARTE) Learn & practice GCP Hacking: HackTricks Training GCP Red Team Expert (GRTE)
これは投稿の要約です https://census-labs.com/news/2021/04/14/whatsapp-mitd-remote-exploitation-CVE-2021-24027/
メディアストアによって管理されているファイルをリストするには、以下のコマンドを使用できます:
人間に優しい出力のために、各インデックスファイルの識別子とパスのみを表示します:
コンテンツプロバイダーは、それぞれのプライベートネームスペースに隔離されています。プロバイダーへのアクセスには、特定の content://
URI が必要です。プロバイダーにアクセスするためのパスに関する情報は、アプリケーションマニフェストやAndroidフレームワークのソースコードから取得できます。
AndroidのChromeは、content://
スキームを通じてコンテンツプロバイダーにアクセスでき、サードパーティアプリケーションによってエクスポートされた写真やドキュメントなどのリソースにアクセスできます。これを示すために、ファイルをメディアストアに挿入し、その後Chromeを介してアクセスできます:
メディアストアにカスタムエントリを挿入する:
新しく挿入されたファイルの識別子を発見する:
ファイルは、ファイルの識別子を使用して構築されたURLでChromeで表示できます。
たとえば、特定のアプリケーションに関連するファイルをリストするには:
同一オリジンポリシー (SOP) は、ブラウザにおけるセキュリティプロトコルであり、明示的にクロスオリジンリソースシェアリング (CORS) ポリシーによって許可されない限り、ウェブページが異なるオリジンのリソースと相互作用することを制限します。このポリシーは、情報漏洩やクロスサイトリクエストフォージェリを防ぐことを目的としています。Chromeは content://
をローカルスキームと見なし、各ローカルスキームURLを別々のオリジンとして扱う厳格なSOPルールを適用します。
しかし、CVE-2020-6516は、content://
URLを介して読み込まれたリソースに対するSOPルールのバイパスを可能にするChromeの脆弱性でした。実際、content://
URLからのJavaScriptコードは、他のcontent://
URLを介して読み込まれたリソースにアクセスでき、特にAndroid 10以前のバージョンでスコープストレージが実装されていないAndroidデバイスにおいては、重大なセキュリティ上の懸念がありました。
以下の概念実証は、この脆弱性を示しており、/sdcardの下にアップロードされ、メディアストアに追加されたHTMLドキュメントが、JavaScript内のXMLHttpRequest
を使用してメディアストア内の別のファイルの内容にアクセスし表示し、SOPルールをバイパスする様子を示しています。
Proof-of-Concept HTML:
AWSハッキングを学び、実践する:HackTricks Training AWS Red Team Expert (ARTE) GCPハッキングを学び、実践する:HackTricks Training GCP Red Team Expert (GRTE)