# Arjun: descubriendo parámetros HTTP ocultos

> Cómo instalar y ejecutar Arjun, y por qué los parámetros no documentados son donde la lógica de autorización tiende a romperse.

`Arjun` encuentra parámetros HTTP que un endpoint acepta pero no anuncia. Envía nombres de parámetro candidatos y observa cambios en el tamaño, status o contenido de la respuesta que indiquen que la aplicación lo notó. Los parámetros ocultos son desproporcionadamente interesantes porque son aquellos para los que nadie escribió pruebas ni comprobaciones de autorización.

## Instalación

```bash
pipx install arjun
# o
pip install arjun
```

## Comandos principales

```bash
# parámetros GET en un endpoint
arjun -u https://example.com/api/v1/user

# POST con cuerpo JSON
arjun -u https://example.com/api/v1/user -m JSON

# una lista de endpoints
arjun -i endpoints.txt -oJ arjun.json

# tu propia wordlist — usa la que produjo unfurl
arjun -u https://example.com/api/v1/user -w params.txt

# throttle y autenticación
arjun -u https://example.com/api/v1/user -d 2 --headers "Authorization: Bearer TOKEN"
```

## Salida

```json
{"https://example.com/api/v1/user":{"params":["debug","user_id","is_admin"],"method":"GET"}}
```

## Dónde encaja en Tandera

Arjun se ejecuta en la fase de **analyze** de `recon_web_full` y `recon_api`. Consume la lista de endpoints que `katana` y `linkfinder` produjeron y el vocabulario de parámetros que `unfurl` extrajo del corpus de URLs.

En `recon_api` alimenta la síntesis de shadow-endpoints: los parámetros descubiertos en endpoints documentados, comparados contra la especificación de la API, son cómo se identifica la superficie no documentada.

## Uso en un pentest

**Usa el vocabulario de la propia aplicación.** Las wordlists genéricas encuentran `debug` y `test`. `unfurl -u keys` sobre el corpus de URLs archivadas encuentra `acct_ref` y `tenant_override`, que son los que importan.

**`is_admin`, `role`, `debug` e `impersonate` son el premio gordo.** Un parámetro oculto que cambia una decisión de autorización es un crítico, no una divulgación de información. Prueba lo que hace antes de calificarlo.

**Haz throttle.** Arjun envía muchas solicitudes rápidamente. `-d 2` pone un retraso entre ellas; sin eso te toparás con rate limits y obtendrás falsos negativos, y puedes generar un incidente del lado del cliente.

**Confirma a mano.** La detección es heurística — basada en deltas de respuesta. Reproduce cada parámetro manualmente antes de que llegue al informe.

---

Canonical: https://tandera.io/es/tools/arjun
This page as markdown: https://tandera.io/es/tools/arjun.md
Index for agents: https://tandera.io/llms.txt

Every page here is also available as markdown: append `.md` to the path (e.g. `/recon.md`, `/index.md` for this homepage, `/blog/<slug>.md`), or request the canonical path with `Accept: text/markdown`.
