Skip to content
KitploitKITPLOIT
FerramentasExploitsBlog
Log in
Enviar
FerramentasExploitsBlog
Enviar

Ferramentas de Hacking, PenTest e Cibersegurança para o seu Arsenal de Segurança!

Kitploit é um diretório de ferramentas de hacking, cibersegurança e pentesting. Descubra as últimas atualizações de projetos para encontrar vulnerabilidades, analisar sistemas, automatizar testes e fortalecer sua segurança.

··Feeds·Contato·Privacidade·© 2026 Kitploit

Diretório de Ferramentas

Categorias

Ver todas as categorias
Loading categories
Panoptic — Panoptic é uma ferramenta de teste de penetração de código aberto que automatiza o processo de busca e recuperação de conteúdo de arquivos de log e configuração comuns por meio de vulnerabilidades de path traversal. | Kitploit
Ferramentas/GitHubGitHub/lightos/panoptic
ReconhecimentoScanners de VulnerabilidadesExploração de Aplicações WebColeta de InformaçõesTestes de Penetração
GitHublightos/panoptic

Panoptic

Panoptic é uma ferramenta de teste de penetração de código aberto que automatiza o processo de busca e recuperação de conteúdo de arquivos de log e configuração comuns por meio de vulnerabilidades de path traversal.

Ver Repositório
3257414há 2 mesesRevisado pelo Kitploit

Mais Populares

Ver todos →

Descubra as ferramentas mais usadas pela nossa comunidade.

Explore todas as ferramentas

Navegue pela nossa coleção de ferramentas

Ver todas as ferramentas →
Compartilhar

Panoptic

Panoptic Logo

License: MIT Python Versions Ruff mypy GitHub last commit CodeRabbit Pull Request Reviews

O Panoptic é uma ferramenta de teste de penetração de código aberto que automatiza a busca e a recuperação de arquivos comuns de log e configuração através de vulnerabilidades de path traversal.

Panoptic Demo

Funcionalidades

  • Varredura assíncrona concorrente com pool de workers configurável (--concurrency)
  • Descoberta automática de arquivos comuns de log e configuração via injeção baseada em parâmetro, baseada em caminho, POST, cookie, cabeçalho e corpo JSON
  • Marcador FUZZ para pontos de injeção arbitrários — coloque FUZZ em qualquer valor de --header ou --data
  • Codificação Base64 para endpoints que decodificam caminhos de arquivo (--base64)
  • Detecção automática de SO com opção de restringir varreduras adicionais
  • Comparação heurística de respostas com filtragem por código de status para reduzir falsos positivos
  • Injeção dinâmica de casos — analisa /etc/passwd em busca de arquivos do diretório home, mysql-bin.index em busca de arquivos binlog
  • Múltiplos formatos de saída: texto (rich), JSON, CSV (--output-format)
  • Suporte a retomada/checkpoint para varreduras de longa duração (--resume-file)
  • Arquivos de configuração TOML para configurações persistentes (--config)
  • Múltiplas técnicas de bypass de traversal: prefixos, pós-fixos, multiplicador, substituição de barras, codificação dupla
  • Suporte a proxy HTTP/HTTPS e SOCKS5 com validação
  • Suporte a User-Agent, cookie e cabeçalho aleatórios ou personalizados
  • Mascaramento de credenciais no banner, no log e na saída legível por máquina (incluindo valores numéricos e booleanos no corpo JSON)
  • Artefatos confidenciais protegidos com permissões 0600 somente do proprietário no POSIX e proteção de symlink no componente final onde o SO suporta
  • Auto-atualização com verificação de URL remota (--update)

Requisitos

  • Python 3.10+
  • Git
  • Dependências: httpx[socks], rich, rich-argparse e tomli no Python 3.10

Instalação

git clone https://github.com/lightos/Panoptic.git
cd Panoptic
python3 -m venv .venv
source .venv/bin/activate
python -m pip install -e .
panoptic --version

No Prompt de Comando do Windows, ative com .venv\Scripts\activate.bat; no PowerShell, use .venv\Scripts\Activate.ps1. A instalação editável mantém o Panoptic conectado a este checkout para --update, portanto mantenha o diretório no lugar. Não execute pip install panoptic: esse nome no PyPI pertence a um projeto não relacionado.

