Le lancement de la distribution pour la création de pare-feu OPNsense 26.7 a été annoncé. Celle-ci, qui s'est séparée du projet pfSense en 2015, vise à développer un système totalement ouvert capable de rivaliser avec des solutions commerciales pour le déploiement de pare-feu et de passerelles. Contrairement à pfSense, ce projet est présenté comme indépendant d'une seule entreprise, évoluant avec la participation active de la communauté et ayant un processus de développement totalement transparent, permettant également d'utiliser ses créations dans des produits tiers, y compris commerciaux. Les sources des composants de la distribution ainsi que les outils utilisés pour la construction sont diffusés sous la licence BSD. Les compilations sont disponibles sous forme de LiveCD et d'image système pour l'enregistrement sur des clés USB (490 Mo).
Le cœur de la distribution repose sur le code de FreeBSD. Parmi les fonctionnalités d'OPNsense, on trouve : un outil de construction complètement ouvert, la prise en charge de l'installation sous forme de paquets sur l'édition classique de FreeBSD, des mécanismes d'équilibrage de charge, une interface web pour la connexion des utilisateurs au réseau (Captive portal), des mécanismes de suivi des états de connexion (pare-feu stateful basé sur pf), un système de limitation de bande passante, et un filtrage du trafic. VPN Création sur la base d'IPsec, OpenVPN et PPTP, intégration avec LDAP et RADIUS, prise en charge du DDNS (DNS dynamique), et un système de rapports et de graphiques visuels.
À partir de la distribution, des configurations redondantes peuvent être créées en utilisant le protocole CARP, permettant de lancer, en plus du pare-feu principal, un nœud de secours qui sera automatiquement synchronisé au niveau de la configuration et qui prendra la charge en cas de défaillance du nœud principal. Un interface web est proposée à l'administrateur pour configurer le pare-feu, bâtie à l'aide du framework web Bootstrap et du modèle MVC Phalcon.
Parmi les changements :
- Le passage à la base de code FreeBSD 15.1 a été effectué (l'ancienne version était FreeBSD 14.3).
- Les interfaces pour la configuration des règles des pare-feu, l'attribution des interfaces réseau (séparation entre LAN et WAN) et la gestion des groupes de passerelles ont été repensées pour utiliser le cadre MVC et sont désormais également accessibles via une API Web pour automatiser la gestion de la configuration réseau.
- Un assistant pour migrer les règles de translation d'adresses de l'ancien format de configuration Outbound NAT vers le nouveau format utilisant l'architecture Source NAT (SNAT) a été ajouté.
- Le configurateur KEA DHCP a été mis à jour pour supporter DDNS (Dynamique) et l'allocation automatique de préfixes IPv6 (blocs d'adresses).
- La prise en charge d'IPv6 a été ajoutée au portail captif.
- Les versions de OpenVPN 2.7, PHP 8.5 et Python 3.13 ont été mises à jour.
- Une vulnérabilité critique (CVE-2026-57155, niveau de danger 9.9 sur 10) a été corrigée, permettant à un utilisateur non privilégié sans accès shell et avec un accès limité aux alias (listes de noms de réseaux et d'hôtes) d'exécuter du code avec des droits root. La vulnérabilité est due à un manque de vérifications appropriées lors du traitement des données de la base de données GeoIP liant les pays à... adresses IP.
Le code du pays dans la base de données GeoIP était inséré sans vérification lors de la création du nom de fichier à enregistrer, permettant ainsi de remplacer n'importe quel fichier dans le système, car le processeur s'exécute avec les droits root. Par le biais de l'API Web, un utilisateur non privilégié pouvait spécifier son URL pour télécharger une base de données GeoIP modifiée pour les alias. Pour obtenir les privilèges root, dans l'un des enregistrements de la base de données, il était possible de spécifier « ..\/..\/..\/..\/..\/..\/..\/..\/etc\/newsyslog.conf.d\/zzz_pwn » à la place du code du pays, ce qui entraînait la création d'un fichier de configuration pour le système de rotation des journaux, dans lequel des commandes pouvaient être définies pour être exécutées avec les droits root.
Source : opennet.ru
