Skip to content
KitploitKITPLOIT
StrumentiExploitsBlog
Log in
Invia
StrumentiExploitsBlog
Invia

Strumenti di Hacking, PenTest e Cybersecurity per il tuo Arsenale di Sicurezza!

Kitploit è una directory di strumenti di hacking, cybersecurity e pentesting. Scopri gli ultimi aggiornamenti dei progetti per trovare vulnerabilità, analizzare sistemi, automatizzare i test e rafforzare la tua sicurezza.

FeedContattoPrivacy© 2026 Kitploit

Directory degli strumenti

Categorie

Vedi tutte le categorie
Loading categories
Panoptic — Panoptic è uno strumento open source di penetration testing che automatizza il processo di ricerca e recupero di contenuti per file di log e configurazione comuni attraverso vulnerabilità di path traversal. | Kitploit
Strumenti/GitHubGitHub/lightos/panoptic
RicognizioneScanner di VulnerabilitàSfruttamento di Applicazioni WebRaccolta InformazioniPenetration Testing
GitHublightos/panoptic

Panoptic

Panoptic è uno strumento open source di penetration testing che automatizza il processo di ricerca e recupero di contenuti per file di log e configurazione comuni attraverso vulnerabilità di path traversal.

Vedi Repository
325743017 giorni faRevisionato da Kitploit

Più Popolari

Vedi tutti →

Scopri gli strumenti più utilizzati dalla nostra community.

Esplora tutti gli strumenti

Sfoglia la nostra collezione di strumenti

Vedi tutti gli strumenti →
Condividi

Panoptic

Panoptic Logo

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

Panoptic è uno strumento open source per il penetration testing che automatizza la ricerca e il recupero di comuni file di log e di configurazione tramite vulnerabilità di path traversal.

Panoptic Demo

Funzionalità

  • Scansione asincrona concorrente con pool di worker configurabile (--concurrency)
  • Scoperta automatica di comuni file di log e configurazione tramite iniezione basata su parametri, su percorso, POST, cookie, header e corpo JSON
  • Marcatore FUZZ per punti di iniezione arbitrari — inserisci FUZZ in qualsiasi valore di --header o --data
  • Codifica Base64 per endpoint che decodificano percorsi di file (--base64)
  • Rilevamento automatico del sistema operativo con opzione per limitare le scansioni successive
  • Confronto euristico delle risposte che ignora token dinamici (token CSRF, nonce, timestamp) e payload riflessi, con filtraggio per codice di stato e stringhe per ridurre i falsi positivi
  • Iniezione dinamica di maiuscole/minuscole — analizza /etc/passwd per i file nella home directory, mysql-bin.index per i file binlog
  • Molteplici formati di output: testo (rich), JSON, CSV (--output-format)
  • Supporto per ripresa/checkpoint per scansioni di lunga durata (--resume-file)
  • File di configurazione TOML per impostazioni persistenti (--config)
  • Molteplici tecniche di bypass del traversal: prefissi, suffissi, moltiplicatore, sostituzione di slash, doppia codifica
  • Supporto proxy HTTP/HTTPS e SOCKS5 con validazione
  • Supporto per User-Agent, cookie e header casuali o personalizzati
  • Oscuramento delle credenziali nel banner, nei log e nell'output leggibile da macchina (inclusi valori numerici e booleani nei corpi JSON)
  • Artefatti sensibili protetti con permessi 0600 riservati al proprietario su POSIX e protezione dai symlink sul componente finale dove il sistema operativo lo supporta
  • Auto-aggiornamento con verifica dell'URL remoto (--update)

Requisiti

  • Python 3.11+ (uv può scaricarlo per te, vedi sotto)
  • Git

Installazione

Installa Panoptic con pipx. Mette il comando panoptic nel tuo PATH e mantiene le dipendenze di Panoptic separate dal Python di sistema.

Su Kali, Debian o Ubuntu:

sudo apt install pipx git
pipx ensurepath
pipx install git+https://github.com/lightos/Panoptic.git

Su macOS, con Homebrew:

brew install pipx git
pipx ensurepath
pipx install git+https://github.com/lightos/Panoptic.git

Su Windows, con Python e Git installati:

py -m pip install --user pipx
py -m pipx ensurepath
py -m pipx install git+https://github.com/lightos/Panoptic.git

Poi apri un nuovo terminale e verifica che funzioni:

panoptic --version

Aggiorna con pipx upgrade panoptic. Non eseguire pip install panoptic: quel nome su PyPI appartiene a un progetto non correlato.

Con uv

Se il Python di sistema è precedente alla versione 3.11 (ad esempio su Ubuntu 22.04), usa uv invece. Scarica da solo una versione di Python adeguata:

curl -LsSf https://astral.sh/uv/install.sh | sh
source "$HOME/.local/bin/env"
uv tool install git+https://github.com/lightos/Panoptic.git

Poi apri un nuovo terminale ed esegui panoptic --version. Aggiorna con uv tool upgrade panoptic.

Da un checkout git

Per eseguire Panoptic da un clone, ad esempio per lavorarci, installalo in un ambiente virtuale all'interno del checkout. Su Debian e Ubuntu, questo richiede prima sudo apt install python3-venv.

git clone https://github.com/lightos/Panoptic.git
cd Panoptic
python3 -m venv .venv
.venv/bin/python -m pip install -e ".[dev]"
.venv/bin/panoptic --version

Eseguilo come .venv/bin/panoptic, oppure esegui source .venv/bin/activate in ogni nuovo terminale per usare direttamente panoptic e python panoptic.py. Su Windows, usa invece .venv\Scripts\python e .venv\Scripts\panoptic. L' installazione in modalità editable mantiene Panoptic collegato al checkout, così panoptic --update può aggiornarlo sul posto.

Utilizzo

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

Esempi

LFI di base basato su parametri

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

Iniezione di dati POST

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

LFI basato sul percorso

Il percorso del file sostituisce l'ultimo segmento del percorso dell'URL. Le sequenze di traversal come ../ vengono inviate esattamente come scritte. Panoptic non le normalizza, sebbene il server di destinazione possa farlo.

panoptic --url "http://target/view.php/test.txt" --path-based
panoptic --url "http://target/files/view/test.txt" --path-based \
  --prefix "../" --multiplier 6

Parametro codificato in Base64

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

Iniezione di cookie (marcatore FUZZ)

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

Iniezione nel corpo JSON (marcatore FUZZ)

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

Iniezione di header personalizzati (marcatore FUZZ)

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

Parametro dell'estensione

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

Bypass del filtro con prefisso

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

Traversal codificato (bypass WAF / decodifica singola)

I prefissi vengono inviati esattamente come forniti, quindi le sequenze di traversal codificate raggiungono il target senza modifiche. Ad esempio, in ..%252f i punti sono letterali e solo la barra è doppiamente codificata: la prima decodifica trasforma %252f in %2f, quindi un filtro che decodifica una sola volta non vede alcun ../, e una seconda decodifica da parte dell'applicazione lo trasforma in /:

panoptic --url "http://target/files/view/test.txt" --path-based \
  --prefix "..%252f" --multiplier 6

Un prefisso codificato una sola volta come %2e%2e%2f diventa ../ dopo una decodifica. È utile solo contro i filtri che ispezionano la richiesta grezza, non decodificata:

panoptic --url "http://target/include.php?file=test.txt" \
  --prefix "%2e%2e%2f" --multiplier 6

Scansioni filtrate

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