Le 20 mai 2026, les développeurs de FreeBSD ont annoncé avoir corrigé sept nouvelles vulnérabilités dans le système. Elles ne présentent pas toutes le même niveau de dangerosité, mais certaines sont particulièrement préoccupantes.
CVE-2026-45251 — use-after-free dans des appels système similaires à select, si leur liste d'attente contient des descripteurs de processus (dans FreeBSD 15 — de nouveaux descripteurs de jail), et ces descripteurs ont été fermés dans un autre thread alors que l'appel système attendant était encore en attente. Selon ce commit, des descripteurs liés à netmap (pilote d'accès direct accéléré au adaptateur réseau) sont également affectés, mais aucune information officielle n'est disponible à ce sujet. Les descripteurs de processus sont apparus dans FreeBSD 9, donc la vulnérabilité existe probablement depuis. Le communiqué officiel indique que la vulnérabilité permet d'obtenir des privilèges de superutilisateur. Il n'existe aucune possibilité de la neutraliser sans patch/mise à jour.
CVE-2026-45250 — calcul incorrect de la taille du tampon et écriture subséquente hors du tampon dans l'appel système setcred, même si setcred nécessite lui-même des privilèges root, la corruption de la pile se produit avant que les privilèges ne soient vérifiés et est donc accessible à tous. Cet appel système est apparu dans FreeBSD 14.3 (c'est-à-dire que les versions antérieures ne sont pas affectées) et permet d'installer tous les identifiants d'utilisateur et de groupe du processus courant en un seul appel, au lieu de combinaisons de setuid+setgid+setgroups et autres. La vulnérabilité permet l'exécution de code malveillant dans le contexte du noyau. Il n'existe aucune possibilité de la neutraliser sans patch/mise à jour.
CVE-2026-45252 — absence de vérification de la présence d'un zéro de fin avant de copier une chaîne provenant du démon fuse dans un nouveau tampon. Cependant, il existe une vérification sur la taille maximale de la copie, et il n'est pas possible de lire plus de 253 octets supplémentaires de la mémoire du noyau. De plus, il est possible d'écrire jusqu'à 250 octets dans l'espace mémoire du noyau non alloué. Par défaut, FreeBSD interdit le montage des systèmes de fichiers par des utilisateurs non-root, donc pour introduire un démon fuse malveillant dans le noyau, il faut être root. Toutefois, si sysctl vfs.usermount=1 — le système devient vulnérable même pour les utilisateurs ordinaires. Il convient également de prendre en compte le danger du démon fuse dans un jail, où il peut être root (mais par défaut, cela est également interdit).
CVE-2026-45253 — Lors de l'utilisation de ptrace, il était possible d'exécuter un appel système avec un numéro incorrect dans le processus débogué, ce qui entraînait l'exécution de code non prévu dans le noyau en tant qu'appel système, avec des conséquences potentiellement graves. Si security.bsd.unprivileged_proc_debug=0 est configuré (ce qui est une bonne pratique pour les serveurs de toute façon, et l'installateur du système propose même de le faire en option), les processus utilisateurs et en prison ne pourront pas utiliser ptrace et ainsi la vulnérabilité ne sera accessible qu'à l'utilisateur root.
CVE-2026-45255 — Injection de commandes shell avec des privilèges root dans bsdinstall/bsdconfig à travers les noms de réseaux sans fil malveillants, qui n'étaient pas échappés lors de l'affichage de leur liste. Pour éviter cette vulnérabilité, il suffit de ne pas consulter la liste des réseaux sans fil depuis bsdinstall/bsdconfig.
CVE-2026-39461, CVE-2026-45254 — Vulnérabilités dans la bibliothèque libcasper (pas dans le noyau). La bibliothèque est conçue pour fournir en toute sécurité des services configurables aux processus placés dans un bac à sable. L'une des vulnérabilités est liée au débordement de tampon dans la pile et à la corruption de la pile en organisant dans cette bibliothèque des descripteurs de fichiers avec de grands numéros (elle était prévue pour des numéros allant jusqu'à 1024 — la limite par défaut des structures pour l'appel système select). La seconde vulnérabilité est la possibilité d'éliminer les listes de restrictions imposées (l'idéologie de la bibliothèque stipule que les restrictions imposées à un processus ne peuvent qu'être renforcées) cap_net.
Les versions corrigées du système sont numérotées : 14.3-RELEASE-p14, 14.4-RELEASE-p5 et 15.0-RELEASE-p9. Il est également important de noter pour certains un point crucial : la version FreeBSD 13.5 a récemment été retirée du support — le 30 avril 2026, et il n'y a plus de corrections officielles pour elle (et pour la branche 13.x en général). Cependant, si pour une raison quelconque vous ne souhaitez pas encore passer à la version 14.x, les patchs pour la version 14.3 conviennent également aux sources de 13.5, et CVE-2026-45250 pour la branche 13 n'est pas pertinent en raison de l'absence de setcred() dans celle-ci.
Source : linux.org.ru
