Skip to content
KitploitKITPLOIT
HerramientasBlog
Enviar
HerramientasBlog
Enviar

¡Herramientas de Hacking, PenTest y Ciberseguridad para tu Arsenal de Seguridad!

Kitploit es un directorio de herramientas de hacking, ciberseguridad y pentesting. Descubre las últimas actualizaciones de proyectos para encontrar vulnerabilidades, analizar sistemas, automatizar pruebas y fortalecer tu seguridad.

··Feeds·Contacto·Privacidad·© 2026 Kitploit

Directorio de Herramientas

Categorías

Ver todas las categorías
Loading categories
reFlutter — Parchea las bibliotecas del motor Flutter para habilitar la ingeniería inversa en tiempo real, la intercepción de tráfico y la omisión de fijación SSL en aplicaciones Android e iOS sin necesidad de root ni instalación de certificados. | Kitploit
Herramientas/GitHubGitHub/impact-i/reflutter
Seguridad AndroidAnálisis Dinámico (Sandboxing)Seguridad iOSIngeniería InversaPruebas de PenetraciónSeguridad Móvil
GitHubimpact-i/reflutter

reFlutter

Parchea las bibliotecas del motor Flutter para habilitar la ingeniería inversa en tiempo real, la intercepción de tráfico y la omisión de fijación SSL en aplicaciones Android e iOS sin necesidad de root ni instalación de certificados.

Ver Repositorio
2.7k293hace 9 díasRevisado por Kitploit

Más Populares

Ver todos →

Descubre las herramientas más usadas por nuestra comunidad.

Explora todas las herramientas

Explora nuestra colección de herramientas

Ver todas las herramientas →
Compartir

stars

Leer más en el blog: https://swarm.ptsecurity.com/fork-bomb-for-flutter/

Este framework ayuda con la ingeniería inversa de aplicaciones Flutter usando la versión parcheada de la librería Flutter que ya está compilada y lista para el reempaquetado de la aplicación. Esta librería tiene modificado el proceso de deserialización de snapshot para permitirte realizar análisis dinámico de manera conveniente.

Características clave:

  • socket.cc está parcheado para monitoreo e intercepción de tráfico;
  • dart.cc está modificado para imprimir clases, funciones y algunos campos;
  • Muestra el offset de código absoluto para funciones;
  • Contiene cambios menores para compilación exitosa;
  • si deseas implementar tus propios parches, los cambios manuales en el código de Flutter son compatibles usando un Dockerfile especialmente diseñado.

Motores compatibles

  • Android: arm64, arm32;
  • iOS: arm64;
  • Lanzamiento: Stable, Beta

Instalación

root@kitploit:~
# Linux, Windows, MacOS
pip3 install reflutter==0.8.6

Uso

root@kitploit:~
impact@f:~$ reflutter main.apk

Please enter your Burp Suite IP: <input_ip>

SnapshotHash: 8ee4ef7a67df9845fba331734198a953
The resulting apk file: ./release.RE.apk
Please sign the apk file

impact@f:~$ reflutter main.ipa

Intercepción de tráfico

Debes especificar la IP de tu Servidor Proxy de Burp Suite ubicado en la misma red donde se encuentra el dispositivo con la aplicación Flutter. Luego configura el Proxy en BurpSuite -> Listener Proxy -> Options tab:

  • Añadir puerto: 8083
  • Vincular a dirección: All interfaces
  • Manejo de solicitudes: Soporte de proxy invisible = True

No se requiere instalación de certificados ni acceso root para Android. reFlutter también permite omitir algunas implementaciones de fijación de certificados de Flutter.

⚠️ Nota: A partir de la versión de Flutter 3.24.0 (hash de snapshot: 80a49c7111088100a233b2ae788e1f48), la IP y puerto proxy hardcodeados han sido eliminados. Ahora necesitas configurar tu proxy directamente en el dispositivo.

En Android

Usa ADB para configurar el proxy del dispositivo:

root@kitploit:~
adb -s <device> shell "settings put global http_proxy <proxy_ip:port>"

Firma, alinea e instala el APK. Opcionalmente configura TunProxy para enrutar el tráfico a través de Burp Suite.

En iOS

Firma e instala el IPA. Configura Potatso para usar tu servidor proxy de Burp Suite.

Uso en Android

El apk resultante debe estar alineado y firmado. Una herramienta recomendada es uber-apk-signer:

root@kitploit:~
java -jar uber-apk-signer.jar --allowResign -a release.RE.apk

Ejecuta la aplicación en un dispositivo. Determina _kDartIsolateSnapshotInstructions mediante búsqueda binaria. reFlutter escribe el archivo dump en la carpeta raíz de la app y establece permisos 777. Recupéralo usando:

root@kitploit:~
adb -d shell "cat /data/data/<PACKAGE_NAME>/dump.dart" > dump.dart
contenido del archivo
root@kitploit:~
Library:'package:anyapp/navigation/DeepLinkImpl.dart' Class: Navigation extends Object {
String* DeepUrl = anyapp://evil.com/ ;
...

Uso en iOS

Después de ejecutar reflutter main.ipa, ejecuta la app en el dispositivo. La ruta del archivo dump se imprime en los registros de la consola de Xcode:

root@kitploit:~
Current working dir: /private/var/mobile/Containers/Data/Application/<UUID>/dump.dart

Recupera el archivo del dispositivo.

Frida

root@kitploit:~
frida-tools==13.7.1
frida==16.7.19

Usa los offsets de dump en el script de Frida:

root@kitploit:~
frida -U -f <package> -l frida.js

Para encontrar _kDartIsolateSnapshotInstructions:

root@kitploit:~
readelf -Ws libapp.so

Busca el campo Value.

Por hacer

  • Mostrar offset de código absoluto para funciones;
  • Extraer más cadenas y campos;
  • Añadir parche de socket;
  • Extender soporte de motor a Debug usando Fork y Github Actions;
  • Mejorar detección de App.framework y libapp.so dentro del archivo zip

Compilar Motor

Los motores se compilan usando GitHub Actions basados en datos de enginehash.csv. El hash de snapshot se obtiene de:

root@kitploit:~
https://storage.googleapis.com/flutter_infra_release/flutter/<hash>/android-arm64-release/linux-x64.zip
lanzamiento

gif

Compilación Personalizada

El parcheado manual del código de Flutter es compatible usando Docker:

root@kitploit:~
git clone https://github.com/Impact-I/reFlutter && cd reFlutter
docker build -t reflutter -f Dockerfile .

Ejecuta con:

root@kitploit:~
docker run -it -v "$(pwd):/t" -e HASH_PATCH=<Snapshot_Hash> -e COMMIT=<Engine_commit> reflutter

Ejemplo:

root@kitploit:~
docker run -it -v "$(pwd):/t" -e HASH_PATCH=aa64af18e7d086041ac127cc4bc50c5e -e COMMIT=d44b5a94c976fbb65815374f61ab5392a220b084 reflutter

Ejemplo: Compilar Android ARM64 (Linux/Windows)

root@kitploit:~
docker run -e WAIT=300 -e x64=0 -e arm=0 -e HASH_PATCH=<Snapshot_Hash> -e COMMIT=<Engine_commit> --rm -iv${PWD}:/t reflutter

Banderas:

  • -e x64=0: deshabilita la compilación x64
  • -e arm64=0: deshabilita la compilación arm64
  • -e arm=0: deshabilita la compilación arm32
  • -e WAIT=300: tiempo en segundos para modificar el código fuente antes de compilar
  • -e HASH_PATCH: hash de snapshot de enginehash.csv
  • -e COMMIT: hash del commit del motor

Descargar herramienta