hacktricks/mobile-pentesting/android-checklist.md
2024-12-12 13:56:11 +01:00

97 lines
7.3 KiB
Markdown

# Android APK Checklist
{% hint style="success" %}
Aprenda e pratique Hacking AWS:<img src="/.gitbook/assets/arte.png" alt="" data-size="line">[**HackTricks Training AWS Red Team Expert (ARTE)**](https://training.hacktricks.xyz/courses/arte)<img src="/.gitbook/assets/arte.png" alt="" data-size="line">\
Aprenda e pratique Hacking GCP: <img src="/.gitbook/assets/grte.png" alt="" data-size="line">[**HackTricks Training GCP Red Team Expert (GRTE)**<img src="/.gitbook/assets/grte.png" alt="" data-size="line">](https://training.hacktricks.xyz/courses/grte)
<details>
<summary>Support HackTricks</summary>
* Confira os [**planos de assinatura**](https://github.com/sponsors/carlospolop)!
* **Junte-se ao** 💬 [**grupo do Discord**](https://discord.gg/hRep4RUj7f) ou ao [**grupo do telegram**](https://t.me/peass) ou **siga**-nos no **Twitter** 🐦 [**@hacktricks\_live**](https://twitter.com/hacktricks\_live)**.**
* **Compartilhe truques de hacking enviando PRs para o** [**HackTricks**](https://github.com/carlospolop/hacktricks) e [**HackTricks Cloud**](https://github.com/carlospolop/hacktricks-cloud) repositórios do github.
</details>
{% endhint %}
<figure><img src="/.gitbook/assets/image (2).png" alt=""><figcaption></figcaption></figure>
Aprofunde sua experiência em **Segurança Móvel** com a 8kSec Academy. Domine a segurança de iOS e Android através de nossos cursos autônomos e obtenha certificação:
{% embed url="https://academy.8ksec.io/" %}
### [Aprenda os fundamentos do Android](android-app-pentesting/#2-android-application-fundamentals)
* [ ] [Conceitos básicos](android-app-pentesting/#fundamentals-review)
* [ ] [Dalvik & Smali](android-app-pentesting/#dalvik--smali)
* [ ] [Pontos de entrada](android-app-pentesting/#application-entry-points)
* [ ] [Atividades](android-app-pentesting/#launcher-activity)
* [ ] [Esquemas de URL](android-app-pentesting/#url-schemes)
* [ ] [Provedores de Conteúdo](android-app-pentesting/#services)
* [ ] [Serviços](android-app-pentesting/#services-1)
* [ ] [Receivers de Broadcast](android-app-pentesting/#broadcast-receivers)
* [ ] [Intents](android-app-pentesting/#intents)
* [ ] [Filtro de Intent](android-app-pentesting/#intent-filter)
* [ ] [Outros componentes](android-app-pentesting/#other-app-components)
* [ ] [Como usar ADB](android-app-pentesting/#adb-android-debug-bridge)
* [ ] [Como modificar Smali](android-app-pentesting/#smali)
### [Análise Estática](android-app-pentesting/#static-analysis)
* [ ] Verifique o uso de [ofuscação](android-checklist.md#some-obfuscation-deobfuscation-information), verifique se o celular foi rootado, se um emulador está sendo usado e verifique a proteção contra adulteração. [Leia isso para mais informações](android-app-pentesting/#other-checks).
* [ ] Aplicativos sensíveis (como aplicativos bancários) devem verificar se o celular está rootado e devem agir em consequência.
* [ ] Procure por [strings interessantes](android-app-pentesting/#looking-for-interesting-info) (senhas, URLs, API, criptografia, backdoors, tokens, uuids do Bluetooth...).
* [ ] Atenção especial para as [APIs do firebase](android-app-pentesting/#firebase).
* [ ] [Leia o manifesto:](android-app-pentesting/#basic-understanding-of-the-application-manifest-xml)
* [ ] Verifique se o aplicativo está em modo de depuração e tente "explorá-lo".
* [ ] Verifique se o APK permite backups.
* [ ] Atividades exportadas.
* [ ] Provedores de Conteúdo.
* [ ] Serviços expostos.
* [ ] Receivers de Broadcast.
* [ ] Esquemas de URL.
* [ ] O aplicativo está [salvando dados de forma insegura internamente ou externamente](android-app-pentesting/#insecure-data-storage)?
* [ ] Existe alguma [senha codificada ou salva no disco](android-app-pentesting/#poorkeymanagementprocesses)? O aplicativo [está usando algoritmos criptográficos inseguros](android-app-pentesting/#useofinsecureandordeprecatedalgorithms)?
* [ ] Todas as bibliotecas compiladas usando a flag PIE?
* [ ] Não se esqueça de que há uma série de [Analisadores Estáticos de Android](android-app-pentesting/#automatic-analysis) que podem ajudar muito durante esta fase.
### [Análise Dinâmica](android-app-pentesting/#dynamic-analysis)
* [ ] Prepare o ambiente ([online](android-app-pentesting/#online-dynamic-analysis), [VM local ou física](android-app-pentesting/#local-dynamic-analysis))
* [ ] Existe algum [vazamento de dados não intencional](android-app-pentesting/#unintended-data-leakage) (logs, copiar/colar, logs de falhas)?
* [ ] [Informações confidenciais sendo salvas em bancos de dados SQLite](android-app-pentesting/#sqlite-dbs)?
* [ ] [Atividades expostas exploráveis](android-app-pentesting/#exploiting-exported-activities-authorisation-bypass)?
* [ ] [Provedores de Conteúdo exploráveis](android-app-pentesting/#exploiting-content-providers-accessing-and-manipulating-sensitive-information)?
* [ ] [Serviços expostos exploráveis](android-app-pentesting/#exploiting-services)?
* [ ] [Receivers de Broadcast exploráveis](android-app-pentesting/#exploiting-broadcast-receivers)?
* [ ] O aplicativo está [transmitindo informações em texto claro/usando algoritmos fracos](android-app-pentesting/#insufficient-transport-layer-protection)? É possível um MitM?
* [ ] [Inspecione o tráfego HTTP/HTTPS](android-app-pentesting/#inspecting-http-traffic)
* [ ] Isso é realmente importante, porque se você puder capturar o tráfego HTTP, poderá procurar por vulnerabilidades comuns na Web (Hacktricks tem muitas informações sobre vulnerabilidades da Web).
* [ ] Verifique possíveis [Injeções do Lado do Cliente Android](android-app-pentesting/#android-client-side-injections-and-others) (provavelmente alguma análise de código estático ajudará aqui).
* [ ] [Frida](android-app-pentesting/#frida): Apenas Frida, use-a para obter dados dinâmicos interessantes do aplicativo (talvez algumas senhas...).
### Algumas informações sobre ofuscação/deofuscação
* [ ] [Leia aqui](android-app-pentesting/#obfuscating-deobfuscating-code)
<figure><img src="/.gitbook/assets/image (2).png" alt=""><figcaption></figcaption></figure>
Aprofunde sua experiência em **Segurança Móvel** com a 8kSec Academy. Domine a segurança de iOS e Android através de nossos cursos autônomos e obtenha certificação:
{% embed url="https://academy.8ksec.io/" %}
{% hint style="success" %}
Aprenda e pratique Hacking AWS:<img src="/.gitbook/assets/arte.png" alt="" data-size="line">[**HackTricks Training AWS Red Team Expert (ARTE)**](https://training.hacktricks.xyz/courses/arte)<img src="/.gitbook/assets/arte.png" alt="" data-size="line">\
Aprenda e pratique Hacking GCP: <img src="/.gitbook/assets/grte.png" alt="" data-size="line">[**HackTricks Training GCP Red Team Expert (GRTE)**<img src="/.gitbook/assets/grte.png" alt="" data-size="line">](https://training.hacktricks.xyz/courses/grte)
<details>
<summary>Support HackTricks</summary>
* Confira os [**planos de assinatura**](https://github.com/sponsors/carlospolop)!
* **Junte-se ao** 💬 [**grupo do Discord**](https://discord.gg/hRep4RUj7f) ou ao [**grupo do telegram**](https://t.me/peass) ou **siga**-nos no **Twitter** 🐦 [**@hacktricks\_live**](https://twitter.com/hacktricks\_live)**.**
* **Compartilhe truques de hacking enviando PRs para o** [**HackTricks**](https://github.com/carlospolop/hacktricks) e [**HackTricks Cloud**](https://github.com/carlospolop/hacktricks-cloud) repositórios do github.
</details>
{% endhint %}