Skip to content
KitploitKITPLOIT
OutilsBlog
Log in
Soumettre
OutilsBlog
Soumettre

Outils de Hacking, PenTest et Cybersécurité pour votre Arsenal de Sécurité !

Kitploit est un répertoire d'outils de hacking, de cybersécurité et de pentesting. Découvrez les dernières mises à jour des projets pour trouver des vulnérabilités, analyser des systèmes, automatiser les tests et renforcer votre sécurité.

··Flux·Contact·Confidentialité·© 2026 Kitploit

Répertoire d'outils

Catégories

Voir toutes les catégories
Loading categories
Panoptic — Panoptic est un outil de test d'intrusion open source qui automatise le processus de recherche et de récupération de contenu pour les fichiers journaux et de configuration courants via des vulnérabilités de traversée de chemin. | Kitploit
Outils/GitHubGitHub/lightos/panoptic
ReconnaissanceScanners de VulnérabilitésExploitation d'Applications WebCollecte d'InformationsTests d'Intrusion
GitHublightos/panoptic

Panoptic

Panoptic est un outil de test d'intrusion open source qui automatise le processus de recherche et de récupération de contenu pour les fichiers journaux et de configuration courants via des vulnérabilités de traversée de chemin.

Voir le dépôt
3257415il y a 2 moisVérifié par Kitploit

Populaires

Voir tout →

Découvrez les outils les plus utilisés par notre communauté.

Explorer tous les outils

Parcourez notre collection d'outils

Voir tous les outils →
Partager

Panoptic

Panoptic Logo

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

Panoptic est un outil open source de test d'intrusion qui automatise la recherche et la récupération de fichiers journaux et de configuration courants via des vulnérabilités de traversée de chemin.

Panoptic Demo

Fonctionnalités

  • Analyse asynchrone concurrente avec un pool de travailleurs configurable (--concurrency)
  • Découverte automatique des fichiers journaux et de configuration courants via l'injection par paramètre, par chemin, POST, cookie, en-tête et corps JSON
  • Marqueur FUZZ pour des points d'injection arbitraires — placez FUZZ dans n'importe quelle valeur --header ou --data
  • Encodage Base64 pour les points de terminaison qui décodent les chemins de fichiers (--base64)
  • Détection automatique du système d'exploitation avec option de restriction des analyses ultérieures
  • Comparaison heuristique des réponses avec filtrage par code de statut pour réduire les faux positifs
  • Injection dynamique de cas — parse /etc/passwd pour les fichiers du répertoire personnel, mysql-bin.index pour les fichiers binlog
  • Plusieurs formats de sortie : texte (rich), JSON, CSV (--output-format)
  • Prise en charge de la reprise/des points de contrôle pour les analyses de longue durée (--resume-file)
  • Fichiers de configuration TOML pour les paramètres persistants (--config)
  • Plusieurs techniques de contournement de traversée : préfixes, postfixes, multiplicateur, remplacement des barres obliques, double encodage
  • Prise en charge des proxys HTTP/HTTPS et SOCKS5 avec validation
  • Prise en charge d'un User-Agent, de cookies et d'en-têtes aléatoires ou personnalisés
  • Masquage des identifiants dans la bannière, les journaux et la sortie lisible par machine (y compris les valeurs numériques et booléennes du corps JSON)
  • Artefacts sensibles protégés par des permissions 0600 réservées au propriétaire sur POSIX et protection du lien symbolique du composant final là où l'OS le prend en charge
  • Mise à jour automatique avec vérification de l'URL distante (--update)

Prérequis

  • Python 3.10+
  • Git
  • Dépendances : httpx[socks], rich, rich-argparse et tomli sur Python 3.10

Installation

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

Dans l'invite de commandes Windows, activez avec .venv\Scripts\activate.bat ; dans PowerShell, utilisez .venv\Scripts\Activate.ps1. L'installation modifiable (editable) maintient Panoptic connecté à ce dépôt pour --update ; conservez donc le répertoire en place. N'exécutez pas pip install panoptic : ce nom PyPI appartient à un projet sans rapport.

Pour le développement :

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

Utilisation

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

Exemples

LFI de base basée sur un paramètre

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

Injection de données POST

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

LFI basée sur le chemin

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

Paramètre encodé en Base64

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

Injection de cookie (marqueur FUZZ)

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

Injection dans le corps JSON (marqueur FUZZ)

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

Injection d'en-tête personnalisé (marqueur FUZZ)

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

Paramètre d'extension

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

Contournement de filtre avec préfixe

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

Analyses filtrées

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

Sortie JSON avec prise en charge de la reprise

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

Proxy avec erreurs SSL ignorées

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

Lister les filtres disponibles

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

Analyse complète

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

Marqueur FUZZ

Placez FUZZ n'importe où dans les valeurs --header ou --data pour marquer le point d'injection. Panoptic remplace FUZZ par chaque chemin de fichier pendant l'analyse. Cela permet de tester des points d'injection que --param ne peut pas atteindre :

Type d'injectionExemple
Valeur de cookie--header "Cookie: theme=FUZZ"
En-tête personnalisé--header "X-Include: FUZZ"
Corps JSON--data '{"template":"FUZZ"}'
Valeur imbriquée--header "Cookie: sid=abc; lang=FUZZ"

Lorsque FUZZ est présent, --param n'est pas requis.

Configuration

Panoptic prend en charge les fichiers de configuration TOML pour les paramètres persistants :

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

Emplacement de configuration par défaut : ~/.config/panoptic/config.toml (chargé automatiquement lorsqu'il est présent, même sans --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"]

Priorité : arguments CLI > fichier de configuration > valeurs par défaut intégrées.

Options de cible et de sortie prises en charge par la configuration

La table [defaults] accepte toute option d'analyse, pas seulement le réglage des performances. En particulier, vous pouvez conserver :

Télécharger l’outil