Aprenda hacking AWS do zero ao herói com htARTE (HackTricks AWS Red Team Expert)!
Outras maneiras de apoiar o HackTricks:
* Se você quiser ver sua **empresa anunciada no HackTricks** ou **baixar o HackTricks em PDF** Confira os [**PLANOS DE ASSINATURA**](https://github.com/sponsors/carlospolop)!
* Adquira o [**swag oficial PEASS & HackTricks**](https://peass.creator-spring.com)
* Descubra [**A Família PEASS**](https://opensea.io/collection/the-peass-family), nossa coleção exclusiva de [**NFTs**](https://opensea.io/collection/the-peass-family)
* **Junte-se ao** 💬 [**grupo Discord**](https://discord.gg/hRep4RUj7f) ou ao [**grupo telegram**](https://t.me/peass) ou **siga-me** no **Twitter** 🐦 [**@carlospolopm**](https://twitter.com/carlospolopm)**.**
* **Compartilhe seus truques de hacking enviando PRs para os** [**HackTricks**](https://github.com/carlospolop/hacktricks) e [**HackTricks Cloud**](https://github.com/carlospolop/hacktricks-cloud) repositórios do github.
**Este é um resumo do post [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/)**
### Listando Arquivos no Media Store
Para listar arquivos gerenciados pelo Media Store, o comando abaixo pode ser usado:
```bash
$ content query --uri content://media/external/file
```
Para obter uma saída mais amigável ao usuário, exibindo apenas o identificador e o caminho de cada arquivo indexado:
```bash
$ content query --uri content://media/external/file --projection _id,_data
```
Os provedores de conteúdo estão isolados em seu próprio namespace privado. O acesso a um provedor requer o URI específico `content://`. As informações sobre os caminhos para acessar um provedor podem ser obtidas nos manifestos de aplicativos ou no código-fonte do framework do Android.
### Acesso do Chrome aos Provedores de Conteúdo
O Chrome no Android pode acessar provedores de conteúdo por meio do esquema `content://`, permitindo acessar recursos como fotos ou documentos exportados por aplicativos de terceiros. Para ilustrar isso, um arquivo pode ser inserido no Media Store e depois acessado via Chrome:
Inserir uma entrada personalizada no Media Store:
```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
```
Descubra o identificador do arquivo recém-inserido:
```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
```
O arquivo pode então ser visualizado no Chrome usando um URL construído com o identificador do arquivo.
Por exemplo, para listar arquivos relacionados a um aplicativo específico:
```bash
content query --uri content://media/external/file --projection _id,_data | grep -i
```
### Chrome CVE-2020-6516: Bypass da Política de Mesma Origem
A _Política de Mesma Origem_ (SOP) é um protocolo de segurança nos navegadores que restringe páginas da web de interagir com recursos de origens diferentes, a menos que explicitamente permitido por uma política de Compartilhamento de Recursos de Origem Cruzada (CORS). Essa política tem como objetivo evitar vazamentos de informações e falsificação de solicitações entre sites. O Chrome considera `content://` como um esquema local, implicando regras mais rígidas de SOP, onde cada URL de esquema local é tratada como uma origem separada.
No entanto, o CVE-2020-6516 foi uma vulnerabilidade no Chrome que permitia a violação das regras de SOP para recursos carregados por meio de uma URL `content://`. Na prática, o código JavaScript de uma URL `content://` poderia acessar outros recursos carregados por URLs `content://`, o que representava uma preocupação de segurança significativa, especialmente em dispositivos Android executando versões anteriores ao Android 10, onde o armazenamento com escopo não estava implementado.
O conceito de prova abaixo demonstra essa vulnerabilidade, onde um documento HTML, após ser carregado em **/sdcard** e adicionado à Media Store, usa `XMLHttpRequest` em seu JavaScript para acessar e exibir o conteúdo de outro arquivo na Media Store, contornando as regras de SOP.
HTML de Conceito de Prova:
```xml
PoC
```
Aprenda hacking AWS do zero ao herói com htARTE (HackTricks AWS Red Team Expert)!
Outras maneiras de apoiar o HackTricks:
* Se você quiser ver sua **empresa anunciada no HackTricks** ou **baixar o HackTricks em PDF** Confira os [**PLANOS DE ASSINATURA**](https://github.com/sponsors/carlospolop)!
* Adquira o [**swag oficial PEASS & HackTricks**](https://peass.creator-spring.com)
* Descubra [**A Família PEASS**](https://opensea.io/collection/the-peass-family), nossa coleção exclusiva de [**NFTs**](https://opensea.io/collection/the-peass-family)
* **Junte-se ao** 💬 [**grupo Discord**](https://discord.gg/hRep4RUj7f) ou ao [**grupo telegram**](https://t.me/peass) ou **siga-me** no **Twitter** 🐦 [**@carlospolopm**](https://twitter.com/carlospolopm)**.**
* **Compartilhe seus truques de hacking enviando PRs para os** [**HackTricks**](https://github.com/carlospolop/hacktricks) e [**HackTricks Cloud**](https://github.com/carlospolop/hacktricks-cloud) repositórios do github.