OpenSSH 9.9p2 arriba a corregir dues vulnerabilitats MITM crítiques

OpenSSH proporciona un ampli conjunt de capacitats de tunelització segura

Fa pocs dies, Damien Miller (un dels desenvolupadors d'OpenSSH), va donar a conèixer, mitjançant les llistes de correu, el llançament de la versió de manteniment «OpenSSH 9.9p2» que corregeix dues vulnerabilitats crítiques descobertes per Qualys, les quals podien ser explotades per realitzar atacs de tipus Man-in-the-Middle (MITM).

S'esmenta que aquestes falles permetien a un atacant interceptar connexions SSH i enganyar el client perquè acceptés la clau d'un servidor maliciós en lloc de la clau legítima del servidor de destinació.

CVE-2025-26465: Omissió de la verificació de claus a SSH

La primera de les vulnerabilitats que es va solucionar en el llançament d'aquesta versió correctiva és la CVE-2025-26465. Aquesta vulnerabilitat és deguda a un error lògic en la utilitat ssh, que permet a un atacant eludir la verificació de la clau del servidor i executar un atac MITM amb èxit.

Quan un client intenta connectar-se a un servidor SSH, un atacant pot redirigir el trànsit a un servidor fals i fer que el client accepti la clau incorrecta sense advertiments, creient que està connectat al servidor legítim.

A més, aquesta vulnerabilitat:

  • Ha estat present a OpenSSH des de la versió 6.8p1 (desembre de 2014).
  • S'activa quan l'opció VerifyHostKeyDNS està habilitada.
  • A la configuració base d'OpenSSH, aquesta opció està deshabilitada per defecte, però a FreeBSD va estar habilitada fins al març del 2023.

Pel que fa a les causes que ocasionen aquesta fallada, s'esmenta que és perquè la funció verify_host_key_callback() crida a verify_host_key(), però només verifica si el codi d'error tornat és -1, ignorant altres codis d'error com ara -2. Quan verify_host_key() torna -2 quan hi ha insuficient memòria, però a causa de l'omissió del codi d'error, el sistema assumeix erròniament que la clau de host ha estat verificada correctament.

Amb això, un atacant pot explotar aquesta falla creant un servidor SSH fals que enviï una clau de host de grans dimensions (256 KB), cosa que provoca un consum excessiu de memòria al client i activa la condició d'error no manejada.

CVE-2025-26466: fuga de memòria i consum excessiu de CPU a SSH

La segona vulnerabilitat que va ser corregida és la CVE-2025-26466 i aquesta vulnerabilitat afecta tant el client ssh com el servidor sshd, ja que permet esgotar la memòria del procés i generar una alta càrrega de CPU en enviar repetidament paquets SSH2_MSG_PING.

El gran impacte d'aquesta vulnerabilitat és que pot ser explotada sense autenticació i afecta OpenSSH des de la versió 9.5p1 (agost del 2023). A més, permet que un atacant consumeixi recursos del sistema, degradant-ne el rendiment i fins i tot causant una denegació de servei (DoS).

Sobre les causes que ocasionen aquesta fallada, s'esmenta que és perquè cada paquet SSH2_MSG_PING entrant de 16 bytes provoca l'assignació d'un memòria intermèdia de 256 bytes en memòria. Aquest memòria intermèdia no s'allibera fins que es completa l'acord de clau, cosa que genera una fuita de memòria quan s'envien múltiples paquets PING.

Mitigació i solució

Com a solució alternativa, es recomana configurar restriccions a sshd_config usant les següents directives:

  • LoginGraceTime: això limita el temps despera per autenticació.
  • MaxStartups: restringeix la quantitat de connexions no autenticades.
  • PerSourcePenalties: aplica penalitzacions a clients que generen múltiples intents de connexió.

I pel que fa a les solucions, la primera i la més recomanable és actualitzar OpenSSH a la versió llançada, la «9.9p2» com més aviat millor per corregir aquestes vulnerabilitats. Però si l'actualització immediata no és viable, cal aplicar les mesures de mitigació esmentades anteriorment. Addicional a això, es recomana desactivar VerifyHostKeyDNS, tret que s'utilitzin mecanismes de verificació DNSSEC fiables.

si estàs interessat a poder conèixer més sobre això, pots consultar els detalls a el següent enllaç.

Com instal·lar OpenSSH a Linux?

Per als que estiguin interessats en poder instal·lar aquesta nova versió d'OpenSSH en els seus sistemes, de moment podran fer-ho descarregant el codi font d'aquest i realitzant la compilació en els seus equips.

Això és degut al fet que la nova versió encara no s'ha inclòs dins dels repositoris de les principals distribucions de Linux. Per obtenir el codi font, pots fer des el següent enllaç.

Feta la descàrrega, ara anem a descomprimir el paquet amb la següent comanda:

tar -xvf openssh-9.9p2.tar.gz

Entrem a directori creat:

cd openssh-9.9p2

Y podrem realitzar la compilació amb les següents comandes:

./configure --prefix = / opt --sysconfdir = / etc / ssh make make install