security – ¿Cómo probar si mi servidor es vulnerable al error ShellShock?

Pregunta:

¿Cómo puedo asegurarme de que mi instalación de Bash ya no sea vulnerable al error ShellShock después de las actualizaciones?

Respuesta:

Para verificar la vulnerabilidad CVE-2014-6271

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

NO debe repetir la palabra vulnerable.


Para verificar la vulnerabilidad CVE-2014-7169
(advertencia: si el suyo falla, creará o sobrescribirá un archivo llamado /tmp/echo que puede eliminar después y debe eliminar antes de volver a probar)

cd /tmp; env X='() { (a)=>\' bash -c "echo date"; cat echo

debería decir la palabra fecha y luego quejarse con un mensaje como cat: echo: No such file or directory . Si, en cambio, le dice cuál es la fecha y hora actual, entonces su sistema es vulnerable.


Para comprobar si hay CVE-2014-7186

bash -c 'true <<EOF <<EOF <<EOF <<EOF <<EOF <<EOF <<EOF <<EOF <<EOF <<EOF <<EOF <<EOF <<EOF <<EOF' || echo "CVE-2014-7186 vulnerable, redir_stack"

NO debería repetir el texto CVE-2014-7186 vulnerable, redir_stack .


Para comprobar si hay CVE-2014-7187

(for x in {1..200} ; do echo "for x$x in ; do :"; done; for x in {1..200} ; do echo done ; done) | bash || echo "CVE-2014-7187 vulnerable, word_lineno"

NO debería repetir el texto CVE-2014-7187 vulnerable, word_lineno .


Para verificar CVE-2014-6277. No estoy 100% seguro de este, ya que parece depender de un sistema parcialmente parcheado al que ya no tengo acceso.

env HTTP_COOKIE="() { x() { _; }; x() { _; } <<`perl -e '{print "A"x1000}'`; }" bash -c "echo testing CVE-2014-6277"

Un resultado testing CVE-2014-6277 en este es que SÓLO se hace eco de la testing CVE-2014-6277 texto testing CVE-2014-6277 . Si ejecuta perl o si se queja de que perl no está instalado, definitivamente es un error. No estoy seguro de otras características de falla, ya que ya no tengo ningún sistema sin parchear.


Para verificar CVE-2014-6278. Nuevamente, no estoy 100% seguro de si esta prueba, ya que ya no tengo ningún sistema sin parches.

env HTTP_COOKIE='() { _; } >_[$($())] { echo hi mom; id; }' bash -c "echo testing CVE-2014-6278"

Un pase para esta prueba es que SOLO debe repetir el texto de testing CVE-2014-6278 . Si el tuyo resuena hi mom cualquier lugar, definitivamente es un fracaso.

Leave a Comment

Your email address will not be published. Required fields are marked *

web tasarım