Como faço para corrigir o RHEL 4 para as vulnerabilidades do bash no CVE-2014-6271 e CVE-2014-7169?

16

Um mecanismo para execução remota de código por meio do Bash foi amplamente divulgado ontem e hoje (24 de setembro de 2014.) http://seclists.org/oss-sec/2014/q3/650 Reportado como CVE-2014-7169 ou CVE-2014 -6271

Por motivos estúpidos demais para eu explicar em público, sou responsável por um servidor executando o RHEL 4 e sem assinatura de atualização. Eu poderia criar um clone para testar isso, mas espero que alguém tenha uma resposta direta.

  1. O / bin / bash do Centos 4 foi corrigido ou será?
  2. Posso simplesmente inserir um Centos 4 / bin / bash (presumivelmente corrigido) no meu sistema RHEL como uma solução alternativa que me comprará várias semanas? (Preciso até 10 de dezembro)
Bob Brown
fonte

Respostas:

21

Um patch foi fornecido pelo Oracle para el4:

https://oss.oracle.com/el4/SRPMS-updates/bash-3.0-27.0.1.el4.src.rpm

https://oss.oracle.com/el4/SRPMS-updates/bash-3.0-27.0.2.el4.src.rpm

https://oss.oracle.com/el4/SRPMS-updates/bash-3.0-27.0.3.el4.src.rpm

https://oss.oracle.com/el4/SRPMS-updates/bash-3.0-27.el4.src.rpm

Como é um src RPM, você precisa compilar então rpmbuild.

ou use este link para evitar a compilação

http://public-yum.oracle.com/repo/EnterpriseLinux/EL4/latest/i386/getPackage/bash-3.0-27.0.1.el4.i386.rpm

http://public-yum.oracle.com/repo/EnterpriseLinux/EL4/latest/i386/getPackage/bash-3.0-27.0.3.el4.i386.rpm

Eu testei em um sistema 4.9 i386, passei no teste de exploração que tenho. (Ted)

Jina Martin
fonte
11
A versão mais recente agora é 3.0-27.0.2 : oss.oracle.com/el4/SRPMS-updates/bash-3.0-27.0.2.el4.src.rpm (fonte) e public-yum.oracle.com/repo/ EnterpriseLinux / EL4 / latest / i386 /… (i386) - isso também parece corrigir o problema CVE-2014-7169 (testado com o código de access.redhat.com/articles/1200223 ).
Dave James Miller
A Oracle subiu um pouco no meu livro.
Steve Kehlet
De acordo com oracle.com/us/support/library/… , o Linux 4 é suportado apenas até fevereiro de 2013. Eles devem ter feito uma exceção. Muito legal.
clacke
Estes pacotes também trabalham para o Fedora Core 3 e Fedora Core 4.
Gene
20

Eu tive que corrigir um servidor CentOS 4.9 antigo, então peguei o RPM de origem mais recente do Red Hat FTP e adicionei o patch upstream do GNU FTP. Os passos estão abaixo:

Primeiro, siga o procedimento "Configuração" em http://bradthemad.org/tech/notes/patching_rpms.php :

echo "%_topdir    /home/$(whoami)/src/rpm" > ~/.rpmmacros
mkdir -p ~/src/rpm/{BUILD,RPMS,SOURCES,SPECS,SRPMS
mkdir -p ~/src/rpm/RPMS/{i386,i486,i586,i686,noarch,athlon}

Em seguida, execute os seguintes comandos no seu% _topdir:

cd ~/src/rpm
wget http://ftp.redhat.com/redhat/linux/updates/enterprise/4ES/en/os/SRPMS/bash-3.0-27.el4.src.rpm
rpm -ivh bash-3.0-27.el4.src.rpm
cd SOURCES
wget http://ftp.gnu.org/gnu/bash/bash-3.0-patches/bash30-017
cd ..

Corrija o SPECS / bash.spec com esta diff:

4c4
< Release: 27%{?dist}
---
> Release: 27.2%{?dist}
28a29
> Patch17: bash30-017
110c111,112
< #%patch16 -p0 -b .016
---
> %patch16 -p0 -b .016
> %patch17 -p0 -b .017

Em seguida, termine com estes comandos:

rpmbuild -ba SPECS/bash.spec
sudo rpm -Uvh RPMS/i386/bash-3.0-27.2.i386.rpm

Edit: Os últimos comentários no Red Hat Bugzilla dizem que o patch está incompleto. O novo ID é CVE-2014-7169.

Editar: Existem duas correções adicionais no gnu.org, portanto, faça o download delas no mesmo diretório SOURCES:

wget http://ftp.gnu.org/gnu/bash/bash-3.0-patches/bash30-018
wget http://ftp.gnu.org/gnu/bash/bash-3.0-patches/bash30-019

Depois edite também o SPECS / bash.spec da seguinte forma (numeração "Release" opcional):

4c4
< Release: 27%{?dist}
---
> Release: 27.2.019%{?dist}
28a29,31
> Patch17: bash30-017
> Patch18: bash30-018
> Patch19: bash30-019
110c113,116
< #%patch16 -p0 -b .016
---
> %patch16 -p0 -b .016
> %patch17 -p0 -b .017
> %patch18 -p0 -b .018
> %patch19 -p0 -b .019
tstaylor7
fonte
11
+1 para o passo a passo, para que não esqueçamos como fazer isso.
Steve Kehlet
14

O RHEL 4 está na fase de "vida útil prolongada" e as atualizações de segurança estarão disponíveis apenas para clientes pagantes. O CentOS 4 está sem suporte desde março de 2012. Não há mais atualizações disponíveis para isso desde esse momento.

Suas únicas opções são:

  • Compre um contrato de suporte com a RedHat
  • Tente criar seu próprio pacote para o Bash.
  • Ou a opção vencedora: aposente esta máquina e use esse problema de segurança como um incentivo para fazê-lo.
Sven
fonte
4
Obrigado. Como usei meu nome real aqui, não posso explicar em público por que não posso aposentar a máquina antes de 10 de dezembro. O mesmo acontece com o porquê de haver três versões sem contrato. Eu votei na sua resposta e obrigado. Aceito se ninguém conseguir um resgate em breve.
Bob Brown
2
@BobBrown What? Você realmente usou o nome fictício que eu uso nas minhas contas administrativas. Esquisito.
HopelessN00b
6
Eu culpo meus pais.
Bob Brown
2

Uma alma gentil chamada Lewis Rosenthal colocou o Bash RPMS atualizado para o CentOS 4 em seu servidor FTP . Acredita-se que o RPM do bash-3.0-27.3 aborda CVE-2014-6271, CVE-2014-7169, CVE-2014-7186 e CVE-2014-7187. Ele tem um README com mais informações e houve alguma discussão nos fóruns do CentOS. Não se esqueça deste script de verificação tudo-em-um útil - observe que a verificação CVE-2014-7186 falhará com uma falha de segmentação, mas acredita-se que ela esteja bem, porque alguns outros testes para essa vulnerabilidade ficam bons.

Eu diria que, siga as instruções do @ tstaylor7 para criar seu próprio RPM corrigido a partir da fonte ou instale o acima. Quando tentei, os dois tiveram os mesmos resultados nesse script de verificação.

Steve Kehlet
fonte