¿Es esta una demostración de que el parche de shellshock no está funcionando?

0

Estoy revisando mis sistemas con el siguiente comando:

env X="() { :;} ; echo busted" /bin/sh -c "echo completed"

Lo que me da: "completado", sin "reventado", lo que parece bueno. Así que lo intenté de nuevo con:

env x='() { :;}; echo vulnerable' bash -c "echo this is a test"

Lo que resulta en:

bash: warning: testbug: ignoring function definition attempt
bash: error importing function definition for 'testbug'
bash: warning: x: ignoring function definition attempt
bash: error importing function definition for 'x'
this is a test

Lo que de nuevo, parece bueno. Sin embargo, cuando corro:

env x='()' ; echo vulnerable; bash -c "echo this is a test"

Obtengo un volcado de todas las variables ambientales, seguido de:

_=/usr/bin/env
x=()
vulnerable
bash: warning: testbug: ignoring function definition attempt
bash: error importing function definition for 'testbug'
this is a test

Ahora estoy preocupado. ¿Debería estar?

EDITAR: Las dos referencias a 'testbug' se deben a una prueba anterior que definió esa variable. Desconecté esa variable y el resto de la salida sigue apareciendo

    
pregunta David Wilkins 25.09.2014 - 21:19
fuente

1 respuesta

2

Está haciendo que bash ejecute los comandos separados por ';' en turno. Este es un comportamiento normal y no un indicador de que el parche del error es inadecuado.

    
respondido por el horse hair 25.09.2014 - 21:29
fuente

Lea otras preguntas en las etiquetas