El 2 de febrer de 2026 el projecte OpenBSD va publicar una errata de seguretat que corregeix un error de tipus use-after-free al seu servidor web integrat, httpd(8). La correcció es va distribuir com a errata 013 per a la branca 7.8 i afecta també la versió suportada 7.7.
Què és httpd(8) i on s’utilitza
httpd(8) és el servidor web lleuger que ve dins del sistema base d’OpenBSD. El van dissenyar seguint la filosofia del projecte: codi petit, auditat i amb separació de privilegis mitjançant chroot i privsep. El trobaràs servint llocs estàtics, fent de front-end o com a servidor d’aplicacions senzilles, en entorns on la simplicitat i la robustesa pesen més que la quantitat de funcions. Com que ve integrat al base, moltes instal·lacions d’OpenBSD el fan servir sense afegir res de tercers.
En què consisteix la vulnerabilitat
L’error és un use-after-free: el codi de httpd(8) accedeix a una regió de memòria que ja s’havia alliberat. La condició salta en processar peticions HTTP que utilitzen codificació de transferència chunked (chunked transfer encoding), el mecanisme que permet enviar el cos d’una petició o resposta en fragments sense conèixer-ne per endavant la longitud total.
Els use-after-free entren a la família de fallades de gestió de memòria (CWE-416). En el pitjor dels casos poden acabar en corrupció de memòria, caiguda del servei (denegació de servei) o, segons com es reutilitzi la memòria alliberada, en comportaments no desitjats del procés. L’avís oficial d’OpenBSD descriu la correcció de manera escarida —«Fix a use-after-free in httpd(8) when using chunked encoding»—, fidel al costum del projecte de no donar detalls que facilitin l’explotació abans que la gent apliqui el pedaç.
A qui afecta i gravetat
Queden afectades les instal·lacions d’OpenBSD 7.7 i 7.8 que executin httpd(8) i rebin trànsit capaç d’usar codificació chunked. Com que httpd(8) sol estar exposat a Internet o a xarxes no confiables, qualsevol servidor accessible que serveixi peticions amb cos chunked s’ha de donar per exposat fins que s’apliqui el pedaç.
OpenBSD no va assignar cap identificador CVE a aquesta errata ni va publicar cap puntuació CVSS, cosa freqüent en el seu flux d’erratas. La gravetat es considera alta perquè és una fallada de memòria en un servei de xarxa orientat a Internet, tot i que l’avís no confirma explotació activa ni que l’execució de codi sigui viable.
Mitigació i pedaç
La correcció arriba per l’eina de pedaços binaris d’OpenBSD. Només cal executar, com a administrador:
syspatch
i reiniciar httpd(8) (rcctl restart httpd) perquè el servei carregui el binari corregit. Si ho prefereixes, el projecte publica el pedaç en forma de diff unificat de codi font signat amb signify(1), que pots aplicar i recompilar a mà. L’errata 013 cobreix totes les arquitectures suportades (incloses amd64, arm64 i i386).
Mentre apliques el pedaç, convé limitar l’exposició del servei i comprovar que httpd(8) s’executi amb la seva separació de privilegis i chroot per defecte, una de les proteccions estructurals que el projecte manté justament per contenir fallades d’aquest tipus. Si vols entendre millor l’enfocament de seguretat del projecte, llegeix OpenBSD: cultura de seguretat.