← Tornar als articles
Seguretat· 2 min de lectura

Lectura fora de límits a libXpm: OpenBSD ho corregeix amb l'errata 032 (CVE-2026-4367)

El 21 d’abril de 2026 el projecte OpenBSD va publicar l’errata 032 per a la branca 7.8 (i la 038 per a la 7.7) amb una correcció de seguretat a libXpm, la biblioteca que llegeix i escriu imatges en format XPM (X PixMap). El defecte, registrat com a CVE-2026-4367, és una lectura fora de límits que es dispara en processar un fitxer XPM manipulat.

Què és CVE-2026-4367

libXpm forma part de les biblioteques clients de X.Org i la fan servir molts programes que carreguen icones o imatges en format XPM, un format de text pla antic però encara present en entorns d’escriptori i aplicacions X11. El problema és en com la biblioteca interpreta la capçalera i les dades de color d’un fitxer XPM. Si aquests camps no encaixen amb la mida real de les dades, el codi d’anàlisi llegeix més enllà del buffer reservat.

Una lectura fora de límits per si sola no permet escriure a memòria ni injectar codi, però sí que pot exposar contingut de memòria adjacent o, més habitualment, fer caure l’aplicació que obre la imatge. Per això OpenBSD ho classifica com a severitat mitjana i no com a crítica: l’escenari realista és la denegació de servei de l’aplicació afectada o la fuita de fragments de memòria, no l’execució directa de codi.

A qui afecta

Afecta OpenBSD 7.7 i 7.8 que tinguin instal·lada la libXpm del sistema base. El risc apareix quan un programa que enllaça amb libXpm obre un XPM d’origen no fiable: un fitxer descarregat, un adjunt, un recurs carregat per una aplicació X11. No és un defecte explotable de forma remota sense interacció; algú ha d’aconseguir que obris o processis la imatge maliciosa.

Convé recordar que libXpm és codi compartit entre les distribucions que empaqueten X.Org, així que vulnerabilitats d’aquest tipus solen tenir pegats paral·lels en altres sistemes. A OpenBSD el vector preferent sempre és el mateix: aplicar l’errata oficial.

Com mitigar-ho

La correcció arriba com a errata signada pel projecte. En un sistema amb syspatch disponible, n’hi ha prou amb:

doas syspatch

Això descarrega i instal·la el pegat de l’errata 032 (a 7.8) o 038 (a 7.7) sense recompilar. Després d’aplicar-lo, reinicia les aplicacions que tinguessis obertes perquè carreguin la biblioteca actualitzada. Si construeixes el sistema des de les fonts, sincronitza l’arbre amb la branca d’errates i reconstrueix libXpm.

Aquesta mateixa tanda d’abril va incloure una altra correcció relacionada: un desbordament de buffer a slaacd(8), el dimoni d’autoconfiguració d’adreces IPv6. Si passes syspatch, totes dues correccions entren d’una sola vegada.

Si treballes amb OpenBSD i el seu servidor X, et pot interessar el repàs a les vulnerabilitats del servidor X que va corregir l’errata 037, de la mateixa branca 7.8. I per entendre per què aquest projecte persegueix aquests errors amb tant de detall, tens el nostre article sobre OpenBSD i la cultura de la seguretat.

Font