Shellshock (actualización de seguridad en bash)
El problema tiene origen en el modo que Bash evalúa las variables de entorno. El resultado es que el atacante puede usar esta vulnerabilidad para saltarse las restricciones del entorno y ejecutar comandos de shell desde bash de forma indiscriminada y en base a ello ha aparecido una nueva vulnerabilidad relacionada conocida como “Shellshock“.
El mayor problema de esto es que ciertos servicios y aplicaciones conceden acceso a estas variables de entorno y por consiguiente permiten explotar la vulnerabilidad desde dichas aplicaciones y servicios; vamos, que no es necesario disponer de acceso directo a la línea de comandos, terminal o SSH para explotar la vulnerabilidad.
Así pues, es muy importante actualizar la versión de bash lo antes posible por la que contenga el parche que solucione el bug lo antes posible. Es tan sencillo como ejecutar los siguientes updates a través de yum o apt según el sistema:
Contenido
¿Cómo identificar si mi servidor es vulnerable frente a esta amenaza?
Para detectar si tu servidor tiene una versión de bash afectada por este fallo de seguridad, puedes conectarte a tu servidor por SSH y ejecutar:
env x='() { :;}; echo Vulnerable' bash -c /bin/true
Si es vulnerable la salida estándar de este comando te devolverá la palabra 'Vulnerable'
Si no es vulnerable no te devolverá nada.
¿Cómo securizar mi servidor frente a este fallo se seguridad si mi servidor está afectado?
Tienes que acceder a tu servidor por SSH con usuario root y ejecutar los siguientes comandos dependiendo de tu distribución de Linux.
Si tienes Debian y derivados (Ubuntu, etc)
- Si quieres saber tu versión de Debian ejecuta:
cat /etc/debian_version
Solucionar “Shellshock” en Debian 7 y Ubuntu
apt-get update apt-get --only-upgrade install bash
Solucionar “Shellshock” en Debian 6
Para actualizar bash en Debian 6, primero tenemos que agregar un repositorio.
Para ello tenemos que editar el siguiente archivo:
/etc/apt/sources.list
Y agregar la siguiente linea al final del mismo:
deb http://ftp.us.debian.org/debian squeeze-lts main non-free contrib
Una vez agregado el repositorio seguir los pasos para securización de Debian 7.
Finalmente, quita el repositorio borrando la línea que hemos agregar en el fichero sources.list
- Si en esta versión de Debian aparece un error como este:
W: GPG error: http://ftp.us.debian.org squeeze-lts Release: The following signatures couldn't be verified because the public key is not available: NO_PUBKEY XXXX
Basta con ejecutar los comandos:
gpg --keyserver pgpkeys.mit.edu --recv-key XXXX gpg -a --export XXXX | apt-key add -
Poniendo el mismo id en las XXXX que aparece en el error.
Solucionar “Shellshock” en CentOS, RHEL, Fedora, Scientific Linux
yum update bash
Con estas acciones tu servidor ya estará protegido frente a este fallo de seguridad.