Linux – Correção falha Shellshock do bash

bug_bash_shellshock_cleitonbuenoUma falha de natureza grave foi encontrada no interpretador de comando do Linux o bash, repercussão essa que foi classificada com nota de risco 10 segundo a Common Vulnerability Scoring System, uma falha mais grave que a HeartBleed do OpenSSL, que ocorreu neste ano também.

Hoje foi um dia em que muitos SysAdmins ficaram preocupados(senão loucos :/), visto que compromete o acesso remoto ao sistema podendo executar comandos de diversas maneiras até via web, se quiser ver um caso e entender melhor como funciona a falha clique aqui, correções já estão disponíveis e vou relatar como verifiquei em meus servidores o problema e como apliquei a correção.

Verificando se o servidor esta vulnerável:

Se o seu terminal aparecer como acima, seu bash esta vulnerável, caso aparecer como abaixo, não esta.

No caso a maioria das distribuições Linux corrigiram o problema e lançaram patchs e atualizações, segue algumas informações das principais distribuições:

Debian
https://www.debian.org/security/2014/dsa-3032

RedHat/Fedora
https://bugzilla.redhat.com/show_bug.cgi?id=CVE-2014-6271

SuSe
http://support.novell.com/security/cve/CVE-2014-6271.html

Ubuntu
http://www.ubuntu.com/usn/usn-2362-1/

CentOS
http://centosnow.blogspot.com.br/2014/09/critical-bash-updates-for-centos-5.html

No meu caso, eu estava com 2 Debian vulneráveis um com o bash 4.1 e outro com bash 4.2, um foi bem tranquilo, onde com o próprio apt-get consegui solucionar.

 

Debian 7 (Wheezy)

Com o meu segundo servidor, um Debian 6 tive uma certa dificuldade onde apenas com o apt-get install não foi suficiente, pensei em baixar o fonte e compilar, mas resolvi dar uma pesquisada e achei este link, onde adicionando 2 repositórios e atualizando os pacotes já estava disponível a versão 4.1.3+deb6u1 com a correção, então vamos lá.

 

Debian 6 (Squeeze)

Em seguida:

OBS: Caso após adicionar os repositórios e executar o apt-get update aparecer um erro como:

W: Erro GPG: http://mirror.bytemark.co.uk squeeze-lts Release: As assinaturas a seguir não puderam ser verificadas devido à  chave pública não estar disponível: NO_PUBKEY 8B48AD6246925553

Execute a seguinte linha para corrigir e tente novamente:

Tudo resolvido, os 2 Debian “vacinados” até que lembrei de uma VM que possuo, e essa seria problema visto que fornece acessos de serviços para web porém eu não tenha acesso a internet direto por ela, ae dano! Sem chance de apt-get e na altura do campeonato achei inviável subir um apt-cacher só para esta finalidade, então agora como fiz para corrigir o problema do outro Debian 6 (Squeeze) sem “internet”, vamos la:

Primeiro, baseado no link do repositório que eu tinha, usei meu notebook e baixei o Package.gz do link abaixo, navegando em dists > squeeze-lts > main > binary-amd64 (você pode alterar algum desses níveis caso precisar de outro):

http://mirror.bytemark.co.uk/debian/dists/squeeze-lts/main/binary-amd64/Packages.gz

Resumindo, baixe, descompactei e abri o arquivo filtrando por Filename, Package e bash. Legal, tenho tudo que preciso, o link do repositório (http://mirror.bytemark.co.uk/debian/) e agora o caminho até o pacote .deb (bash_4.1-3+deb6u1_amd64.deb), só baixar.

Depois disso, vou transferir o arquivo do notebook para o servidor, no caso usei um intermediário na internet e depois via rede, transferi para o vulnerável com scp, dentro do servidor eu instalei o pacote como abaixo:

Li em uma thread de lista de discussão que o Busybox não foi afetado, hummm resolvi conferir no meu router de casa:

Não encontrei o /usr/bin/env nesta versão e é claro não é vulnerável porque a falha é no interpretador bash, neste caso do BusyBox esta sendo usado o ash, o mesmo aplica-se caso o servidor estiver com interpretador (ash, csh ou tcsh) você não terá problemas, o inseto esta no bash(Bourne Again SHell).

Espero que ajude quem precisar corrigir a falha, o foco foi na distribuição Debian mas a ideia aplica-se as demais distribuições que foi informado o link.

Até a próxima!

Referências

https://security-tracker.debian.org/tracker/CVE-2014-7169
http://web.nvd.nist.gov/view/vuln/detail?vulnId=CVE-2014-6271
http://web.nvd.nist.gov/view/vuln/detail?vulnId=CVE-2014-7169
https://tecnoblog.net/166271/shellshock-falha-grave-bash/
https://forum.bytemark.co.uk/t/shell-shock-what-you-need-to-do-now-about-the-bash-remote-exploit-vulnerability/2068
https://www.debian.org/security/2014/dsa-3032
https://access.redhat.com/articles/1200223
https://access.redhat.com/documentation/pt-BR/Red_Hat_Enterprise_Linux/6/html/Installation_Guide/Alternatives_to_busybox.html

Share Button

CC BY-NC-SA 4.0 Linux – Correção falha Shellshock do bash by Cleiton Bueno is licensed under a Creative Commons Attribution-NonCommercial-ShareAlike 4.0 International License.

  • Pedro

    Bem legal o artigo, principalmente na parte de como atualizar sem internet. Abraço