Como garantir que minha instalação do Bash não fique mais vulnerável ao bug do ShellShock após as atualizações?
80
Como garantir que minha instalação do Bash não fique mais vulnerável ao bug do ShellShock após as atualizações?
Respostas:
Para verificar a vulnerabilidade CVE-2014-6271
NÃO deve repetir a palavra vulnerável.
Para verificar a vulnerabilidade CVE-2014-7169
(aviso: se o seu falhar, ele criará ou substituirá um arquivo chamado
/tmp/echo
que você pode excluir depois e precisa excluir antes de testar novamente)deve dizer a palavra data e depois reclamar com uma mensagem como
cat: echo: No such file or directory
. Se, em vez disso, indicar qual é a data e hora atual, seu sistema estará vulnerável.Para verificar o CVE-2014-7186
NÃO deve repetir o texto
CVE-2014-7186 vulnerable, redir_stack
.Para verificar o CVE-2014-7187
NÃO deve repetir o texto
CVE-2014-7187 vulnerable, word_lineno
.Para verificar o CVE-2014-6277. Não tenho 100% de certeza neste, pois parece depender de um sistema parcialmente corrigido ao qual não tenho mais acesso.
Um resultado de aprovação neste é apenas o eco de volta ao texto
testing CVE-2014-6277
. Se ele executa perl ou se ele reclama que o perl não está instalado, isso é definitivamente uma falha. Não tenho certeza de outras características de falha, pois não tenho mais nenhum sistema sem patch.Para verificar o CVE-2014-6278. Mais uma vez, não tenho 100% de certeza se esse teste já não possui sistemas sem patch.
Uma aprovação para este teste é que ele deve apenas repetir o texto
testing CVE-2014-6278
. Se o seu eco voltar parahi mom
qualquer lugar, isso é definitivamente um fracasso.fonte
foo='() { echo not patched; }' bash -c foo
a isso? Até que as exportações de funções sejam colocadas em um espaço para nome separado, não deixaremos de executar um bug do analisador para o próximo.Exporte uma variável de ambiente especialmente criada que será avaliada automaticamente por versões vulneráveis do Bash:
Agora execute um eco simples para ver se o Bash avaliará o código em $ testbug, mesmo que você não tenha usado essa variável:
Se mostrar a string "VULNERABLE", a resposta é óbvia. Caso contrário, você não precisa se preocupar e sua versão corrigida do Bash está OK.
Observe que vários patches foram lançados pelas principais distribuições Linux e, às vezes, eles não corrigem completamente a vulnerabilidade. Continue verificando os avisos de segurança e a entrada do CVE quanto a esse bug.
fonte
export
):env testbug='() { :;}; echo VULNERABLE' bash -c "echo Hello"
O ShellShock é praticamente uma conjunção de mais de uma vulnerabilidade do bash e , neste momento, também existe um malware que explora essa vulnerabilidade ; portanto, o ShellShock pode ser um problema que ainda está aberto, há um encadeamento com atualizações do RedHat sobre esses problemas .
A Redhat recomenda o seguinte:
Comando de execução:
Se a saída for:
você não tem nenhuma correção.
Se a saída for:
você tem
CVE-2014-6271
consertoSe sua saída for:
você não é vulnerável.
A outra parte da verificação do ShellShock é a verificação de vulnerabilidade CVE-2014-7169, que garante a proteção do sistema contra o problema de criação de arquivo. Para testar se sua versão do Bash é vulnerável ao CVE-2014-7169, execute o seguinte comando:
Se o seu sistema estiver vulnerável, a hora e a data serão exibidas e / tmp / echo será criado.
Se o seu sistema não estiver vulnerável, você verá resultados semelhantes a:
fonte
Eu escrevi um utilitário de CLI chamado ShellShocker para testar seu servidor da Web quanto a vulnerabilidades em scripts CGI. Para testar seu site, você deve executar:
ie
EDIT: este utilitário foi retirado, desculpe: '(
fonte
Você pode enviar seu URL CGI para este teste online:
http://shellshock.iecra.org
fonte
tipo env x = '() {:;}; ech vulnerável 'bash -c "echo isto é um teste" e se isso retornar vulnerável e este for um teste, significa que sua máquina OSX / Linux será afetada. O remédio é atualizar para a versão mais recente do bash.
fonte