hacktricks/mobile-pentesting/android-app-pentesting/react-native-application.md

4.6 KiB

Aprende hacking en AWS desde cero hasta experto con htARTE (HackTricks AWS Red Team Expert)!

Otras formas de apoyar a HackTricks:

Análisis de la Aplicación React Native

Para confirmar si la aplicación fue construida con el framework React Native, sigue estos pasos:

  1. Renombra el archivo APK con una extensión zip y extráelo a una nueva carpeta usando el comando cp com.example.apk example-apk.zip y unzip -qq example-apk.zip -d ReactNative.

  2. Navega hasta la carpeta ReactNative recién creada y localiza la carpeta de assets. Dentro de esta carpeta, deberías encontrar el archivo index.android.bundle, que contiene el JavaScript de React en un formato minificado.

  3. Utiliza el comando find . -print | grep -i ".bundle$" para buscar el archivo JavaScript.

Para analizar más a fondo el código JavaScript, crea un archivo llamado index.html en el mismo directorio con el siguiente código:

<script src="./index.android.bundle"></script>

Puedes subir el archivo a https://spaceraccoon.github.io/webpack-exploder/ o seguir estos pasos:

  1. Abre el archivo index.html en Google Chrome.

  2. Abre la Barra de Herramientas para Desarrolladores presionando Command+Option+J para OS X o Control+Shift+J para Windows.

  3. Haz clic en "Sources" en la Barra de Herramientas para Desarrolladores. Deberías ver un archivo JavaScript dividido en carpetas y archivos, formando el paquete principal.

Si encuentras un archivo llamado index.android.bundle.map, podrás analizar el código fuente en un formato no minimizado. Los archivos de mapa contienen mapeo de origen, lo que te permite mapear identificadores minimizados.

Para buscar credenciales sensibles y puntos finales, sigue estos pasos:

  1. Identifica palabras clave sensibles para analizar el código JavaScript. Las aplicaciones React Native a menudo utilizan servicios de terceros como Firebase, puntos finales de servicios AWS S3, claves privadas, etc.

  2. En este caso específico, se observó que la aplicación estaba utilizando el servicio Dialogflow. Busca un patrón relacionado con su configuración.

  3. Fue afortunado encontrar credenciales sensibles codificadas en el código JavaScript durante el proceso de reconocimiento.

Referencias

Aprende hacking en AWS desde cero hasta experto con htARTE (HackTricks AWS Red Team Expert)!

Otras formas de apoyar a HackTricks: