[SECURITY-L] CERT Advisory CA-2002-27 Apache/mod_ssl Worm

Daniela Regina Barbetti Silva daniela em ccuec.unicamp.br
Seg Set 16 09:55:36 -03 2002


----- Forwarded message from NIC BR Security Office <nbso em nic.br> -----

From: NIC BR Security Office <nbso em nic.br>
Subject: [S] CERT Advisory CA-2002-27 Apache/mod_ssl Worm
To: seguranca em pangeia.com.br
Date: Sat, 14 Sep 2002 22:22:54 -0300 (BRT)

-----BEGIN PGP SIGNED MESSAGE-----

_________________________________________________________________________

NBSO - NIC BR Security Office
CG-I.br - Comitê Gestor da Internet no Brasil
Chave PGP: http://www.nbso.nic.br/pgp/nbso@nic.br.asc

Tradução dos  Advisories do CERT/CC,  com permissão especial  do Software
Engineering Institute (SEI).
_________________________________________________________________________

CERT Advisory CA-2002-27 Apache/mod_ssl Worm

   Data original de lançamento: 14 de setembro de 2002
   Última Revisão: --
   Origem: CERT/CC

Um histórico  completo das  revisões pode ser  encontrado ao  final deste
documento.

Sistemas Afetados

     * Sistemas Linux que possuam  Apache com mod_ssl, utilizando OpenSSL
       0.9.6d  ou anterior  com SSLv2  habilitado, em  arquiteturas Intel
       x86.

