Como proteger seu servidor da vulnerabilidade Shellshock Bash

 

Em 24 de setembro de 2014, uma vulnerabilidade GNU Bash, referido como Shellshock ou “Bug Bash”, foi divulgado. Em suma, a vulnerabilidade permite que atacantes remotos para executar código arbitrário dadas certas condições, passando seqüências de código seguintes atribuições de variáveis ​​de ambiente. Por causa do estado onipresente do Bash entre Linux, BSD, e distribuições Mac OS X, muitos computadores são vulneráveis ​​a Shellshock; todas as versões festança sem correção entre 1,14 através 4.3 (ou seja, todos os lançamentos até agora) estão em risco.

A vulnerabilidade pode ser explorada Shellshock em sistemas que estão executando serviços ou aplicações que permitem que usuários remotos não autorizados para atribuir variáveis ​​de ambiente Bash. Exemplos de sistemas exploráveis ​​incluem o seguinte:

Servidores HTTP Apache que usam scripts CGI (via mod_cgi e mod_cgid) que são escritos em Bash, ou lançar a subcamadas Bash
Alguns clientes DHCP
Servidores OpenSSH que usam a capacidade ForceCommand
Vários serviços expostos à rede que usam Bash

A descrição detalhada do bug pode ser encontrada em CVE-2014-6271 e CVE-2014-7169.

Porque a vulnerabilidade Shellshock é muito difundida – mais ainda do que o bug OpenSSL Heartbleed – e particularmente fáceis de explorar, é altamente recomendável que os sistemas afetados estão devidamente atualizados para corrigir ou atenuar a vulnerabilidade o mais cedo possível. Vamos mostrar-lhe como testar se as suas máquinas são vulneráveis ​​e, se forem, como atualizar Bash para remover a vulnerabilidade.

Nota: Apenas uma “correção incompleta” para a vulnerabilidade foi liberado. Como tal, recomenda-se a atualizar suas máquinas que rodam Bash imediatamente, e volte para atualizações e uma correção completa.

 

Checando vulnerabilidade do sistema

Em cada um dos sistemas que executam Bash, você pode verificar se há vulnerabilidade Shellshock, executando o seguinte comando no servidor:

env VAR='() { :;}; <span class="highlight">echo Bash is vulnerable!</span>' bash -c "echo Bash Test"

Caso contrário, se a sua saída não inclui a carga útil do atacante simulado, ou seja, “Bash is vulnerable” não é impresso como saída, a sua versão do bash não é vulnerável. Pode ser algo como isto:

bash: warning: VAR: ignoring function definition attempt
bash: error importing function definition for `VAR'
Bash Test


Teste em sites remotos:
Se você simplesmente quer testar sites ou scripts CGI específios que estão  vulneráveis​​, use este link: Bash vulnerabilidade CVE-2014-6271 ferramenta Test ‘ShellShock’.

Basta digitar o URL do script CGI ou site que você deseja testar e enviar.

 

Corrigindo Vulnerabilidade: Atualizando o  Bash

A maneira mais fácil de corrigir a vulnerabilidade é usar o gerenciador de pacotes padrão para atualizar a versão do Bash. As subseções a seguir cobrir atualização Bash em várias distribuições Linux.

Redhat

yum update bash

Debian

apt-get update && sudo apt-get install --only-upgrade bash

 

Certifique-se que todos seus servidores esteja atualizado para não ter um susto a qualquer momento.

 

Referência:
https://www.digitalocean.com/community/tutorials/how-to-protect-your-server-against-the-shellshock-bash-vulnerability