Pasar al contenido principal

Docker: Runc afectado por una nueva vulnerabilidad

Imagen Blog Runc

Ha salido a la luz pública una nueva vulnerabilidad descubierta por los investigadores de seguridad Adam Iwaniuk y Borys Poplawski, la cual afecta directamente a Runc, lo que permite a los atacantes el acceso sin restricción alguna a los servidores, la cual puede afectar a los contenedores Docker.

Esta nueva vulnerabilidad cuyo código es CVE-2019-5736, posibilita a los atacantes saltarse los contenedores de Linux, logrando tener acceso total a los mismos.

 

¿Qué es Runc en Docker?

Es una herramienta de líneas de comando de código abierto, la cual se encarga de hacer la parte más difícil del trabajo, como lo es generar y ejecutar contenedores de Linux, de igual manera representa el tiempo de ejecución para Kubernetes, Docker y diferentes programas dependientes del contenedor.

Herramientas como Docker, CRI-O y Containerd se ubican en la parte superior de Runc para hacer otro tipo de actividades como lo son el formateo y serialización de datos, donde Runc representa el corazón de todos esos sistemas.

Runc es en la actualidad ampliamente utilizado por la mayoría de contenedores en todo el mundo, si se está utilizando un contenedor, lo más probable es que se esté ejecutando bajo Runc.

 

¿Cuál es la vulnerabilidad?

Aunque la mayoría de sus detalles están prohibidos para evitar que las personas puedan parchearlo, aparentemente cuando se ejecuta un proceso específico como root (UID 0) dentro del contenedor, este puede arrojar un error de funcionamiento.

Dicho error permite crear un root en la máquina que ejecuta el contenedor, lo que posibilita el acceso al host con permisos totales sin restricción alguna.

Para hacer esto posible solo se necesita de un contenedor malicioso, cuya función es sobre-escribir el código binario Runc de la máquina host, para que luego el usuario acceda al mencionado contenedor.

 

¿En qué afecta la vulnerabilidad CVE-2019-5736 a Docker?

Este fallo de seguridad afecta de igual manera a otros productos de Docker que trabajan con Runc. De la misma forma también logra afectar al LXC, lo que da la posibilidad de tener acceso a la máquina que funciona como host con permisos de superusuario.

Sin embargo, uno de los principales riesgos de seguridad sobre los contenedores, son los ataques que puede recibir un contenedor con un virus o programa malicioso, el cual podría atacar el sistema host y causar graves daños o robo de información; con la vulnerabilidad CVE-2019-5736, esto es totalmente posible.

En otras palabras, esta falla podría romper por completo la contención, lo cual afectaría no solo a un contenedor, sino a todo el host del mismo, lo que comprometería a los cientos de contenedores que se ejecutan en él.

Esto la convierte en una vulnerabilidad de gran importancia, que puede afectar un gran número de usuarios alrededor del mundo.

 

¿Cuáles servicios cloud afectan esta vulnerabilidad?

Esta recién descubierta vulnerabilidad afecta a sistemas como Ubuntu y Debian, además también logra afectar a la mayoría de servicios cloud como Amazon AWS, Google Cloud, Docker y Kubernetes.

 

¿Cómo proteger Docker de la vulnerabilidad CVE-2019-5736?

Las vulnerabilidades son más comunes de lo que se cree, por ende en algunas ocasiones estas pueden poner en peligro el buen funcionamiento de cualquier sistema o perder información valiosa almacenada en los mismos.

Es necesario tomar las acciones pertinentes para evitar cualquier fallo o vulnerabilidad de este tipo, y las actualizaciones son tal vez una de los factores más importantes para ello.

 

Las actualizaciones: más importantes de lo que se cree

Aunque dichos errores pueden ser resueltos a través de parches, es necesario tratar de prevenir cualquier ataque a nuestros sistemas, ello se logra manteniendo todos los equipos actualizados con las últimas versiones.

Además, cada vez que salga a la luz una nueva actualización de seguridad, debes asegurarte de instalar o actualizar los dispositivos que se encargan de ello, de esta manera podrás proteger a Docker de cualquier ataque por hackers o delincuentes.

 

¿Cuál es la solucion mas rapida?

La solución más rápida y fácil a este fallo es parchear Runc lo más pronto posible, ya que a través de dicho parche se puede corregir esta vulnerabilidad y con ello proteger tus sistemas.

Ya los servicios de Amazon AWS han sacado los parches necesarios para hacer estas correcciones, así como también lo han hecho otros servicios como Docker y Kubernetes.

Si su organización tiene interés en conocer y trabajar con tecnologías como Amazon AWS, Docker o Kubernetes , lo invitamos a contactarnos.