9.26.2014

Corrigir vulnerabilidade da shell BASH em sistemas Linux - Shellshock -

A vulnerabilidade Shellshock é grave visto que permite a execução de código malicioso com recurso à linha de comandos BASH colocando sistemas Linux e Mac em risco. Os sistemas críticos terão a correcção feita com celeridade. Contudo, routers baseados em Linux fornecidos por ISPs, câmaras de vigilância baseadas em Linux e outros equipamentos expostos na Internet ficarão vulneráveis. Pela experiência com a vulnerabilidade Hertbleed que afecta o OpenSSH, uma quantidade enorme de sistemas não serão alvo de qualquer correcção.

Mesmo nas distribuições mais recentes a vulnerabilidade existe. Veja-se um sistema com CentOs 7.0. (Os passos descritos aplicam-se também a sistemas RHEL e Fedora).

[root@CentOs02 ~]# uname -a
Linux CentOs02 3.10.0-123.6.3.el7.x86_64 #1 SMP Wed Aug 6 21:12:36 UTC 2014 x86_64 x86_64 x86_64 GNU/Linux

O comando para verificar se a vulnerabilidade existe é:

[root@CentOs02 ~]# env x='() { :;}; echo vulnerable' bash -c 'echo hello'
vulnerable
hello

A vulnerabilidade existe caso o output seja o apresentado

Podemos verificar a versão BASH com o comando:

[root@CentOs02 ~]# bash --version

GNU bash, version 4.2.45(1)-release (x86_64-redhat-linux-gnu)
Copyright (C) 2011 Free Software Foundation, Inc.
License GPLv3+: GNU GPL version 3 or later
This is free software; you are free to change and redistribute it.
There is NO WARRANTY, to the extent permitted by law.

Para efectuar a actualização:

[root@CentOs02 ~]# yum -y update bash

Após feita a actualização execute o comando:

[root@CentOs02 ~]# env x='() { :;}; echo vulnerable' bash -c "echo this is a test"
this is a test

O output foi “this is a test” . Correcção efectuada! Se o output tivesse sido “vulnerable” o sistema continua vulnerável.

Para sistemas Debian e Ubuntu

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

Este comando vai actualizar a lista de pacotes e actualizar apenas o BASH.

Para Apple - OSx

Mavericks: http://support.apple.com/kb/DL1769
Mountain Lion: http://support.apple.com/kb/DL1768
Lion:http://support.apple.com/kb/DL1767