[FUGSPBR] FWD Linux.Slapper.Worm OpenSSL part - 1

Soulofblack n.i.b em terra.com.br
Sex Set 20 10:44:15 BRT 2002


Acho que isso é relevante para nossa lista.




--------------------------------------------------------------------------%

-------- Mensagem Original --------

Assunto: SEGURANÇA: Re: Linux.Slapper.Worm, um worm P2P para servidores 
Apache.

Data: Mon, 16 Sep 2002 23:04:48 +0100

Para: Sérgio Araújo <sergio em projecto-oasis.cx>

Responder Para: <seguranca em projecto-oasis.cx>(Segurança informática)

Para: <seguranca em projecto-oasis.cx>(Segurança informática)




Cumprimentos,



Xsecurity.ws wrote:


> Um novo worm denominado de Linux.Slapper.Worm tem estado a propagar-se 
> nas últimas 48 horas pela Internet, explorando uma vulnerabilidade nos 
> protocolos OpenSSL utilizados por servidores como Linux Apache.


Segundo a IT World, dois grandes ISP's americanos suspenderam 
temporariamente as suas operações, devido a este problema.

> As falhas exploradas, foram publicadas em finais do passado mês de 
> Julho, pelo "The OpenSSL Group", mesmo assim ainda existem bastantes 
> utilizadores que não actualizaram as suas versões.


O problema tinha sido noticiado nesta lista a 30 de Julho (ver 
http://mail.projecto-oasis.cx:81/Lists/seguranca/Message/331.html):

> Sexta-feira, primeiro dia que foi reportado, chegou a mais de 2000 
> infecções detectadas em Portugal e Roménia, países onde ocorreram as 
> primeiras infecções.


Isto é interessante...

> O worm pode infectar servidores Linux com software Red Hat, Mandrake, 
> Caldera, Slackware e Debian, cujos protocolos SSL (Secure Sockets 
> Layer) do grupo OpenSSL não estejam actualizados na versão 0.9.6g. 
> Esta versão soluciona a falha reportada em Junho no OpenSSL, na qual 
> impede o funcionamento do worm.


Todos esses fabricantes disponibilizaram correcções, pelo que só os 
irresponsáveis são afectados.

Os utilizadores de distribuições Linux não enunciadas podem, 
simplesmente, substituir a biblioteca libssl.so por uma não vulnerável 
(cortesia de Gerald Waugh <gwaugh em frontstreetnetworks.com>):

1)  ssh to server
2)  su -
3)  cd /usr/local/src
4)  wget http://www.openssl.org/source/openssl-engine-0.9.6g.tar.gz
5)  tar -zxvf openssl-engine-0.9.6g.tar.gz
6)  rm openssl-engine-0.9.6g.tar.gz
7)  cd openssl-engine-0.9.6g
8)  ./configure
9)  make
10) make install  (puts ssl in /usr/local/ssl, won't hurt)
11) wget http://www.apache.org/dist/httpd/old/apache_1.3.20.tar.gz
12) tar -zxvf apache_1.3.20.tar.gz
13) rm apache_1.3.20.tar.gz
14) wget http://www.modssl.org/source/mod_ssl-2.8.4-1.3.20.tar.gz
15) tar -zxvf mod_ssl-2.8.4-1.3.20.tar.gz
16) rm mod_ssl-2.8.4-1.3.20.tar.gz
17) cd mod_ssl-2.8.4-1.3.20
18) ./configure --with-apache=../apache_1.3.20/ \
            --with-apxs=/usr/sbin/apxs \
            --with-ssl=../openssl-engine-0.9.6g
19) cp /etc/httpd/modules/libssl.so /etc/httpd/modules/libssl.so.save
20) cp pkg.sslmod/libssl.so /etc/httpd/modules/
21) /etc/rc.d/init.d/httpd restart

> O Linux.Slapper.Worm explora um desdobramento de buffer no software 
> OpenSSL, para executar uma shell no sistema infectado.