Para desenvolvimento:

python -m pip install -e ".[dev]"

Uso

panoptic --url "http://target/include.php?file=test.txt"

Exemplos

LFI básico baseado em parâmetro

panoptic --url "http://target/include.php?file=test.txt"
panoptic --url "http://target/include.php?file=test.txt&id=1" \
  --param file

Injeção de dados POST

panoptic --url "http://target/include.php" \
  --data "file=test.txt&id=1" --param file

LFI baseado em caminho

panoptic --url "http://target/view.php/test.txt" --path-based

Parâmetro codificado em Base64

panoptic --url "http://target/load.php?file=dGVzdC50eHQ=" \
  --base64 --auto

Injeção por cookie (marcador FUZZ)

panoptic --url "http://target/page.php" \
  --header "Cookie: lang=FUZZ" --auto

Injeção no corpo JSON (marcador FUZZ)

panoptic --url "http://target/api/load" \
  --data '{"file":"FUZZ"}' --auto

Injeção em cabeçalho personalizado (marcador FUZZ)

panoptic --url "http://target/page.php" \
  --header "X-Template: FUZZ" --auto

Parâmetro de extensão

panoptic --url "http://target/view.php?file=test&type=txt" \
  --param file --ext-param type

Bypass de filtro com prefixo

panoptic --url "http://target/filtered.php?file=test.txt" \
  --prefix "....//....//....//....//"

Varreduras filtradas

panoptic --url "http://target/include.php?file=test.txt" \
  --os "*NIX" --type conf
panoptic --url "http://target/include.php?file=test.txt" \
  --software PostgreSQL

Saída JSON com suporte a retomada

panoptic --url "http://target/include.php?file=test.txt" \
  --output-format json --output-file results.json \
  --resume-file scan.checkpoint

Proxy com erros SSL ignorados

panoptic --url "https://target/include.php?file=test.txt" \
  --proxy "socks5://127.0.0.1:9050" --invalid-ssl

Listar filtros disponíveis

panoptic --list software
panoptic --list category
panoptic --list os

Varredura abrangente

panoptic --url "http://target/include.php?file=test.txt" \
  --auto --all-versions --concurrency 8

Marcador FUZZ

Coloque FUZZ em qualquer lugar nos valores de --header ou --data para marcar o ponto de injeção. O Panoptic substitui FUZZ por cada caminho de arquivo durante a varredura. Isso permite testar pontos de injeção que --param não consegue alcançar:

Tipo de injeçãoExemplo
Valor de cookie--header "Cookie: theme=FUZZ"
Cabeçalho personalizado--header "X-Include: FUZZ"
Corpo JSON--data '{"template":"FUZZ"}'
Valor aninhado--header "Cookie: sid=abc; lang=FUZZ"

Quando FUZZ está presente, --param não é necessário.

Configuração

O Panoptic suporta arquivos de configuração TOML para configurações persistentes:

panoptic --url "http://target/include.php?file=test.txt" \
  --config ~/.config/panoptic/config.toml

Local padrão do config: ~/.config/panoptic/config.toml (carregado automaticamente quando presente, mesmo sem --config).

[defaults]
# Any long option name (with dashes as underscores) is accepted here,
# including the target and output destinations.
url = "http://target/include.php?file=test.txt"
concurrency = 8
verbose = true
automatic = true
all_versions = true
output_format = "json"
output_file = "results.json"
log_file = "scan.log"
resume_file = "scan.checkpoint"

[proxy]
url = "socks5://127.0.0.1:9050"

[headers]
user_agent = "Mozilla/5.0"
cookie = "sid=foobar; auth=1"
values = ["X-Forwarded-For: 127.0.0.1"]

Prioridade: argumentos de CLI > arquivo de configuração > padrões embutidos.

Opções de alvo e saída suportadas pelo config

A tabela [defaults] aceita qualquer opção de varredura, não apenas ajuste de desempenho. Em particular, você pode persistir:

  • url — o alvo padrão (substituível por execução com --url)
  • output_format, output_file — onde os resultados legíveis por máquina são gravados
  • log_file — espelha a saída do console em um arquivo
  • resume_file — local do checkpoint para varreduras retomáveis
Baixar ferramenta