SHELLSHOCK, LA GRAVE
VULNERABILIDAD EN BASH. TODO LO QUE DEBES SABER

Es
por eso que hemos preparado este post, para tratar de responder a
las preguntas que se podrían estar haciendo en estos momentos y empezando por
lo más básico.
¿Qué es Bash?
Bash
es el intérprete de comandos más utilizado en GNU/Linux y
muchos otros sistemas basados en UNIX como Android y Mac
OS X. Su tarea consiste en interpretar los comandos que un usuario
ejecuta, iniciando y deteniendo procesos, por ejemplo. Así es como los
administradores de sistemas manejan habitualmente sus servidores, aunque sin
dejar de lado a la siempre cómoda interfaz gráfica a base de ventanas.
No
obstante, Bash es mucho más que un simple intérprete de comandos. También
permite ejecutar operaciones en un servidor GNU/Linux que podríamos considerar
como críticas, operaciones que van desde la planificación de tareas
a las siempre necesarias actualizaciones del sistema y sus aplicaciones.
¿Que dispositivos utilizan Bash?
Como
parte de muchos sistemas basados en UNIX, Bash está presente en una gran
cantidad de dispositivos que utilizamos a diario, no solamente servidores y
ordenadores de escritorio o portátiles (ya utilicen alguna distribución de
GNU/Linux o Mac OSX). Pensemos por ejemplo en los millones de dispositivos
Android. También se puede usar un intérprete de comandos en ellos aunque es
algo que pocos usuarios hacen.
Si
tenemos en cuenta otros dispositivos como los routers o todo
tipo de dispositivos que conforman el Internet de las Cosas, el número de estos aumenta hasta una cantidad muy elevada.
Sistemas de entretenimiento, Smart TVs, electrodomésticos como neveras o
incluso sistemas domóticos suelen incorporar como sistema operativo alguna
variante de UNIX que normalmente contiene Bash.
¿En qué consiste la vulnerabilidad Shellshock?
Primero
vamos a aclarar que el nombre oficial de esta vulnerabilidad es GNU Bash Remote Code Execution
Vulnerability (CVE-2014-6271) y está considerada como grave,
tal y como sucedió conHeartbleed, ya que permitiría la ejecución
remota de código y así obtener el control de un ordenador.
El
problema con esta vulnerabilidad se viene produciendo porque Bash permite
declarar funciones (algo que tampoco es extraño y entra dentro de lo normal),
pero estas no se validan de forma correcta cuando se almacenan
en una variable. En otras palabras: Bash se pasa de la raya, extralimita sus
funciones y sigue ejecutando código a pesar de haber finalizado de procesar la
función.
¿Se puede utilizar esta vulnerabilidad con
fines maliciosos?
Todas
las vulnerabilidades pueden usarse con fines maliciosos en mayor o menor
medida. En estos momentos nos encontramos en la fase de averiguar qué puede
romperse con Shellshock. Ya sabemos que aquellos scripts CGI
corriendo en Apache pueden verse afectados, pero en teoría
también pueden crearse muchos otros exploits que podrían ser
aprovechados por atacantes y ser incluidos en exploit kits.
Desde Alien Vault han empezado a observar ataques que
intentan aprovechar esta vulnerabilidad, principalmente ataques que intentan
detectar si un sistema es vulnerable lanzado un comando ping y
esperando la respuesta. No obstante, también han observado que algunos
atacantes están usando Shellshock para instalar dos tipos de código
malicioso en los sistemas vulnerables.
Estas
primeras muestras de malware se centran en recopilar
información de los sistemas infectados pero también los conectan a un Centro de Comando y Control (C&C) en poder de los atacantes,
permitiéndoles lanzar comandos remotos y probar un ataque
de fuerza bruta contra las contraseñas de usuarios con
privilegios, y obtener así el control del sistema.
Este
es solo un ejemplo de ataques que ya se están produciendo, pero solo son la
punta del icebergde lo que podríamos ver en las próximas semanas si
no se toman las medidas adecuadas.
¿Cómo se soluciona este problema?
Una
vez conocida la vulnerabilidad y sus consecuencias, muchos usuarios estarán
preguntándose cómo les afecta a ellos. Por si aún queda algún despistado que se
lo pregunta, Windows no se ve afectado, pero esto no es excusa
para bajar la guardia puesto que es muy probable que utilice algún otro
dispositivo que sea vulnerable como routers, móviles Android u otro
tipo de dispositivos conectados a Internet y de los cuales desconozca su
sistema operativo -aunque muy probablemente sea una variación de GNU/Linux o
esté directamente basado en UNIX.
La
mayoría de distribuciones importantes de GNU/Linux han lanzado o están a punto
de lanzaractualizaciones tanto para sistemas de escritorio como
servidores que solucionan el problema, por lo que, si se encargan de tener sus
sistemas actualizados, no deberían tener mayores dificultades.
El
verdadero problema radica en aquellos sistemas que no se actualizan, bien
porque no hay nadie que los mantenga o porque se trata de sistemas incrustados
en dispositivos que no están preparados para recibir actualizaciones o el
fabricante ha dejado de publicarlas para ciertos modelos.
La
mayoría de estos equipos están y seguirán estando conectados a Internet durante
un buen tiempo, lo que les convierte en un objetivo muy atractivo para los
delincuentes. En ese caso, los usuarios más avanzados pueden dedicar unas horas
de esfuerzo a revisar el firmware del router, por
ejemplo, e instalar uno alternativo que sea compatible.
Conclusión
La
publicación de esta vulnerabilidad ha servido para que una gran cantidad de
usuarios cierren una puerta de entrada a los atacantes que llevaba
mucho tiempo abierta. No obstante, queda aún por resolver la problemática sobre
cómo actualizar los millones de dispositivos que conforman el “Internet de las
cosas” y que seguirán siendo potencialmente vulnerables durante un tiempo.
Para más información: http://www.welivesecurity.com/la-es/2014/09/26/shellshock-grave-vulnerabilidad-bash/
No hay comentarios:
Publicar un comentario