"1. A chave do cliente, na versão 2 do SSL, pode ser passada ao servidor 
de forma a provocar um "overflow"".

> O worm tenta conectar-se através da porta 90 com instruções GET 
> inválidas, para detectar o sistema (servidor Apache Linux).


Referes-te à porta 80, a porta onde o Apache atende pedidos, certo ? O 
Slapper envia um pedido do tipo "GET / HTTP/1.1", ao que o Apache 
responde algo como:

"HTTP/1.1 400 Bad Request
Date: Fri, 13 Sep 2002 10:24:13 GMT
Server: Apache/1.3.22 (Unix) (Red-Hat/Linux)
Connection: close
Transfer-Encoding: chunked
Content-Type: text/html; charset=iso-8859-1"

A análise da linha "Server:" revela que se trata de um Apache, pelo que 
é imediatamente considerado como uma vítima válida. Este raciocício é 
demasiado simplista, porque pode tratar-se de um Apache sem suporte a 
SSL, e, portanto, não vulnerável.

É boa política esconder esta informação, adicionando "ServerTokens None" 
ao ficheiro de configuração do Apache (/etc/httpd/conf/httpd.conf).

> Logo, tentará uma conexão através da porta TCP 443, enviando códigos 
> que permitem monitorizar a presença de um servidor SSL na máquina 
> infectada.


Correcto.

> O worm cria uma cópia de sí mesmo em /tmp/.uubugtraq, e utiliza a sua 
> própria rotina de desencriptação (comando UU encoding), se descodifica 
> para o ficheiro /tmp/.buqtraq.c.
>
> A única maneira de mostrar o ficheiro .buqtraq.c é com o comando "ls" 
> com o parametro "-a" (ls-a).
>
> Depois, o worm utiliza o compilador gcc para cira uma cópia executável 
> de si mesmo em /tmp/.bugtraq.
>
> Este binário é executado com uma direcção IP como parâmetro. Este 
> endereço IP corresponde á máquina do atacante e utiliza-se para criar 
> uma rede de sistema infectados pelo worm com o propósito de executar 
> ataques de Negação de Servico, DoS.


A rede de sistemas afectados comunica entre si através da porta 2002, 
pelo que o resultado de um "nmap -sU -p 2002" deve mostrar alguma coisa.

> O worm só funciona em computadores com processador Intel, 
> executando-se nas seguintes distribuições Linux, e com o servidor 
> Apache e OpenSSL anterior à versão 0.9.6g activados:
>
> Red Hat
> SuSE
> Mandrake
> Slackware
> Debian


A alteração do Slapper para outras plataformas é trivial, devemos 
presumir que outras versões foram criadas.

Anexo uma "script", da autoria de Glen Scott 
<glen em designsolution.co.uk>, capaz de analisar os registos do Apache, 
(em /var/log/httpd/error), e pesquisar por "visitas" do Slapper.

Anexo também a própria "worm". Divirtam-se ;)

Cordialmente,
-- 
Sérgio Araújo

3G - NetWorks <sergio em 3gnt.net>
Projecto Oásis <sergio em projecto-oasis.cx>
Tel: +351 252 374979 Fax: +351 252 317259
Ignorance more frequently begets confidence than does knowledge.
Darwin, C. (1871). The descent of man.



Sou apaixonado por sistemas UNIX :-)
Estou precisando de um ESTAGIO,
Se vc procura um funcionario dinamico e de aprendizado THE FLASH. ... 
Suas buscas terminaram, junto com minha depressao :-)
Preferencia por BSD, vagas em SP..



-------------- Próxima Parte ----------
Um anexo não-texto foi limpo...
Nome: não disponível
Tipo: application/pgp-signature
Tamanho: 187 bytes
Descrição: não disponível
URL: <http://www.fug.com.br/pipermail/freebsd/attachments/20020920/b184a29e/attachment.bin>


Mais detalhes sobre a lista de discussão freebsd