jxscout: análisis de JavaScript para descubrimiento de endpoints y secretos

jxscout · MIT

jxscout analiza JavaScript para recuperar las cosas que los front-ends filtran en sus bundles: endpoints de API, nombres de parámetro y valores hardcoded. Las aplicaciones modernas envían su enrutamiento y buena parte de su contrato al navegador, y jxscout es el paso del pipeline de Tandera que lo lee sistemáticamente.

Comandos principales

# analiza un único bundle
jxscout analyze https://example.com/static/app.js

# todo script referenciado por una página
jxscout analyze --page https://example.com

# un archivo local
jxscout analyze ./app.bundle.js --json

Salida

JSON estructurado: endpoints recuperados, nombres de parámetro y constantes candidatas, cada uno con el archivo de origen y el offset para que un finding pueda apuntar a la ubicación exacta en el bundle.

Dónde encaja en Tandera

jxscout se ejecuta en la fase de analyze de recon_web_lite y recon_api, sobre el JavaScript que katana recuperó. Se sitúa junto a linkfinder y trufflehog, y los tres dividen la misma entrada: linkfinder para extracción de rutas, trufflehog para secretos verificados, jxscout para el modelo estructurado de endpoints-y-parámetros que alimenta la síntesis de shadow-endpoints de API.

Como el análisis es enteramente de contenido ya descargado — no se envía nada al objetivo — jxscout está permitido en el flujo lite NonIntrusive.

Uso en un pentest

Los bundles describen la API mejor que la propia API se documenta. Los endpoints y parámetros recuperados aquí son el contrato real de la aplicación, incluidas rutas que la UI nunca ejercita. Aliméntalos en httpx y arjun y prueba lo que es alcanzable sin autorización.

Correlaciona constantes con secretos verificados. jxscout saca a la luz constantes candidatas; trufflehog te dice cuáles son credenciales vivas. Un valor marcado por ambos, en el mismo bundle, es un finding confirmado con ubicación exacta.

Los source maps lo cambian todo. Cuando se sirven archivos .map, el análisis se ejecuta contra el fuente original en lugar de la salida minificada, y los nombres recuperados son los reales de los desarrolladores. Comprueba siempre si están expuestos — y anótalo, porque un source map público es, por sí solo, una divulgación que merece reportarse.

acceso anticipado

Consigue Tandera antes de tu próximo engagement.

Únete a la waitlist para acceso anticipado. Estamos incorporando equipos de pentest por oleadas.

Onboarding prioritario para equipos de pentest.
Línea directa con quienes lo construyen.
Precio de acceso anticipado, asegurado.

Sin spam, sin tarjeta. Cancela cuando quieras.

enespt-br