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
CVE-2025-64446 — Un scanneur pour la vulnérabilité FortiNet CVE-2025-64446 | Kitploit
Outils/GitHubGitHub/sensepost/cve-2025-64446
Scanners de VulnérabilitésExploitationExploitation d'Applications WebSécurité WebTests d'IntrusionAuthentification
GitHubsensepost/cve-2025-64446

CVE-2025-64446

Un scanneur pour la vulnérabilité FortiNet CVE-2025-64446

Voir le dépôt
3146il y a 10 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

Scanneur de contournement d'authentification FortiWeb

Assistant Python simple pour sonder des cibles Fortinet/FortiWeb pour le motif de contournement d'authentification fwbcgi rapporté par watchTowr Labs. Les informations et les détails des requêtes proviennent de : https://labs.watchtowr.com/when-the-impersonation-function-gets-used-to-impersonate-users-fortinet-fortiweb-auth-bypass/

Utilisation

python3 scanner.py http://192.168.9.1:80
python3 scanner.py -f targets.txt --find-forti --follow-redirects

Les cibles doivent inclure explicitement leur schéma (http:// ou https://). Si le port est omis, le scanner suppose 80 pour HTTP ou 443 pour HTTPS. Il produit une ligne par cible avec [+] VULNERABLE, [+] MAY BE VULNERABLE, [+] PATCHED, [+] POSSIBLY PATCHED, ou [-] INDETERMINATE ; il surligne en option les mots contenant « forti ».

Options

  • targets : une ou plusieurs entrées <scheme>://<host>[:<port>] en ligne de commande (les ports sont 80 par défaut pour HTTP ou 443 pour HTTPS).
  • -f/--targets-file : lit des cibles supplémentaires depuis un ou plusieurs fichiers ; même format <scheme>://<host>[:<port>].
  • --timeout : délai d'expiration de socket en secondes (défaut 5).
  • --find-forti : affiche les jetons uniques contenant « forti » apparus dans le corps de la réponse.
  • --follow-redirects : gestion des redirections en option pour les cibles qui renvoient des réponses 30x.
  • --max-redirects : limite du nombre de sauts de redirection lorsque --follow-redirects est actif (défaut 3, 0 désactive le suivi même si l'option est présente).
  • --validate-tls : force la validation des certificats pour les cibles HTTPS et les redirections (le comportement par défaut ignore la validation pour éviter de bloquer sur les certificats auto-signés).
  • --workers : nombre de scans concurrents à exécuter via asyncio (défaut 10).
  • --user-agent : en-tête HTTP User-Agent personnalisé (défaut fwbcgi-scanner/1.0).
  • --csv-output : écrit des lignes <target>,<classification> dans le fichier CSV donné en plus de la sortie console.

Tests

En raison d'un manque d'infrastructure de test convenable, voici la suite de tests naïve que j'ai utilisée.

PYTHONPYCACHEPREFIX=./.pycache python3 -m unittest discover -s tests

Notes sur Python/OpenSSL

Le scanner repose sur la prise en charge de TLS 1.2+ pour communiquer avec les sites Fortinet ou Cloudflare modernes. Assurez-vous que le python3 que vous exécutez est lié à une version récente d'OpenSSL :

  • macOS : Le Python système (/usr/bin/python3) est lié à LibreSSL 2.8 et ne peut pas négocier TLS 1.3, ce qui provoque des erreurs TLSV1_ALERT_PROTOCOL_VERSION. Installez un interpréteur moderne via Homebrew (brew install python) ou pyenv et exécutez le scanner avec ce binaire (par exemple, /opt/homebrew/bin/python3).
  • Linux : La plupart des Pythons fournis par les distributions sont déjà liés à OpenSSL ≥ 1.1.1. Vérifiez avec python3 - <<'PY'\nimport ssl; print(ssl.OPENSSL_VERSION)\nPY. S'il indique une version plus ancienne, installez un Python à jour (pyenv, rétroports de la distribution, etc.).
  • Windows : Utilisez les téléchargements officiels de python.org (3.11+) qui incluent OpenSSL 3.x. Revérifiez avec le même extrait ssl.OPENSSL_VERSION si vous utilisez WSL ou un environnement virtuel plus ancien.

Si vous devez exécuter le scanner sur un interpréteur plus ancien, attendez-vous à ce que les cibles HTTPS nécessitant TLS 1.3 échouent ; les cibles HTTP continuent de fonctionner quoi qu'il en soit.

Télécharger l’outil