O comando de teste
x='() { :;}; echo vulnerable' bash
mostra que minha instalação do Debian 8 (Jessie) é vulnerável, mesmo com as atualizações mais recentes. A pesquisa mostra que há um patch para estável e instável, mas esse teste é sem patch.
Eu acho que o patch chegará aos testes em alguns dias, mas isso realmente parece desagradável o suficiente para ser paranóico. Existe alguma maneira de obter o pacote instável e instalá-lo sem interromper o meu sistema? A atualização para instável parece causar mais problemas do que resolve.
Segundo Bob, existe uma segunda vulnerabilidade do Shellshock, que é corrigida em um segundo patch. O teste para isso deve ser:
env X='() { (a)=>\' bash -c "echo echo vuln"; [[ "$(cat echo)" == "vuln" ]] && echo "still vulnerable :("
Mas não tenho habilidade suficiente no Bash para descobrir o que isso significa ou por que é um problema. De qualquer forma, ele faz algo estranho, impedido pelo bash_4.3-9.2_amd64.deb em sistemas de 64 bits, que no momento da edição é estável e instável, mas não em Jessie / testing.
Para corrigir isso para Jessie , instale o Bash mais recente e instale-o dpkg -i
.
Jemenake oferece
wget http://ftp.debian.org/debian/pool/main/b/bash/bash_4.3-9.2_$(dpkg --print-architecture).deb
como um comando que obterá a versão 4.3-9.2 para sua máquina.
E você pode acompanhar isso com:
sudo dpkg -i bash_4.3-9.2_$(dpkg --print-architecture).deb
para instalá-lo.
Se você precisar de mais patches instáveis para o seu sistema Jessie , este é claramente o caminho a seguir ( mutatis mutandis ).
fonte
wget http://ftp.debian.org/debian/pool/main/b/bash/bash_4.3-9.1_$(dpkg --print-architecture).deb
Ele obterá a arquitetura certa para sua caixa.Editei esta resposta para as correções adicionais do bash lançadas na segunda-feira.
Para o Ubuntu 12.04, executei uma atualização, mas também tive que executar a instalação do bash para se livrar da vulnerabilidade.
Esse comando mostra que o sistema está vulnerável, portanto, execute a atualização.
Teste novamente.
Ainda vulnerável.
Teste novamente.
Edit: Depois que os patches adicionais foram lançados, a saída foi alterada.
Yay! Fixo. Isso deve funcionar para outras versões, mas não testei além da versão 12.04.
Além disso, a resposta de runamok abaixo funciona bem, então dê a ele um voto positivo!
fonte
apt-get update && apt-get install -y bash
parece funcionar.this is a test
mas não o erro e o aviso. Na minha máquina local, recebo o erro, mas no meu servidor não. O que isso mede? Meu servidor está corrigido? Obrigado.Uma alternativa para o Debian 6.0 (Squeeze) sem buscar pacotes do Debian 7 (Wheezy):
Use o repositório de segurança LTS que possui o patch suportado.
Adicione isto a
/etc/apt/sources.list
:Então corra
apt-get update && apt-get install bash
.Via: linuxquestions
fonte
apt-get update
antesapt-get dist-upgrade
e você receberá o patch. Acabei de fazer isso sozinho e houve uma atualização do bash que resolve o problema.fonte
Corrigi-o no meu Hackintosh :
$ brew install bash
fonte
Eu escrevi um artigo sobre como fazer isso com o apt-get em versões antigas do Ubuntu. Você basicamente atualiza seu sources.list para o mais novo e depois executa o apt-get update e upgrade bash. Você pode ler passo a passo ou copipaste a partir daqui .
Resumo:
Leia o artigo se você usa old-releases.ubuntu.com e não se esqueça de que você pode querer alterá-lo novamente:
fonte
A versão fixa (consulte o changelog ) do pacote Bash está no Debian 8 (Jessie) agora (consulte as informações do pacote ), a partir de 26/09/2014 - 14:18 UTC.
A segunda correção, mencionada nos comentários abaixo, também está no repositório Jessie agora. Não há necessidade de instalar a partir do instável. Veja o link de informações do pacote acima.
Não é mais necessário instalar a partir do unstable.
Apenas corra:
Seguido por:
Em seguida, verifique se a vulnerabilidade desapareceu (em um shell recém-aberto):
fonte
env X='() { (a)=>\' bash -c "echo echo vuln"; [[ "$(cat echo)" == "vuln" ]] && echo "still vulnerable :("
- se for impressostill vulnerable
, o último vuln ainda não está corrigido. AFAIK, Jessie ainda é vulnerável. Observe que esse comando criará um arquivo nomeadoecho
no diretório atual se for bem-sucedido e você precisará excluí-lo antes de executar novamente o teste.