← Tornar als articles
Seguretat· 3 min de lectura

FreeBSD KTLS: un usuari local pot sobreescriure fitxers i escalar a root (CVE-2026-45257)

El projecte FreeBSD va publicar el 9 de juny de 2026 l’avís FreeBSD-SA-26:26.ktls, que cobreix la vulnerabilitat CVE-2026-45257 a KTLS, la implementació de TLS dins del kernel. El problema permet que un usuari local sense privilegis sobreescrigui el contingut de fitxers sobre els quals només té permís de lectura, i això obre la porta a una escalada de privilegis fins a root.

Què falla exactament

KTLS mou el xifratge i desxifratge de TLS al kernel per estalviar còpies de memòria i millorar el rendiment, sobretot quan es combina amb sendfile(2). A la ruta de recepció, KTLS desxifra cada registre al lloc (in-place): dona per fet que els mbufs que contenen les dades rebudes són anònims i es poden modificar sense conseqüències.

Aquesta suposició no sempre es compleix. Quan sendfile(2) envia memòria recolzada per un fitxer a través d’una connexió loopback sense xifratge KTLS de sortida, les dades que arriben al receptor apunten al contingut real del fitxer, no a una còpia privada. Si l’atacant ha habilitat la recepció KTLS en aquest socket, el desxifratge in-place escriu sobre aquelles pàgines i modifica el fitxer original.

El requisit d’entrada és baix: n’hi ha prou amb tenir permís de lectura sobre el fitxer objectiu i poder obrir una connexió loopback, cosa que qualsevol usuari local pot fer.

A qui afecta i amb quina gravetat

Afecta totes les branques suportades de FreeBSD. L’avís enumera les versions corregides:

  • stable/15 (15.1-STABLE)
  • releng/15.1 (15.1-RC3-p1)
  • releng/15.0 (15.0-RELEASE-p10)
  • stable/14 (14.4-STABLE)
  • releng/14.4 (14.4-RELEASE-p6)
  • releng/14.3 (14.3-RELEASE-p15)

La gravetat és alta. No és execució remota, però la capacitat de sobreescriure fitxers arbitraris amb contingut triat per l’atacant és molt perillosa en un sistema multiusuari: un binari setuid manipulat, un fitxer de configuració del sistema o qualsevol ruta crítica amb permís de lectura per a l’usuari serveixen com a punt de partida per aconseguir privilegis de root. En servidors compartits, jails amb usuaris poc fiables o entorns d’allotjament és just el tipus d’error que convé tancar com més aviat millor.

Com protegir-se

El més recomanable és actualitzar a una versió amb pedaç. Tens tres camins:

  • freebsd-update per als sistemes que fan servir binaris oficials (freebsd-update fetch install i reinici).
  • Reconstruir el kernel des de les fonts amb pedaç si compiles el teu propi sistema.
  • Actualitzar els paquets amb pkg quan correspongui al teu flux de desplegament.

Si no pots aplicar el pedaç de seguida, l’avís ofereix una mitigació: desactivar KTLS del tot amb

sysctl kern.ipc.tls.enable=0

Tingues en compte que això desactiva l’acceleració KTLS a tot el sistema, així que perdràs aquest avantatge de rendiment fins que apliquis la correcció. Després del pedaç, el lògic és tornar a habilitar-lo.

Si administres servidors FreeBSD, aquest és un bon moment per revisar també la resta d’avisos publicats el mateix dia, ja que el 9 de juny va sortir un lot ampli. Pots consultar la fitxa de FreeBSD per veure versions suportades i enllaços als canals de seguretat oficials.

Font