
Aplicación Android intencionalmente vulnerable.
Una aplicación Android intencionalmente vulnerable para educación en seguridad
Características • Capturas de pantalla • Instalación • Desafíos • Contribuir • Soporte
Allsafe es una aplicación Android intencionalmente vulnerable diseñada para entusiastas de la seguridad, pentesters y desarrolladores que deseen aprender sobre seguridad de aplicaciones Android. A diferencia de las aplicaciones típicas de estilo CTF, Allsafe simula una aplicación del mundo real utilizando bibliotecas y tecnologías modernas, brindando una experiencia práctica de aprendizaje para identificar y explotar vulnerabilidades en Android.
# Descarga el último APK desde las versiones
wget https://github.com/t0thkr1s/allsafe/releases/latest/download/allsafe.apk
# Instala vía ADB
adb install allsafe.apk
# Clona el repositorio
git clone https://github.com/t0thkr1s/allsafe.git
cd allsafe
# Compila el APK
./gradlew assembleDebug
# Instala el APK
adb install app/build/outputs/apk/debug/app-debug.apk
La aplicación contiene varios desafíos de seguridad organizados por dificultad:
Vulnerabilidad simple de divulgación de información. Usa la herramienta de línea de comandos logcat para descubrir información sensible.
adb shell 'pidof infosecadventures.allsafe'
adb shell 'logcat --pid [PID] | grep secret'
Algunas credenciales se han dejado en el código. Tu tarea es realizar ingeniería inversa de la aplicación y encontrar información sensible.
Esto es puramente para practicar con Frida. ¡Haz que el código crea que tu dispositivo no tiene root!
Cargar módulos de forma segura con aplicaciones de terceros no es fácil. ¡Escribe una aplicación PoC y explota la vulnerabilidad!
Otra tarea basada en Frida. No hay una vulnerabilidad real aquí, solo diviértete sorteando el indicador seguro.
El anclaje de certificados está implementado usando la biblioteca OkHttp. Debes omitirlo para poder ver el tráfico con Burp Suite.
Hay un receptor de difusión vulnerable en la aplicación. ¡Dispara con los datos correctos y habrás terminado!
Similar al receptor de difusión inseguro, necesitas proporcionar el parámetro de consulta correcto para completar esta tarea.
Simplemente una inyección SQL regular como las que se encuentran en aplicaciones web. No es necesario hacer ingeniería inversa del código para sortear el mecanismo de inicio de sesión.
También puedes completar esta tarea sin descompilar la aplicación. ¡Muestra un cuadro de diálogo de alerta y lee archivos!
En esta tarea, debes modificar el flujo de ejecución de la aplicación editando el código Smali. Finalmente, ¡recompila y firma el APK!
La aplicación utiliza una biblioteca nativa que valida la contraseña ingresada. Haz ingeniería inversa de la biblioteca para encontrar la contraseña y luego usa Frida para enganchar el método nativo.
Revisa mi colección de scripts de Frida para pentesting Android: https://github.com/t0thkr1s/frida
¡Las contribuciones son bienvenidas! Ya sea que hayas encontrado un error, tengas una sugerencia o quieras agregar un nuevo desafío:
git checkout -b feature/CaracteristicaIncreible)git commit -m 'Añadir alguna CaracteristicaIncreible')git push origin feature/CaracteristicaIncreible)Si encontraste este proyecto útil o valioso, por favor considera:
Bitcoin (BTC)
bc1qd44kvj6zatjgn27n45uxd3nprzt6rm9x9g2yc8
Ethereum (ETH)
0x1835a58E866a668C48Ee63d32432C7Fe28aF54b4
Esta aplicación está diseñada solo con fines educativos. Solo debe usarse en entornos controlados donde tengas permiso explícito. Los desarrolladores no asumen ninguna responsabilidad y no se hacen responsables por cualquier mal uso o daño causado por esta aplicación.
No uses esta aplicación:
Este proyecto está bajo la Licencia Pública General de GNU v3.0; consulta el archivo LICENSE para más detalles.