content:// protocol
Last updated
Last updated
Lernen & üben Sie AWS Hacking:HackTricks Training AWS Red Team Expert (ARTE) Lernen & üben Sie GCP Hacking: HackTricks Training GCP Red Team Expert (GRTE)
Dies ist eine Zusammenfassung des Beitrags https://census-labs.com/news/2021/04/14/whatsapp-mitd-remote-exploitation-CVE-2021-24027/
Um Dateien aufzulisten, die vom Media Store verwaltet werden, kann der folgende Befehl verwendet werden:
Für eine benutzerfreundlichere Ausgabe, die nur die Kennung und den Pfad jeder indizierten Datei anzeigt:
Content-Provider sind in ihrem eigenen privaten Namensraum isoliert. Der Zugriff auf einen Provider erfordert die spezifische content://
URI. Informationen über die Pfade zum Zugriff auf einen Provider können aus Anwendungsmanifests oder dem Quellcode des Android-Frameworks gewonnen werden.
Chrome auf Android kann über das content://
-Schema auf Content-Provider zugreifen, was ihm ermöglicht, auf Ressourcen wie Fotos oder Dokumente zuzugreifen, die von Drittanbieteranwendungen exportiert wurden. Um dies zu veranschaulichen, kann eine Datei in den Media Store eingefügt und dann über Chrome darauf zugegriffen werden:
Fügen Sie einen benutzerdefinierten Eintrag in den Media Store ein:
Entdecken Sie die Kennung der neu eingefügten Datei:
Die Datei kann dann in Chrome über eine URL angezeigt werden, die mit der Kennung der Datei erstellt wurde.
Zum Beispiel, um Dateien aufzulisten, die mit einer bestimmten Anwendung verbunden sind:
Die Same Origin Policy (SOP) ist ein Sicherheitsprotokoll in Browsern, das Webseiten daran hindert, mit Ressourcen von anderen Ursprüngen zu interagieren, es sei denn, dies wird ausdrücklich durch eine Cross-Origin-Resource-Sharing (CORS)-Richtlinie erlaubt. Diese Richtlinie zielt darauf ab, Informationslecks und Cross-Site-Request-Forgery zu verhindern. Chrome betrachtet content://
als ein lokales Schema, was strengere SOP-Regeln impliziert, bei denen jede lokale Schema-URL als separater Ursprung behandelt wird.
CVE-2020-6516 war jedoch eine Schwachstelle in Chrome, die einen Umgehung der SOP-Regeln für Ressourcen ermöglichte, die über eine content://
-URL geladen wurden. In der Folge konnte JavaScript-Code von einer content://
-URL auf andere Ressourcen zugreifen, die über content://
-URLs geladen wurden, was ein erhebliches Sicherheitsproblem darstellte, insbesondere auf Android-Geräten, die Versionen vor Android 10 verwendeten, wo Scoped Storage nicht implementiert war.
Der nachfolgende Proof-of-Concept demonstriert diese Schwachstelle, bei der ein HTML-Dokument, nachdem es unter /sdcard hochgeladen und zum Media Store hinzugefügt wurde, XMLHttpRequest
in seinem JavaScript verwendet, um auf den Inhalt einer anderen Datei im Media Store zuzugreifen und diesen anzuzeigen, wodurch die SOP-Regeln umgangen werden.
Proof-of-Concept HTML:
Lerne & übe AWS Hacking:HackTricks Training AWS Red Team Expert (ARTE) Lerne & übe GCP Hacking: HackTricks Training GCP Red Team Expert (GRTE)