¡Herramientas de Hacking, PenTest y Ciberseguridad para tu Arsenal de Seguridad!
reverse-engineering-browser — Navegador de investigación para macOS con enfoque local, construido sobre una compilación personalizada de Brave que captura tráfico de red, huellas digitales, scripts y evidencia en tiempo de ejecución para la ingeniería inversa de aplicaciones web. | Kitploit
Navegador de investigación para macOS con enfoque local, construido sobre una compilación personalizada de Brave que captura tráfico de red, huellas digitales, scripts y evidencia en tiempo de ejecución para la ingeniería inversa de aplicaciones web.
Consulta la evidencia del navegador detrás de las huellas digitales, solicitudes, scripts y comportamiento en tiempo de ejecución.
Un navegador de investigación local-first y espacio de trabajo para macOS para inspeccionar
aplicaciones web autorizadas.
v0.2.1 publicada
Origin Trace Traffic ahora cuenta con una tabla de solicitudes de ancho completo al estilo DevTools. Las rutas
y los hosts son más fáciles de leer, con columnas separadas de estado, tipo, método y tiempo. Las solicitudes en vivo siguen la parte inferior de la lista; desplazarse hacia arriba conserva
tu posición y ofrece un salto a las nuevas solicitudes. Al seleccionar una solicitud se muestra su
URL completa con una acción Copiar URL. Las mejoras de privacidad de sesión y lanzamiento de la v0.2.0 siguen disponibles.
v0.2.1: rediseñó el Traffic en vivo como una tabla de solicitudes de ancho completo legible
con jerarquía de ruta y host, metadatos de solicitud compactos, actualizaciones de seguimiento hasta el final,
un salto a nuevas solicitudes e inspección y copia de URL completa.
v0.2.0: añadió controles de captura de metadatos por sesión o de contenido acotado,
perfiles aislados sin solicitudes con opt-in explícito a Keychain, preparación verificada del navegador
y flujos de reintento/relanzamiento, diagnósticos privados de Brave, un corpus de referencia de
desofuscación semántica y arranque automatizado de herramientas de desarrollo.
v0.1.10: corrigió la condición de carrera de cancelación de WebKit en el momento del lanzamiento que podía mostrar
NSURLErrorDomain error -999 mientras Origin Trace cambiaba de su shell sin conexión al espacio de trabajo en vivo recién iniciado.
v0.1.9: hizo que el lanzamiento normal de la aplicación inicie automáticamente el broker, el receptor de artefactos,
el depurador, los analizadores, la interfaz de loopback y la sesión instrumentada de Brave personalizada; empaquetó los ayudantes necesarios y añadió informes explícitos de fallos de inicio y limpieza propia.
v0.1.8: añadió desofuscación acotada de Rust/Oxc dentro de Sources, procedencia de bytes originales,
protección de anidamiento, evaluación de proxy y decodificador personalizado, supuestos explícitos de coerción de JSFuck
y recuperación acotada de despachadores de bucle/switch.
v0.1.7: renovó la interfaz de investigación y reorganizó las herramientas avanzadas,
la inspección de código fuente, los detalles de solicitudes, el fingerprinting, la memoria y los experimentos.
v0.1.6: añadió flujos de trabajo más sólidos de código fuente, memoria, señales de solicitud y analista
con empaquetado nativo de aplicaciones y actualizaciones de validación.
v0.1.5: amplió el flujo de trabajo de investigación nativo y la distribución para macOS.
v0.1.4: amplió las sondas nativas de fingerprinting, añadió actividad por pestaña con lo más reciente primero
y recuentos de pestañas en vivo, captura opcional de imágenes de Canvas, informes más claros de brechas en la cola
y controles para detener sondas o borrar los eventos de la sesión actual.
v0.1.3: eliminó solicitudes de ejemplo, eventos y salida de Canvas del
paquete de la aplicación de producción para que cada sesión comience con evidencia capturada real.
v0.1.2: añadió el espacio de trabajo de Fingerprinting con salida de imágenes de Canvas, una
vista previa de reproducción local, funciones de dibujo capturadas, actividad de fingerprinting, detalles de eventos, filtros y correlación de solicitudes.
Características
Tráfico de red en vivo: inspecciona solicitudes en una tabla de ancho completo con rutas legibles,
hosts, métodos, códigos de estado y tiempos; selecciona una para inspeccionar su URL completa,
encabezados, cuerpo de solicitud y cuerpo de respuesta capturados a través de CDP.
Organización por pestaña y dominio: separa el tráfico por pestaña del navegador y luego limita
una pestaña a un dominio de destino o tipo de recurso específico.
Evidencia nativa del navegador: registra llamadas y lecturas de propiedades en Canvas,
WebGL, Web Audio, APIs de dispositivo y diseño, Permissions, Storage, WebRTC y
fingerprinting del runtime de JavaScript, además de metadatos del ciclo de vida de las solicitudes desde una
compilación personalizada de Brave.
Trazado de origen: sigue una solicitud hacia atrás a través de los eventos observados,
scripts, frames, contextos de ejecución y artefactos capturados que contribuyeron a ella.
Inspección de código fuente y depuración: explora el código fuente de la página, establece puntos de interrupción,
pausa y avanza paso a paso por JavaScript, inspecciona ámbitos, evalúa watches y usa una
consola en vivo.
Captura de artefactos: conserva copias acotadas de JavaScript y WebAssembly entregados por la red y
generados en tiempo de ejecución con hashes y procedencia, además de salida de imágenes de Canvas explícitamente autorizada.
Herramientas de memoria y backtrace: inspecciona instantáneas de heap, objetos en vivo, marcos de pila decodificados
y hallazgos relacionados con la VM.
Flujos de trabajo de investigación: guarda solicitudes en colecciones, reproduce solicitudes aisladas,
ejecuta experimentos controlados y mantén notas locales del analista.
Captura local y acotada: la evidencia permanece en la máquina. Los encabezados de solicitud sensibles
se redactan, los cuerpos se limitan a 128 KiB en la captura CDP,
y las colas nativas y las transferencias de artefactos tienen límites explícitos.
Modo silencioso nativo: ejecuta la captura de evidencia nativa sin adjuntar DevTools
cuando no se requiere el contenido de solicitudes y respuestas.
Descomprime ambos archivos y coloca las aplicaciones una junto a la otra, o instala
Brave Browser Development en /Applications.
Abre Origin Trace. Inicia automáticamente los servicios de captura y una sesión aislada personalizada
de Brave.
Las aplicaciones compiladas son para Macs con Apple silicon. La vista previa enlazada de Brave Browser
Development es anterior al soporte actual de sondas. Compila la integración fijada de Brave desde el código fuente de esta versión para usar todas las sondas nativas; la
vista previa descargada no puede demostrarlas. Origin Trace no contiene evidencia de muestra
incluida. Las aplicaciones están firmadas ad-hoc pero no notarizadas por Apple, por lo que
el primer lanzamiento puede requerir hacer Control-clic en la aplicación y elegir Open. La
etiqueta de versión de GitHub v0.2.1 no está firmada; su commit de fusión está verificado por GitHub.
Descargar la aplicación compilada de Brave no requiere un checkout de código fuente de más de 100 GiB.
Permite alrededor de 1 GiB para descargar y extraer ambas aplicaciones, más el espacio que
quieras conservar para perfiles de navegador y sesiones capturadas.
Ejecutar una captura en vivo con una compilación personalizada existente de Brave
Desde la raíz del repositorio:
root@kitploit:~
REB_CDP_NETWORK_CAPTURE=1 \
REB_BRAVE_BINARY="/path/to/Brave Browser Development.app/Contents/MacOS/Brave Browser Development" \
make live
Origin Trace y el navegador Brave personalizado se abren juntos. Navega en esa ventana de Brave
y selecciona solicitudes en la pestaña Traffic. Cierra Brave para finalizar la
sesión. La evidencia capturada se almacena en build/sessions/live/.
La captura de contenido CDP es explícita porque puede retener contenido de la página. Redacta
los encabezados authorization, cookie, proxy-authorization y set-cookie. Los cuerpos de respuesta en streaming,
en caché, internos o ya desalojados pueden no estar disponibles.
Los nombres de operaciones de fingerprinting se capturan por defecto. Para conservar también la imagen exacta
devuelta por HTMLCanvasElement.toDataURL() para esta única sesión, añade
REB_CAPTURE_CANVAS_IMAGES=1. La salida de imágenes de Canvas puede contener contenido de la página, por lo que
está deshabilitada por defecto, se conserva solo en el almacén de sesiones local y se limita a
2 MiB por imagen.
Compilar el navegador Brave personalizado por primera vez
Estos requisitos se aplican solo al compilar Brave desde el código fuente. No se
aplican al usar la aplicación Brave compilada descargable.
Requisitos de compilación desde código fuente:
macOS con Xcode completo instalado;
Node.js y pnpm;
Python 3, un compilador C++20, zlib y Make;
al menos 150 GiB libres, con 200 a 250 GiB recomendados.
Prepara el checkout fijado, aplica la integración, verifícala y compila Brave:
root@kitploit:~
./scripts/bootstrap-brave.sh --init
./scripts/sync-browser-integration.sh
make brave-doctor
make brave-probe-check
./scripts/brave-toolchain.sh build
La primera compilación completa puede tardar varias horas. Las compilaciones posteriores son incrementales y
normalmente reutilizan el checkout existente y los objetos compilados. Cuando termine,
inicia la captura en vivo con el comando de la sección anterior.
Ejecutar sin captura de contenido CDP
Para captura nativa de metadatos y artefactos sin una conexión DevTools en vivo:
root@kitploit:~
REB_NATIVE_QUIET_MODE=1 \
REB_BRAVE_BINARY="/path/to/Brave Browser Development.app/Contents/MacOS/Brave Browser Development" \
make live
Sources, puntos de interrupción, paso a paso, watches, la consola, URLs completas, encabezados y
cuerpos no están disponibles en el modo silencioso nativo.
Usa este proyecto solo en sistemas que poseas o estés explícitamente autorizado a
inspeccionar.