Resumo

   O  CERT/CC  recebeu  notificações   de  um  código  malicioso  que  se
   auto-propaga e  que explora a vulnerabilidade  (VU#102795) no OpenSSL.
   Este  código  malicioso  tem  sido referenciado  como  "Apache/mod_ssl
   worm", "linux.slapper.worm" e "bugtraq.c worm".

I. Descrição

   O "Apache/mod_ssl  worm" é um  código malicioso que se  auto-propaga e
   que  explora  a  vulnerabilidade  no  OpenSSL  descrita  no  documento
   VU#102795.

     http://www.kb.cert.org/vuls/id/102795

   Esta vulnerabilidade  estava entre  os tópicos discutidos  no Advisory
   CA-2002-23 "Múltiplas Vulnerabilidades no OpenSSL".

     http://www.cert.org/advisories/CA-2002-23.html

   Nota  do Tradutor:  a  versão traduzida  do  Advisory CA-2002-23  está
   disponível em:

     http://www.nbso.nic.br/certcc/advisories/CA-2002-23-br.html

   Embora esta  vulnerabilidade do servidor OpenSSL exista  em uma grande
   variedade  de  plataformas,   o  "Apache/mod_ssl  worm"  aparentemente
   funciona somente  em sistemas  Linux que possuem  Apache com  o módulo
   OpenSSL (mod_ssl) em arquiteturas Intel.

   O  "Apache/mod_ssl  worm" faz  uma  varredura,  na  porta 80/tcp,  por
   sistemas  potencialmente vulneráveis,  utilizando uma  requisição HTTP
   GET inválida:

          GET /mod_ssl:error:HTTP-request HTTP/1.0

   Quando um  sistema Apache  é detectado, o worm tenta enviar  o exploit
   para o  serviço SSL  através da porta  443/tcp.  Se a  tentativa tiver
   sucesso,  uma cópia  do código  fonte  malicioso é  então colocada  no
   servidor  vítima,   onde  o   sistema  atacante  tenta   compilá-lo  e
   executá-lo.  Uma vez infectado, o servidor vítima inicia uma varredura
   por outras máquinas com a intenção de continuar a propagação do worm.

   Adicionalmente, o "Apache/mod_ssl worm"  pode agir como uma plataforma
   para ataques  de negação de serviço distribuídos  (DDoS) contra outros
   sites,  através da  construção  de uma  rede  de máquinas  infectadas.
   Durante o  processo de  infecção a máquina  atacante instrui  a vítima
   recém infectada a iniciar um  tráfego para a porta 2002/udp da máquina
   atacante.   Uma   vez  que  este  canal  de   comunicação  tenha  sido
   estabelecido, o  sistema infectado se torna  parte da rede  de DDoS do
   "Apache/mod_ssl worm".   Máquinas infectadas podem  então compartilhar
   informações sobre  outros sistemas infectados e  instruções de ataque.
   Desse modo, o tráfego na porta 2002/udp pode ser usado por um atacante
   remoto  como um canal  de comunicação  entre sistemas  infectados para
   coordenar ataques contra outros sites.

Identificando máquinas infectadas

   Notificações  indicam que o  código fonte  do "Apache/mod_ssl  worm" é
   colocado em /tmp/.bugtraq.c nos  sistemas infectados.  Ele é compilado
   com  gcc, resultando  em um  binário  executável que  é armazenado  em
   /tmp/.bugtraq;  desse modo, a  presença de  qualquer um  dos seguintes
   arquivos  em sistemas  Linux, que  possuam  Apache com  OpenSSL, é  um
   indicativo de comprometimento:

          /tmp/.bugtraq.c
          /tmp/.bugtraq

   A fase de  varredura do ataque pode aparecer nos  logs do servidor web
   como:

          GET /mod_ssl:error:HTTP-request HTTP/1.0

   Note que o aparecimento desta entrada  nos logs de um servidor web não
   é um indicativo de comprometimento, mas uma evidência de uma varredura
   feita a partir de um sistema infectado.

   Notificações  recebidas pelo  CERT/CC indicam  que os  sistemas Apache
   podem registrar, em seguida, mensagens similares a:

          [error] SSL handshake failed: HTTP spoken on HTTPS port; trying
          to send HTML error page (OpenSSL library error follows)

          [error] OpenSSL: error:1407609C:SSL
          routines:SSL23_GET_CLIENT_HELLO:http  request  [Hint:  speaking
          HTTP to HTTPS port!?]

   As entradas nos arquivos de log podem variar de sistema para sistema,
   mas normalmente incluirão um "SSL  handshake  failed", seguido por um
   erro da biblioteca OpenSSL.

   Máquinas escutando  tráfego na  porta 2002/udp, ou  transmitindo dados
   nesta  porta,  são  também   um  indicativo  de  comprometimento  pelo
   "Apache/mod_ssl worm".

Detectando atividade do "Apache/mod_ssl worm" na rede

   Sistemas infectados são prontamente  identificados na rede através das
   seguintes características de tráfego:

   * Varredura -- Buscas na porta 80/tcp

   * Propagação -- Conexões para a porta 443/tcp

   * DDoS --  Transmissão ou recepção  de datagramas com portas  origem e
     destino 2002/udp.  Este tráfego é usado como um canal de comunicação
     entre os  sistemas infectados  para coordenar ataques  contra outros
     sites.

   Adicionalmente, máquinas infectadas  que estão participando ativamente
   em  ataques DDoS  contra  outros  sistemas podem  gerar  um volume  de
   tráfego muito alto, usando vários protocolos (e.g., TCP, UDP, ICMP).

II. Impacto

   O comprometimento  pelo "Apache/mod_ssl  worm" indica que  um atacante
   remoto pode executar código  arbitrário, com os privilégios do usuário
   apache, no  sistema vítima.   Pode ser possível  para um  atacante, em
   seguida, utilizar  um exploit local  para aumentar seus  privilégios e
   obter acesso como root no sistema vítima.  Além disso, a capacidade de
   realizar ataques DDoS, incluída  no "Apache/mod_ssl worm", permite que
   os sistemas  vítima sejam usados  como plataformas para  atacar outros
   sistemas.

III. Solução

Aplicar uma correção

   Os  administradores de  todos  os sistemas  que  executam OpenSSL  são
   encorajados a rever os documentos CA-2002-23 e VU#102795 para obter as
   recomendações dos fornecedores sobre as correções a serem aplicadas:

     http://www.cert.org/advisories/CA-2002-23.html
     http://www.kb.cert.org/vuls/id/102795

   Note que  a vulnerabilidade  explorada pelo "Apache/mod_ssl  worm" foi
   corrigida a partir do OpenSSL  versão 0.9.6e, porém a última versão do
   OpenSSL no momento é a 0.9.6g.  Os administradores podem desejar fazer
   a atualização para esta última versão.

          http://www.openssl.org/source/

Atualizar o OpenSSL para a versão 0.9.6e

   Atualizar o OpenSSL para a versao 0.9.6e resolve os problemas tratados
   neste documento.   Como descrito  no "Advisory" do  OpenSSL, correções
   separadas estão disponíveis:

   Correções conjuntas para o OpenSSL 0.9.6d:
   http://www.openssl.org/news/patch_20020730_0_9_6d.txt

   Depois de  aplicar as  correções acima ou  atualizar o OpenSSL  para a
   versão 0.9.6e,  deve-se recompilar todas as aplicações  que utilizam o
   OpenSSL  para  suportar os  serviços  SSL  ou  TLS e  reiniciar  estes
   serviços  ou sistemas.   Isto eliminará  todo o  código conhecidamente
   vulnerável.

   Sites executando  OpenSSL pre-release versão  0.9.7-beta2 podem querer
   fazer  uma atualização para  a versão  0.9.7-beta3, que  corrige estas
   vulnerabilidades. Correções separadas também estão disponíveis:

   Correções conjuntas para o OpenSSL 0.9.7 beta 2:
   http://www.openssl.org/news/patch_20020730_0_9_7.txt

Desabilitar o SSLv2

   Desabilitar   o  "handshake"   do  SSLv2   previne  a   exploração  da
   vulnerabilidade  descrita em  VU#102795.   O CERT/CC  recomenda que  a
   documentação do  mod_ssl seja  consultada para uma  descrição completa
   das  opções, mas um  método para  desabilitar o  SSLv2 é  removê-lo da
   lista de cifradores suportados, na diretiva SSLCipherSuite, no arquivo
   de configuração.  Por exemplo:

       SSLCipherSuite ALL:!ADH:RC4+RSA:+HIGH:+SSLv2

   que permite o SSLv2, pode ser alterada para:

       SSLCipherSuite ALL:!ADH:RC4+RSA:+HIGH:!SSLv2

   que desabilitará o SSLv2. Note a modificação de +SSLv2 para !SSLv2.

Recuperando-se de um comprometimento

   Se   você  acredita  que   um  sistema   sob  sua   administração  foi
   comprometido, por favor siga os passos descritos em:

     http://www.cert.org/tech_tips/win-UNIX-system_compromise.html

Notificações

   O  CERT/CC  está  interessado   em  receber  notificações  sobre  esta
   atividade.   Se máquinas  sob  seu controle  foram comprometidas,  por
   favor envie um email para cert em cert.org, com o seguinte texto incluído
   na linha de subject: "[CERT#23820]".
   _________________________________________________________________

   Comentários  podem  ser  enviados  diretamente  para  o  autor:  Allen
   Householder
   ____________________________________________________________________

   Tradução: Cristine Hoepers
   ____________________________________________________________________

   Revisão Técnica: Klaus Steding-Jessen
   ____________________________________________________________________

   Esta versão traduzida do documento pode ser obtida em:
   http://www.nbso.nic.br/certcc/advisories/CA-2002-27-br.html
   ____________________________________________________________________

   A versão original, em Inglês, deste documento pode ser obtida em:
   http://www.cert.org/advisories/CA-2002-27.html
   ____________________________________________________________________

Informações de Contato do CERT/CC

    Email: cert em cert.org
           Telefone: +1 412-268-7090 (Hotline 24 horas)
           Fax: +1 412-268-6989
           Endereço para correspondência:
           CERT Coordination Center
           Software Engineering Institute
           Carnegie Mellon University
           Pittsburgh PA 15213-3890
           U.S.A.

   O pessoal do  CERT/CC atende ao hotline no período  das 8:00 às 17:00h
   EST(GMT-5), de segunda a sexta-feira; nos demais períodos eles atendem
   em  esquema emergencial,  incluindo finais  de semana  e  feriados dos
   Estados Unidos.

Utilização de criptografia

   Nós   recomendamos   fortemente   que  informações   sensíveis   sejam
   criptogradas ao serem enviadas por email.
   Nossa chave pública PGP está disponível em:
   http://www.cert.org/CERT_PGP.key

   Se voce  preferir utilizar DES, por  favor telefone para  o hotline do
   CERT para obter maiores informações.

Obtendo informações sobre segurança

   As  publicações do  CERT e  outras informações  sobre  segurança estão
   disponíveis em nosso site:
   http://www.cert.org/

   Para inscrever-se na lista de  advisories e boletins do CERT, envie um
   email para  majordomo em cert.org, incluindo o  seguinte no corpo  da sua
   mensagem:

   subscribe cert-advisory


   *  "CERT"  and  "CERT  Coordination Center" are registered in the U.S.
   Patent and Trademark Office.
   ______________________________________________________________________

   Translations  of  CERT/CC  Advisories,  (c) 2002  by  Carnegie  Mellon
   University,  with  special permission  from  the Software  Engineering
   Institute.

   Accuracy and interpretation of this translation are the responsibility
   of NBSO. The SEI has not participated in this translation.

   NBSO  shall  ensure  that  all translated  materials  incorporate  the
   CERT/CC logos, service marks, and/or  trademarks, as well as a link to
   the original English version on the CERT web site (www.cert.org).

   NBSO  shall ensure  that all  translated materials  are  translated in
   their  entirety and that  the SEI  will be  notified of  which CERT/CC
   Advisories are being translated.  Notifications go to cert em cert.org.

   NO WARRANTY. THIS CARNEGIE  MELLON UNIVERSITY AND SOFTWARE ENGINEERING
   INSTITUTE MATERIAL IS FURNISHED ON  AN "AS IS" BASIS.  CARNEGIE MELLON
   UNIVERSITY  MAKES  NO WARRANTIES  OF  ANY  KIND,  EITHER EXPRESSED  OR
   IMPLIED AS  TO ANY MATTER INCLUDING,  BUT NOT LIMITED  TO, WARRANTY OF
   FITNESS  FOR  PURPOSE   OR  MERCHANTABILITY,  EXCLUSIVITY  OR  RESULTS
   OBTAINED FROM  USE OF THE  MATERIAL.  CARNEGIE MELLON  UNIVERSITY DOES
   NOT MAKE ANY WARRANTY OF ANY KIND WITH RESPECT TO FREEDOM FROM PATENT,
   TRADEMARK, OR COPYRIGHT INFRINGEMENT.

   CMU Indemnification. NBSO hereby agrees to defend, indemnify, and hold
   harmless CMU,  its trustees, officers, employees, and  agents from all
   claims or demands made against them (and any related losses, expenses,
   or attorney's fees)  arising out of, or relating  to NBSO's and/or its
   sublicensees' negligent use or  willful misuse of or negligent conduct
   or   willful  misconduct   regarding  CMU   in   tellectual  Property,
   facilities, or  other rights or  assistance granted by CMU  under this
   Agreement,  including,  but not  limited  to,  any  claims of  product
   liability, personal injury, death, damage to property, or violation of
   any laws or regulations. This indemnification will not apply to claims
   by third parties which allege that CMU Intellectual Property infringes
   on the intellectual property rights of such third parties, unless such
   infringement results from NBSO  modifying CMU Intellectual Property or
   combining it with other intellectual property.

   Disputes.   This  Agreement shall  be  governed  by  the laws  of  the
   Commonwealth of Pennsylvania.  Any dispute  or claim arising out of or
   relating  to  this  Agreement   will  be  settled  by  arbitration  in
   Pittsburgh, Pennsylvania in accordance  with the rules of the American
   Arbitration  Association  and  judgment  upon award  rendered  by  the
   arbitrator(s) may be entered in any court having jurisdiction.

   No Endorsement. The SEI and  CMU do not directly or indirectly endorse
   NBSO work.

   Translations  of   CMU/SEI  copyrighted  material   are  not  official
   SEI-authorized translations.   NBSO agrees  to assign and  transfer to
   CMU/SEI all copyrights in the translation of any CMU/SEI document.

   This permission is granted on a non-exclusive basis for non-commercial
   purposes.
   _________________________________________________________________

   Conditions for use, disclaimers, and sponsorship information

   Copyright 2002 Carnegie Mellon University.

   Histórico de Revisões
14 de setembro de 2002: Lançamento da versão inicial
-----BEGIN PGP SIGNATURE-----
Version: PGPfreeware 5.0i for non-commercial use
Charset: noconv

iQCVAwUBPYPe/JxE2EupRshlAQEJjQP/Y9qmfJlMqkrO8i+9wxIGmhFrjfCx52I8
oD31fY4eV6ZCtT46roc6nCvEWPcUKQQvMejP2pZds51oSWdqOCpAmksyI2eTM7ue
m79Jg1iz9ojbaMV3U9QjfuqVQvgf5sCK+S2+r00GMhVmT6NRu5PwpY/aEDiSK0jP
JleI5oj3fkY=
=ATPm
-----END PGP SIGNATURE-----

----- End forwarded message -----



Mais detalhes sobre a lista de discussão SECURITY-L