Uma falha de segurança no Bash foi divulgada no último dia 24 de setembro, chamada Shellshock. Segundo os especialistas em segurança, ela é mais perigosa que o Heartbleed.

Todo sistema baseado em UNIX utiliza o Bash, ou seja, distribuições Linux e o Mac OS X. Até agora as distribuições Ubuntu, CentOS, Red Hat e Debian já receberam as atualizações de segurança. Como o Mac OS X também utiliza o Bash, esse artigo visa instruir você a como fazer essa atualização utilizando o terminal.

Antes de fazer o processo de atualização, faça um teste e veja se realmente a vulnerabilidade existe em seu Bash:

$ env x='() { :;}; echo vulnerable' bash -c 'echo safe'

Caso apareça a palavra "vulnerable" após executar o teste, é necessário que você rode os comandos abaixo apra executar a atualização do Bash, mas se for exibida uma mensagem de erro, então não há a necessidade de rodar a atualização de segurança.

<h2>Comandos para a atualização</h2>

$ mkdir bash-fix
$ cd bash-fix
$ curl https://opensource.apple.com/tarballs/bash/bash-92.tar.gz | tar zxf -
$ cd bash-92/bash-3.2
$ curl https://ftp.gnu.org/pub/gnu/bash/bash-3.2-patches/bash32-052 | patch -p0    
$ cd ..
$ xcodebuild
$ sudo cp /bin/bash /bin/bash.old
$ sudo cp /bin/sh /bin/sh.old
$ build/Release/bash --version # GNU bash, version 3.2.52(1)-release
$ build/Release/sh --version   # GNU bash, version 3.2.52(1)-release
$ sudo cp build/Release/bash /bin
$ sudo cp build/Release/sh /bin

Os comandos acima criam uma pasta para receber os arquivos da atualização, fazem a compilação da nova versão e copia para a pasta padrão para que a atualização seja aplicada.

Se você quiser verificar qual a versão do Bash, basta executar o seguinte comando:

$ bash --version

Espero ter ajudado. Até a próxima.