
Plateforme open-source de test de sécurité web : proxy, scanner et fuzzer dans une seule CLI. Par Pennacle Security.
Une CLI scriptable unique pour les tests de sécurité web : scanner, proxy, fuzzer, test d'autorisation, analyse de WAF, détection de détournement de liens et reconnaissance.
Gratuit là où les équivalents sont payants - par Pennacle Security.
Nous utilisons Burp et ZAP tous les jours. Nous voulions aussi trois choses qu'ils ne sont pas : un scanner que nous pouvons scripter dans la CI, des résultats qui indiquent leur niveau de certitude, et une base de code suffisamment petite pour être lue d'une seule traite. Summit est cet outil - v0.5, MIT, une seule dépendance (requests), développé ouvertement.
Documentation complète : pennacle-security.github.io/summit
Des capacités qui se trouvent habituellement derrière des outils payants, plus le cœur du scan :
| Capacité | Summit | La voie habituelle |
|---|---|---|
| Test de contrôle d'accès défaillant (BOLA/IDOR) | summit authorize | extension de type Autorize / workflows payants |
| Découverte de paramètres cachés | summit mine | extension de type Param Miner |
| Scan piloté par OpenAPI | summit scan --openapi | extensions |
| Empreinte WAF + sondage de contournement | intégré | partiel / extensions |
| Détection de détournement de liens morts | intégré | extension payante |
| SQLi, XSS, redirection, traversal, takeover, host header, CORS | intégré | scanners de base (gratuits) |
| Chaîne de reconnaissance : subfinder -> httpx -> nmap | summit recon | assemblage manuel |
| Limitation de débit, tentatives, boîte à outils JWT/encodeur | intégré | extensions / payant |
| Prêt pour la CI, résultats étiquetés par confiance | tout l'intérêt | automatisation payante |
Chaque résultat porte une étiquette de confiance : confirmed (un fait observé) ou potential (une heuristique). Cette distinction traverse tout l'outil.
git clone https://github.com/pennacle-security/summit.git
cd summit
pip install -e .
Python 3.10+. Ensuite, observez-le fonctionner contre une cible locale délibérément vulnérable :
python examples/vuln_app.py # terminal 1 - the target (127.0.0.1 only)
summit scan http://127.0.0.1:8765 # terminal 2 - the scan
Une passe plus complète sur un engagement réel se présente comme suit :
summit recon target.com --json recon.json # subdomains -> hosts -> ports
summit scan https://target.com --depth 2 --rate 10 # crawl + all checks
summit scan --openapi api-spec.json # API: scan what the spec admits to
summit authorize https://target.com/admin?user=1 \
--role 'admin=Cookie: session=abc' \
--role 'user=Cookie: session=xyz' # BOLA/IDOR testing
Chaque affirmation sur cette page est reproduite par examples/evidence.py - il exécute la cible de démonstration en direct, mesure chaque fonctionnalité et affiche PASS/FAIL avec les chiffres réels. La CI l'exécute à chaque push ; une affirmation qui cesse de tenir fait échouer le build.
python examples/evidence.py)