Faille de sécurité CVE-2024-23112 : Un contournement d'autorisation dans FortiOS et FortiProxy
🚨 Faille CVE-2024-23112 : Contournement d’autorisation dans FortiOS et FortiProxy (CWE-639)
ybermenaces évolue sans cesse, obligeant les organisations à rester vigilantes face aux failles de sécurité. Une vulnérabilité récemment identifiée, référencée CVE-2024-23112, affecte les versions de FortiOS et FortiProxy. Cette faille repose sur une clé contrôlée par l’utilisateur, exploitant le CWE-639, un contournement d’autorisation critique.
🔍 Détail de la vulnérabilité
Produits impactés :
-
FortiOS : 7.4.0 à 7.4.1, 7.2.0 à 7.2.6, 7.0.1 à 7.0.13, 6.4.7 à 6.4.14
-
FortiProxy : 7.4.0 à 7.4.2, 7.2.0 à 7.2.8, 7.0.0 à 7.0.14
Vecteur d’attaque :Un utilisateur authentifié peut manipuler une URL pour accéder aux favoris VPN d’un autre utilisateur via une faille d’autorisation insuffisante dans l’interface SSL-VPN.
🧠 Qu’est-ce que CWE-639 ?
CWE-639 (« Authorization Bypass Through User-Controlled Key ») désigne une faiblesse où l’application s’appuie sur des identifiants fournis par l’utilisateur pour déterminer l’accès à des données, sans vérifier correctement les autorisations. Cela permet à un attaquant de modifier ces identifiants pour accéder à des ressources qui ne lui appartiennent pas.
🧪 Comment une attaque CWE-639 se produit-elle ?
-
Identification d’un paramètre contrôlable :L’attaquant identifie un paramètre dans l’URL, un champ de formulaire ou un cookie (ex :
user_id=123
) utilisé pour déterminer quelles données afficher. -
Manipulation de la clé :L’attaquant modifie cette valeur (
user_id=124
) pour cibler un autre utilisateur. -
Soumission de la requête falsifiée :Si l'application ne valide pas que la ressource cible appartient bien à l'utilisateur connecté, elle renvoie les données d’un autre utilisateur.
💥 Exemples concrets
-
Accès aux données d’un autre compte :En changeant l’ID dans une URL comme
/profile?id=123
, un utilisateur peut consulter le profil d’un autre utilisateur. -
Téléchargement de fichiers non autorisés :Modifier
/download?file=doc1.pdf
en/download?file=confidentiel.pdf
. -
Exécution de commandes critiques :Envoyer des identifiants de commande ou de requête modifiés pour interagir avec des fonctionnalités réservées.
⚠️ Impacts potentiels
-
Vol d'informations sensibles : données personnelles, informations financières, documents confidentiels.
-
Perturbation du système : suppression ou modification de données critiques.
-
Élévation de privilèges : un identifiant modifié pourrait donner accès à des fonctions réservées aux administrateurs.
🛡️ Comment s’en protéger ?
-
Validation côté serveur :Toujours vérifier que l’utilisateur connecté est autorisé à accéder à la ressource demandée.
-
Contrôles d’accès renforcés (RBAC) :Implémenter des politiques de sécurité basées sur les rôles et permissions.
-
Utilisation d’ID non prévisibles :Éviter les identifiants incrémentaux (
user_id=1
,user_id=2
, etc.). -
Journalisation et surveillance :Détecter toute tentative d’accès non autorisé par modification de paramètres.
-
Mise à jour régulière des systèmes :Installer les correctifs de sécurité dès qu’ils sont disponibles.
⚙️ Exemple de code vulnérable (C#)
conn = new SqlConnection(_ConnectionString);
conn.Open();int16 id = System.Convert.ToInt16(invoiceID.Text);SqlCommand query = new SqlCommand("SELECT * FROM invoices WHERE id = @id", conn);query.Parameters.AddWithValue("@id", id);SqlDataReader objReader = objCommand.ExecuteReader();
Ce code est vulnérable car il ne vérifie pas que la facture demandée appartient à l’utilisateur connecté. Un attaquant peut ainsi consulter toute facture du système, simplement en modifiant l’identifiant.
🧩 Concepts associés
-
IDOR (Insecure Direct Object Reference) :Terme OWASP désignant le même type de vulnérabilité, souvent dans les API REST.
-
BOLA (Broken Object Level Authorization) :Terme utilisé pour les API où l’autorisation sur chaque objet n’est pas respectée.
-
Élévation de privilèges horizontale vs verticale :
-
Horizontale : un utilisateur accède aux données d’un autre avec le même niveau.
-
Verticale : un utilisateur obtient des droits administrateur ou accède à des fonctions privilégiées.
-
✅ Conclusion
La faille CVE-2024-23112 est une illustration concrète de la vulnérabilité CWE-639, qui demeure l’un des vecteurs d’attaque les plus fréquents dans les applications web et les VPN. Pour les entreprises utilisant FortiOS ou FortiProxy, il est impératif d’appliquer les mises à jour de sécurité publiées par Fortinet, et de renforcer les contrôles d’accès côté serveur pour éviter toute exploitation.
Commentaires
Enregistrer un commentaire