Una vulnerabilidad en Bash afecta a OS X y Linux

Escrito por Rubén Velasco
Seguridad
1

Normalmente estamos acostumbrados a ver fallos y vulnerabilidades en los diferentes sistemas operativos, sin embargo, en esta ocasión hemos ido un poco más lejos y se ha reportado una vulnerabilidad en un completo lenguaje de programación como es Bash que al procesar de forma incorrecta las variables permite ejecutar código de forma remota en los servidores y equipos.

Una nueva vulnerabilidad se ha descubierto y registrado hace pocas horas en el Bash de los sistemas Unix, incluidos tanto los sistemas Linux como Mac OS X. Este fallo permite ejecutar comandos de forma remota debido al fallo en el proceso de variables de entorno si se explota correctamente la vulnerabilidad. Como cualquier otro lenguaje de programación, Bash permite declarar variables para trabajar con él, sin embargo dichas variables no son validadas correctamente pudiendo declararse mal y permitiendo así la ejecución de contenido que no debería hacerlo en los sistemas vulnerables.

Los principales servicios afectados por esta vulnerabilidad son:

  • Páginas web con CGIs fácilmente localizables desde Google.
  • Ejecución de comandos de forma remota a través de SSH.
  • Otros CGIs como PHP o Perl, entre otros.
  • Clientes DHCP con shells.
  • Sistemas que hagan uso del shell para determinadas funciones.
  • Sistemas operativos móviles que ejecuten scripts de Bash como Android.
  • Más dispositivos que utilizan Linux en segundo plano como televisores, routers, etc.

bash_vulnerabilidad_foto

Podemos ver un ejemplo de la vulnerabilidad en el siguiente ejemplo. En un principio el código escrito únicamente debería ejecutar uno de los comandos, el que se encuentra dentro de la función, sin embargo, una vez que termina de leer la función esta no se cierra correctamente y continúa ejecutando todo el código contenido en ella.

aramosf@digitalsec:~$ VAR="() { echo 'Hola mundo'; }; echo 'Adios mundo'" bash -c "echo Prueba"
Adios mundo
Prueba

Sin duda una vulnerabilidad bastante importante y que dará mucho de qué hablar en los próximos días. Habrá que esperar a que todos los fabricantes y desarrolladores lancen un parche que solucione esta vulnerabilidad en todos los equipos. En los sistemas mejor mantenidos ya está llegando la solución a través de los gestores de actualizaciones, sin embargo, los sistemas poco mantenidos probablemente nunca lleguen a recibir dicho parche de seguridad y sigan estando siempre vulnerables.

¿Qué opinas de esta vulnerabilidad tan grave que ha afectado a la mayor parte de los sistemas Unix?

Fuente: SecurityByDefault