Corrigindo falha Shellshock Bash no Linux
Em 24 de setembro de 2014, uma vulnerabilidade no Bash, nomeado de Shellshock ou “Bug Bash”, foi divulgado. A vulnerabilidade permite que atacantes remotos possam executar código arbitrário dadas certas condições, passando sequências de código.
A vulnerabilidade Shellshock pode ser explorada 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
A descrição detalhada do bug pode ser encontrada em CVE-2014-6271, CVE-2014-7169, CVE-2014-7186, e CVE-2014-7187.
É altamente recomendável que os sistemas afetados estejam devidamente atualizados para corrigir ou minimizar a vulnerabilidade o mais cedo possível. Vamos mostrar como testar seu equipamento para saber se está vulnerável e como atualizar o Bash para remover a vulnerabilidade.
Teste
Para verificar a vulnerabilidade execute o comando abaixo usando um usuário simples sem permissão de super usuário (root).
$ env x='() { :;}; echo Vulneravel’ bash -c “echo Isto e um teste”
O resultado da saída deverá ser o seguinte
Vulneravel
Isto e um teste
Caso tenha recebido esse resultado, seu sistema está vulnerável a ataques. Caso tenha recebido apenas “Isto e um teste”, não é precisa fazer nenhuma modificação no sistema.
Correção
Para corrigir o problema vamos executar a atualização do Bash com o comando a seguir.
– Família Ubuntu
$ sudo apt-get install bash -y
– Família RedHat (CentOS, Fedora)
# yum install bash -y
Faça novamente o teste e veja se o problema foi corrigido com êxito.