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

43 lines
1.9 KiB
Markdown
Raw Normal View History

2023-06-03 01:46:23 +00:00
Algunas aplicaciones no aceptan certificados descargados por el usuario, por lo que para inspeccionar el tráfico web de algunas aplicaciones, en realidad tenemos que descompilar la aplicación, agregar algunas cosas y volver a compilarla.
2022-04-28 16:01:33 +00:00
2023-06-03 01:46:23 +00:00
# Automático
2022-04-28 16:01:33 +00:00
2023-06-03 01:46:23 +00:00
La herramienta [**https://github.com/shroudedcode/apk-mitm**](https://github.com/shroudedcode/apk-mitm) hará **automáticamente** los cambios necesarios en la aplicación para comenzar a capturar las solicitudes y también deshabilitará el pinning de certificados (si lo hay).
2022-05-01 12:41:36 +00:00
# Manual
2023-06-03 01:46:23 +00:00
Primero descompilamos la aplicación: `apktool d *nombre-del-archivo*.apk`
![](../../.gitbook/assets/img9.png)
2023-06-03 01:46:23 +00:00
Luego vamos al archivo **Manifest.xml** y nos desplazamos hasta la etiqueta `<\application android>` y vamos a agregar la siguiente línea si aún no está allí:
`android:networkSecurityConfig="@xml/network_security_config`
2023-06-03 01:46:23 +00:00
Antes de agregar:
![](../../.gitbook/assets/img10.png)
2023-06-03 01:46:23 +00:00
Después de agregar:
![](../../.gitbook/assets/img11.png)
2023-06-03 01:46:23 +00:00
Ahora vamos a la carpeta **res/xml** y creamos/modificamos un archivo llamado network_security_config.xml con el siguiente contenido:
```markup
<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>
```
2023-06-03 01:46:23 +00:00
Luego, guarda el archivo y sal de todos los directorios y reconstruye el apk con el siguiente comando: `apktool b *nombre-de-la-carpeta/* -o *nombre-del-archivo-de-salida.apk*`
![](../../.gitbook/assets/img12.png)
2023-06-03 01:46:23 +00:00
Finalmente, solo necesitas **firmar la nueva aplicación**. [Lee esta sección de la página Smali - Decompiling/\[Modifying\]/Compiling para aprender cómo firmarla](smali-changes.md#sing-the-new-apk).