pirtugan escribió:Nose... me sonó todo tan raro raro que me he puesto a mirar un poquito el tema... y mi neurona no me da para más.... Me he leido la noticia en EOL... y en serio... o igual lo contrario... se parece lo que un cojón a un cubo. Veo que esto ha ido creciendo y creciendo hasta que ha llegado aquí....
Voy a explicar lo que he leído... y algien con carácter didactico (que no dictatorial) me explique en qué sitio me he perdido.
A) El problema parece que parte del bash. En la definición de una variable de entorno en el shell Bash.
B) Según lo que se publica (test incluido) el problema surge porque las variables de entorno permiten ejecutar código.
C) La prueba hace uso de la comilla simple....
D) Potencialmente, se podría en teoría incluir codigo malicioso con dicho uso.
En las referencias que he encontrado, inicialmente se habla de la vulnerabilidad del sistema si fija esa variable de entorno. Pero luego empezaron a meter la palabra... remoto por todos lados... y ya la cabeza me empezó a dar vueltas... finalmente dicen que es muy complicado de arreglar y que está extendido por el universo conocido y más allá.
Ahora van mis preguntas que mi simple neurona no llega a entender....
A) Que yo sepa de toda la vida... el bash... cuando defines una variable de entorno, si le metes algo en comilla simple... lo ejecuta y punto.... directamente... pues es una definición del sistema.
Siendo esto así, a los que les da error la ejecución del test (no vulnerable), lamento decirles que si... parece que tienen un bash 'aparente mente robusto al fallo', pero tienen un mojón mierdoso de implementación, pues hasta el manual del bash dice claramente que tiene que ejecutarse y dar el valor del resultado de dicha ejecución a la variable.
B) Las ejecuciones son eso... ejecuciones... y claro, para definir la variable, hace falta previamente un acceso al bash. Es decir, tienes que tener acceso a él.
Efectivamente, hay programas que permiten desde una ventanita fijar variables de entorno, pero en ese caso. El que está fallando no es el bash, es el programa que permite por ejemplo meter unas comillas simples en vez de un path o ruta a un fichero y/o directorio.
C) Lo de remoto, me da un poco de pánico, pero en serio, que no lo veo por ningun lado... no se que tiene que ver ejecutar un/unos comandos en un bash a que puedan saltarse por la cara un protocolo y entrar a saco en tu ordenador (Heartbleed) y sin dejar rastro.
Aqui cuando alguien, programa con sus variables de entorno o usuario a saco en el bash mete comandos queda todo registrado a nombre del usuario que lo ha hecho. Con lo que de remoto, es que sigo sin verlo por ningún lado.
Se habla en algún momento de cgi o de ... er que??? cgi... aún hay webs o ordenadores con servidores usando cgi y creen que están seguros??? ummm no hace falta esta supuesta vulnerabilidad para saltar esa seguridad.
Por último pongo un link a donde se está discutiendo si realmente esto es o no una vulnerabilidad....
http://unix.stackexchange.com/questions ... t-insecureSaludos