hacktricks/mobile-pentesting/android-app-pentesting/make-apk-accept-ca-certificate.md

3.9 KiB

{% hint style="success" %} Learn & practice AWS Hacking:HackTricks Training AWS Red Team Expert (ARTE)
Learn & practice GCP Hacking: HackTricks Training GCP Red Team Expert (GRTE)

Support HackTricks
{% endhint %}

Alguns aplicativos não aceitam certificados baixados pelo usuário, então, para inspecionar o tráfego da web de alguns aplicativos, precisamos realmente descompilar o aplicativo, adicionar algumas coisas e recompilá-lo.

Automático

A ferramenta https://github.com/shroudedcode/apk-mitm automaticamente fará as alterações necessárias no aplicativo para começar a capturar as requisições e também desativará o pinning de certificado (se houver).

Manual

Primeiro, descompilamos o aplicativo: apktool d *file-name*.apk

Em seguida, vamos ao arquivo Manifest.xml e rolamos até a tag <\application android> e vamos adicionar a seguinte linha, se ainda não estiver lá:

android:networkSecurityConfig="@xml/network_security_config

Antes de adicionar:

Depois de adicionar:

Agora vá para a pasta res/xml e crie/modifique um arquivo chamado network_security_config.xml com o seguinte conteúdo:

<network-security-config>
<base-config>
<trust-anchors>
<!-- Trust preinstalled CAs -->
<certificates src="system" />
<!-- Additionally trust user added CAs -->
<certificates src="user" />
</trust-anchors>
</base-config>
</network-security-config>

Então salve o arquivo e saia de todos os diretórios e reconstrua o apk com o seguinte comando: apktool b *folder-name/* -o *output-file.apk*

Finalmente, você só precisa assinar a nova aplicação. Leia esta seção da página Smali - Decompiling/[Modifying]/Compiling para aprender como assiná-la.

{% hint style="success" %} Learn & practice AWS Hacking:HackTricks Training AWS Red Team Expert (ARTE)
Learn & practice GCP Hacking: HackTricks Training GCP Red Team Expert (GRTE)

Support HackTricks
{% endhint %}