Date de divulgation : 2 octobre 2024
Date d'ajout à la CISA KEV : N/A
CVE-2024-46538 est une vulnérabilité XSS (cross-site scripting) stockée identifiée dans la version 2.5.2 de pfSense. Cette vulnérabilité permet aux attaquants d'exécuter des scripts web arbitraires ou du HTML via une charge utile élaborée injectée dans le fichier $pconfig dans la variable interfaces_groups_edit.php dans le fichier interfaces_groups_edit.php. Le problème provient d'une vérification insuffisante des entrées, ce qui permet aux attaquants de stocker une charge utile malveillante qui pourrait être activée ultérieurement.
Une preuve de concept (PoC) disponible sur GitHub, créée par EQSTLab, illustre comment cette vulnérabilité XSS stockée peut être exploitée dans pfSense 2.5.2. Lorsqu'un administrateur visite la page vulnérable contenant l'élément injecté $pconfig injecté, le JavaScript s'active et déclenche l'exécution d'une commande arbitraire sur le fichier diag_command.php . Ce JavaScript peut manipuler des données de formulaire sur diag_command.phpen exécutant des commandes qui peuvent exposer des informations sensibles sur le système.
pfSense est un logiciel libre de pare-feu et de routeur, utilisé par les organisations pour protéger les limites de leur réseau. Certaines installations sont directement exposées à l'internet pour l'accès à distance ou la surveillance du réseau. Dans la version 2.5.2, comme dans les autres versions de pfSense, les administrateurs peuvent exposer par inadvertance l'interface web, SSH ou d'autres services sur des adresses IP publiques, ce qui les rend accessibles (et potentiellement vulnérables) à des menaces externes.
Portail web pfSense exposé
Champ d'application |
Détails |
CVE-ID |
CVE-2024-46538 - CVSS 9.8 (Critique) attribué par VulnCheck |
Description de la vulnérabilité |
Une vulnérabilité de type cross-site scripting (XSS) dans pfsense v2.5.2 permet aux attaquants d'exécuter des scripts web arbitraires ou du HTML via une charge utile élaborée injectée dans le fichier $pconfig dans la variable interfaces_groups_edit.php. |
Date de la divulgation |
2 octobre 2024 |
Actifs touchés |
Charges utiles artisanales injectées dans $pconfig dans la variable interfaces_groups_edit.phpdéclenchant l'exécution d'une commande arbitraire sur le site diag_command.php si la charge utile est activée. |
Versions de logiciels vulnérables |
Version 2.5.2 |
PoC disponible ? |
Oui, ce référentiel d'EQSTLab détaille comment la vulnérabilité peut être exploitée. |
Statut d'exploitation |
À l'heure où nous écrivons ces lignes, ce CVE ne figure pas sur la liste de la CISA des vulnérabilités connues et exploitées, ni dans GreyNoise. |
Statut du patch |
En date du 13 novembre 2024, la version stable la plus récente est la 2.7.2. Cette version inclut des correctifs de sécurité et des améliorations qui corrigent les vulnérabilités connues, y compris CVE-2024-46538. La dernière version stable peut être téléchargée ici. |
Censys Perspective
Au moment de la rédaction du présent document, Censys observait 225,681 instances pfSense exposées en ligne, en filtrant les pots de miel. Une grande partie de ces instances (22%) sont géolocalisées en Russie et hébergées dans les serveurs de TIMEHOST-AS (ASN 212913), un centre de données et un fournisseur d'hébergement. Il convient de noter que tous ces appareils ne sont pas nécessairement vulnérables, étant donné que les versions spécifiques des appareils ne sont pas disponibles.
Carte des instances exposées du portail Web pfSense :
Le graphique ci-dessous présente les 10 pays où les appareils sont les plus exposés.
Censys Requête de recherche :
services.tls.certificates.leaf_data.issuer.common_name:”*pfSense*” or services.software: ((vendor=”pfSense” or vendor=”Netgate”) and product=”pfSense”) and not labels:{tarpit, honeypot}
Censys Requête ASM :
host.services.tls.certificates.leaf_data.issuer.common_name:”*pfSense*” or ((host.services.software.vendor=”pfSense” or host.services.software.vendor=”Netgate”) and host.services.software.product=”pfSense”) and not host.labels:{tarpit, honeypot}
Références