¿Qué vulnerabilidad está dirigida por un referente HTTP que comienza con () {:;}; / bin / bash

23

Encontré este código, seguido de varios comandos de bash que descargan y ejecutan una carga útil desde la web, en el campo de referencia en mis registros de errores de apache. El ataque parece funcionar al convertir un nombre de comando en un nombre de función para el cuerpo de función vacío, (){ :; } .

Esto claramente intenta realizar una inyección de comando bash. ¿Qué servidores, configuraciones o módulos podrían ser vulnerables a este ataque?

    
pregunta Kylos 06.11.2015 - 17:13
fuente

2 respuestas

36

Esto está dirigido al error Shellshock (que incluso tiene su etiqueta propia ):

  

GNU Bash a través de 4.3 procesa cadenas posteriores a las definiciones de funciones en los valores de las variables de entorno, lo que permite a los atacantes remotos ejecutar código arbitrario a través de un entorno diseñado, como lo demuestran los vectores que incluyen la función ForceCommand en OpenSSH sshd, los módulos mod_cgi y mod_cgid en el servidor HTTP Apache, los scripts ejecutados por clientes DHCP no especificados y otras situaciones en las que la configuración del entorno se produce a través de un límite de privilegio desde la ejecución de Bash.

Afectados están los sistemas que ejecutan una versión vulnerable de Bash y una forma en que un atacante puede inyectar una variable de entorno. El caso más conocido es Apache, que establece automáticamente ciertas variables de entorno a partir de la solicitud. No necesitas un CGI Bash. Consulte este artículo sobre Vectores de explotación de Shell Shock para obtener una lista extensa .

Para defenderse de este ataque debes actualizar tu Bash. Para probar si su versión de Bash es vulnerable, puede ejecutar la siguiente línea desde la gran respuesta de @ EliahKagan :

x='() { :;}; echo VULNERABLE' bash -c :

Consulte Todo lo que necesita saber sobre el error Shellshock Bash o CVE correspondiente para obtener más información.

    
respondido por el Beat 06.11.2015 - 17:19
fuente
0

Parece una carga útil de ejecución remota de comandos. La vulnerabilidad de ejecución remota de comandos se utiliza para ejecutar comandos del sistema con el mismo privilegio que el usuario del servidor web. Conduce a un compromiso total del servidor. Mire el artículo de owasp sobre esto para obtener más información.

    
respondido por el haseeb 06.11.2015 - 17:23
fuente

Lea otras preguntas en las etiquetas