Saltar al contenido
MENTEDEHACKERS | Cybersecurity | AI | Tech | News

OpenSSL corrige vulnerabilidad HollowByte que causa DoS por agotamiento de memoria

97 vistas

OpenSSL corrige vulnerabilidad HollowByte que causa DoS por agotamiento de memoria
LO ÚLTIMO

OpenSSL solucionó la vulnerabilidad HollowByte que permitía ataques de denegación de servicio agotando la memoria del servidor con cargas maliciosas.

OpenSSL ha corregido silenciosamente una vulnerabilidad crítica llamada HollowByte que permitía a atacantes provocar una denegación de servicio (DoS) mediante el agotamiento de la memoria del servidor antes de iniciar cualquier handshake de seguridad.

Por qué importa: Esta falla afectaba a múltiples aplicaciones y servidores que usan OpenSSL, poniendo en riesgo la disponibilidad de sistemas críticos sin que las defensas tradicionales detectaran el ataque.

Lo esencial

  • HollowByte permitía enviar un payload malicioso de solo 11 bytes para forzar una preasignación de buffer no liberada.
  • El ataque bloqueaba hilos de trabajo esperando datos que nunca llegaban, consumiendo memoria indefinidamente.
  • La vulnerabilidad fue corregida en OpenSSL 4.0.1 y versiones anteriores mediante backport silencioso.

Detalles técnicos de HollowByte

La vulnerabilidad se originaba porque versiones antiguas de OpenSSL preasignaban buffers de recepción basándose en el tamaño declarado en el encabezado de 4 bytes del mensaje handshake, antes de recibir datos reales. Un atacante podía enviar un payload de 11 bytes que indicaba un tamaño mayor, causando una asignación de hasta 131 KB que no se liberaba inmediatamente.

El hilo de trabajo quedaba bloqueado esperando datos que nunca llegaban, y aunque OpenSSL liberaba el buffer, la biblioteca GNU C Library (glibc) retenía la memoria para reutilización, impidiendo que el sistema operativo la recuperara. Esto permitía que múltiples conexiones maliciosas fragmentaran y agotaran la memoria del servidor.

Impacto en sistemas y aplicaciones

En pruebas reales, un sistema con 1 GB de RAM se volvió inoperable tras fragmentar y congelar 547 MB de memoria. En uno con 16 GB, el ataque bloqueó el 25% de la memoria total sin superar límites de conexiones, por lo que defensas estándar no lo detectaban ni mitigaban.

Aplicaciones y servidores populares como Apache, NGINX, Node.js, Python, Ruby, PHP, MySQL y PostgreSQL que dependen de OpenSSL estaban expuestos a este riesgo hasta actualizar a versiones parcheadas.

Corrección y versiones afectadas

OpenSSL incorporó la solución en la versión 4.0.1 y la aplicó silenciosamente a versiones anteriores 3.6.3, 3.5.7, 3.4.6 y 3.0.21. La corrección consiste en aumentar el tamaño del buffer solo conforme llegan los bytes reales, sin confiar en el tamaño declarado en el handshake.

OpenSSL corrige vulnerabilidad HollowByte que causa DoS por agotamiento de memoria, imagen 2
Imagen de referencia: SecurityWeek.

Esta mejora evita la preasignación excesiva y el bloqueo indefinido, mitigando el riesgo de agotamiento de memoria y denegación de servicio.

Preguntas frecuentes sobre HollowByte

¿Qué es HollowByte?

Es una vulnerabilidad de denegación de servicio en OpenSSL que permite agotar la memoria del servidor mediante cargas maliciosas que explotan la preasignación de buffers.

¿Cómo afecta a los sistemas?

Ataca servidores y aplicaciones que usan OpenSSL, bloqueando hilos y consumiendo memoria hasta dejar el sistema inoperativo, sin ser detectado por límites de conexiones.

Fuente original: SecurityWeek.

Compartir:

Deja un comentario

Tu correo no se publicará. Los campos obligatorios están marcados *

Artículos relacionados