Arjun: descobrindo parâmetros HTTP ocultos

Arjun · AGPL-3.0

O Arjun encontra parâmetros HTTP que um endpoint aceita mas não anuncia. Ele envia nomes de parâmetro candidatos e observa mudanças no tamanho, status ou conteúdo da resposta que indiquem que a aplicação percebeu. Parâmetros ocultos são desproporcionalmente interessantes porque são os que ninguém escreveu testes ou verificações de autorização.

Instalação

pipx install arjun
# ou
pip install arjun

Comandos principais

# parâmetros GET em um endpoint
arjun -u https://example.com/api/v1/user

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

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

# sua própria wordlist — use a que o unfurl produziu
arjun -u https://example.com/api/v1/user -w params.txt

# throttle e autenticação
arjun -u https://example.com/api/v1/user -d 2 --headers "Authorization: Bearer TOKEN"

Saída

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

Onde ele entra no Tandera

O Arjun roda na fase de analyze do recon_web_full e do recon_api. Ele consome a lista de endpoints que katana e linkfinder produziram e o vocabulário de parâmetros que o unfurl extraiu do corpus de URLs.

No recon_api ele alimenta a síntese de shadow-endpoints: parâmetros descobertos em endpoints documentados, comparados contra a especificação da API, são como a superfície não documentada é identificada.

Usando em um pentest

Use o vocabulário da própria aplicação. Wordlists genéricas acham debug e test. O unfurl -u keys sobre o corpus de URLs arquivadas acha acct_ref e tenant_override, que são os que importam.

is_admin, role, debug e impersonate são o jackpot. Um parâmetro oculto que muda uma decisão de autorização é um crítico, não uma divulgação de informação. Teste o que ele faz antes de avaliá-lo.

Faça throttle. O Arjun envia muitas requisições rapidamente. O -d 2 coloca um atraso entre elas; sem isso você vai bater em rate limits e receber falsos negativos, e pode gerar um incidente do lado do cliente.

Confirme à mão. A detecção é heurística — baseada em deltas de resposta. Reproduza cada parâmetro manualmente antes de chegar ao relatório.

acesso antecipado

Garanta a Tandera antes do próximo engagement.

Entre na waitlist para acesso antecipado. Estamos integrando times de pentest em ondas.

Onboarding prioritário para times de pentest.
Linha direta com quem está construindo.
Preço de acesso antecipado, garantido.

Sem spam, sem cartão. Cancele quando quiser.

enespt-br