Skip to content
KitploitKITPLOIT
HerramientasExploitsBlog
Log in
Enviar
HerramientasExploitsBlog
Enviar

¡Herramientas de Hacking, PenTest y Ciberseguridad para tu Arsenal de Seguridad!

Kitploit es un directorio de herramientas de hacking, ciberseguridad y pentesting. Descubre las últimas actualizaciones de proyectos para encontrar vulnerabilidades, analizar sistemas, automatizar pruebas y fortalecer tu seguridad.

··Feeds·Contacto·Privacidad·© 2026 Kitploit

Directorio de Herramientas

Categorías

Ver todas las categorías
Loading categories
Panoptic — Panoptic es una herramienta de pruebas de penetración de código abierto que automatiza el proceso de búsqueda y recuperación de contenido de archivos de registro y configuración comunes mediante vulnerabilidades de path traversal. | Kitploit
Herramientas/GitHubGitHub/lightos/panoptic
ReconocimientoEscáneres de VulnerabilidadesExplotación de Aplicaciones WebRecopilación de InformaciónPruebas de Penetración
GitHublightos/panoptic

Panoptic

Panoptic es una herramienta de pruebas de penetración de código abierto que automatiza el proceso de búsqueda y recuperación de contenido de archivos de registro y configuración comunes mediante vulnerabilidades de path traversal.

Ver Repositorio
3257414hace 2 mesesRevisado por Kitploit

Más Populares

Ver todos →

Descubre las herramientas más usadas por nuestra comunidad.

Explora todas las herramientas

Explora nuestra colección de herramientas

Ver todas las herramientas →
Compartir

Panoptic

Panoptic Logo

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

Panoptic es una herramienta de pruebas de penetración de código abierto que automatiza la búsqueda y recuperación de archivos de registro y configuración comunes mediante vulnerabilidades de path traversal.

Panoptic Demo

Características

  • Escaneo concurrente asíncrono con pool de workers configurable (--concurrency)
  • Descubrimiento automático de archivos de registro y configuración comunes mediante inyección por parámetro, por ruta, POST, cookie, cabecera y cuerpo JSON
  • Marcador FUZZ para puntos de inyección arbitrarios: coloca FUZZ en cualquier valor de --header o --data
  • Codificación Base64 para endpoints que decodifican rutas de archivo (--base64)
  • Detección automática del sistema operativo con opción de restringir escaneos posteriores
  • Comparación heurística de respuestas con filtrado por código de estado para reducir falsos positivos
  • Inyección dinámica de casos: analiza /etc/passwd para archivos del directorio personal, mysql-bin.index para archivos binlog
  • Múltiples formatos de salida: texto (rich), JSON, CSV (--output-format)
  • Soporte de reanudación/checkpoint para escaneos de larga duración (--resume-file)
  • Archivos de configuración TOML para ajustes persistentes (--config)
  • Múltiples técnicas de bypass de traversal: prefijos, sufijos, multiplicador, sustitución de barras, doble codificación
  • Soporte de proxy HTTP/HTTPS y SOCKS5 con validación
  • Soporte de User-Agent, cookie y cabecera aleatorios o personalizados
  • Redacción de credenciales en el banner, el registro y la salida legible por máquina (incluidos valores numéricos y booleanos del cuerpo JSON)
  • Artefactos sensibles protegidos con permisos 0600 solo para el propietario en POSIX y protección de symlinks en el componente final cuando el sistema operativo lo soporta
  • Autoactualización con verificación remota de URL (--update)

Requisitos

  • Python 3.10+
  • Git
  • Dependencias: httpx[socks], rich, rich-argparse y tomli en Python 3.10

Instalación

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

En el Símbolo del sistema de Windows, activa con .venv\Scripts\activate.bat; en PowerShell, usa .venv\Scripts\Activate.ps1. La instalación editable mantiene Panoptic vinculado a este checkout para --update, así que conserva el directorio en su lugar. No ejecutes pip install panoptic: ese nombre en PyPI pertenece a un proyecto no relacionado.

Para desarrollo:

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

Uso

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

Ejemplos

LFI básico basado en parámetros

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

Inyección de datos POST

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

LFI basado en ruta

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

Parámetro codificado en Base64

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

Inyección en cookie (marcador FUZZ)

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

Inyección en cuerpo JSON (marcador FUZZ)

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

Inyección en cabecera personalizada (marcador FUZZ)

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

Parámetro de extensión

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

Bypass de filtro con prefijo

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

Escaneos filtrados

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

Salida JSON con soporte de reanudación

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

Proxy con errores SSL ignorados

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

Listar filtros disponibles

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

Escaneo exhaustivo

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

Marcador FUZZ

Coloca FUZZ en cualquier valor de --header o --data para marcar el punto de inyección. Panoptic reemplaza FUZZ con cada ruta de archivo durante el escaneo. Esto permite probar puntos de inyección a los que --param no puede acceder:

Tipo de inyecciónEjemplo
Valor de cookie--header "Cookie: theme=FUZZ"
Cabecera personalizada--header "X-Include: FUZZ"
Cuerpo JSON--data '{"template":"FUZZ"}'
Valor anidado--header "Cookie: sid=abc; lang=FUZZ"

Cuando FUZZ está presente, --param no es obligatorio.

Configuración

Panoptic admite archivos de configuración TOML para ajustes persistentes:

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

Ubicación predeterminada de la configuración: ~/.config/panoptic/config.toml (se carga automáticamente si existe, incluso sin --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"]

Prioridad: argumentos CLI > archivo de configuración > valores predeterminados integrados.

Opciones de destino y salida soportadas por la configuración

La tabla [defaults] acepta cualquier opción de escaneo, no solo ajustes de rendimiento. En particular, puedes persistir:

  • url — el destino predeterminado (anula por ejecución con --url)
  • output_format, output_file — dónde van los resultados legibles por máquina
  • log_file — refleja la salida de consola en un archivo
  • resume_file — ubicación del checkpoint para escaneos reanudables
Descargar herramienta