viernes, 26 de septiembre de 2014

Bash vulnerability en Debian

Ta bueno esto de la vulnerabilidad bash (Shellshock) en linux y Mac OS, eso le recuerda a unos cuantos que no hay sistema operativo 100% seguro y que esa seguridad es enteramente relativa.

Y está la otra parte que es qué probablemente veremos cuentos y más cuentos acerca de este bug, lo exagerarán a más no poder, y como dije hace nada ningún SO es 100% seguro y menos perfecto, lo realmente bueno es que cuando estas cosas pasan todos los que están dentro del mundito linux se enteran, mejor todavía, no es que tarde mucho en corregirse el fallo (sea cual sea), además que quienes están detrás las distribuciones o de servidores linux afectados por algún fallo se apresuran enseguida a tomar medidas para solventar o contrarrestar cualquier situación adversa.

Pero asumamos que pasa esto mismo con Windows, jojo serio? que tan rápido se resuelven ahí los fallos de seguridad por muy críticos que sean? se enteran los usuarios de este SO de estos graves fallos de seguridad? cuantos de ellos están conscientes de eso? mejor... a cuantos les importa? lol.

Dejemos el asunto ahí, en Debian (testing) ayer me dispuse a probar un comando que vi en Gizmodo y expongo los resultados.

La idea es que si el comando muestra "vulnerable" el sistema es vulnerable a ataques, el comando a ejecutar:

env x='() { :;}; echo vulnerable' bash -c 'echo hello'

El resultado:

ljmarin@lm ~ $ env x='() { :;}; echo vulnerable' bash -c 'echo hello' vulnerable hello ljmarin@lm ~ $ bash --version GNU bash, versión 4.3.24(1)-release (i586-pc-linux-gnu) Copyright (C) 2013 Free Software Foundation, Inc. Licencia GPLv3+: GPL de GNU versión 3 o posterior This is free software; you are free to change and redistribute it. There is NO WARRANTY, to the extent permitted by law. ljmarin@lm ~ $

En debian se muestra una actualización para bash, actualizo y lo intento de nuevo:

ljmarin@lm ~ $ env x='() { :;}; echo vulnerable' bash -c 'echo hello' bash: aviso: x: ignoring function definition attempt bash: error al importar la definición de la función para `x' hello ljmarin@lm ~ $ bash --version GNU bash, versión 4.3.25(1)-release (i586-pc-linux-gnu) Copyright (C) 2013 Free Software Foundation, Inc. Licencia GPLv3+: GPL de GNU versión 3 o posterior This is free software; you are free to change and redistribute it. There is NO WARRANTY, to the extent permitted by law. ljmarin@lm ~ $

Pasa la prueba, pero leyendo en Genbeta muestran otra variante del comando anterior, es decir ahora son dos comandos.

Los comandos a ejecutar son los siguientes y la idea es que si alguno de los dos muestra vulnerable pues el sistema es vulnerable a posibles ataques.

env x='() { :;}; echo vulnerable' bash -c 'echo Fallo 1 parcheado' env X='() { (a)=>\' sh -c 'echo vulnerable'; bash -c 'echo Fallo 2 sin parchear'

El primero:

ljmarin@lm ~ $ env x='() { :;}; echo vulnerable' bash -c 'echo Fallo 1 parcheado' bash: aviso: x: ignoring function definition attempt bash: error al importar la definición de la función para `x' Fallo 1 parcheado ljmarin@lm ~ $ bash --version GNU bash, versión 4.3.25(1)-release (i586-pc-linux-gnu) Copyright (C) 2013 Free Software Foundation, Inc. Licencia GPLv3+: GPL de GNU versión 3 o posterior This is free software; you are free to change and redistribute it. There is NO WARRANTY, to the extent permitted by law. ljmarin@lm ~ $

Va bien, ahora el otro:

ljmarin@lm ~ $ env X='() { (a)=>\' sh -c 'echo vulnerable'; bash -c 'echo Fallo 2 sin parchear' vulnerable Fallo 2 sin parchear ljmarin@lm ~ $ bash --version GNU bash, versión 4.3.25(1)-release (i586-pc-linux-gnu) Copyright (C) 2013 Free Software Foundation, Inc. Licencia GPLv3+: GPL de GNU versión 3 o posterior This is free software; you are free to change and redistribute it. There is NO WARRANTY, to the extent permitted by law. ljmarin@lm ~ $

No pasó la prueba y aparentemente sigue "vulnerable", y aunque han dicho que esto supuestamente está corregido en debian, bueno, por lo menos en mi caso parece que no, tocará sentarse a esperar que corrijan de una ves el fallo.

No hay comentarios: