CornerCircleTop
CornerCircleBottom
VButtonBarBottom
Pàgina Inicial
Una per Dia
Articles
Directori
Biblioteca
Alertes
VButtonBarBottom
Una per Dia

Última Modificació del Document
11 de juliol de 2002


Una per Dia - Tornar a l'índex
Versió en català de "Una al día" d'Hispasec

10 de juliol de 2002 - APC: un cuc que ataca a Apache

Està circulant un cuc, extremadament complex, que ataca als servidors web basats en Apache, a la plataforma FreeBSD, que encara no han estat actualitzats.

Tal com vam informar (veure http://www.quands.cat/alertes/html/apache020617.html) a mitjans del mes passat es va donar a conèixer l'existència d'una vulnerabilitat a les versions d'Apache anteriors a la 1.3.26 i la 2.0.39. El problema estava en la forma en que Apache processava les capçaleres incorrectes a les "dades trossejades" ("chunked data").

La vulnerabilitat permetia a un atacant remot originar una condició d'error al servidor. En funció de la versió d'Apache i el sistema operatiu utilitzat al servidor es podia arribar a l'execució de codi al servidor.

Desgraciadament, i en una actuació que va aixecar força polèmica, la vulnerabilitat va ser divulgada per ISS poques hores després d'haver estat descoberta, sense deixar marge als responsables del projecte Apache a publicar les versions actualitzades. Les noves versions d'Apache van trigar gairebé dos dies en estar disponibles per a ser baixades.

El cuc APC

El passat 28 de juny un servidor que actuava com a "honeypot" amb l'Apache 1.3.24 va permetre la captura d'un cuc que es connectava als servidors i intentava determinar si aquest era vulnerable. El cuc ha estat batejat com a "APC" a partir d'una cadena de text que hi ha al seu interior.

Comportament

La primera acció que fa el cuc és enviar un paquet (un senzill 'hola') al port 2001/udp d'una adreça IP fixa. A continuació resta a l'escolta en aquest mateix port, esperant rebre ordres. Això permet el control remot del cuc per a la seva utilització com un 'zombie' d'un atac distribuït de denegació de servei contra objectius concrets.

Simultàniament el cuc comença a rastrejar adreces IP, de forma aleatòria. A cada adreça intenta establir una connexió TCP contra el port 80, enviant una senzilla petició HTTP ("GET / HTTP/1.1").

Si la màquina remota respon, el cuc analitza la resposta. Si el servidor remot s'ha identificat com l'Apache, s'envia una segona petició HTTP que conté el codi de l'atac (veure, http://www.idefense.com/idtools/Apache%20Worm.txt).

Aquest atac és específic contra la plataforma FreeBSD 4.5.

Infecció

El servidor web registra, al fitxer d'activitat de l'Apache, la següent entrada:

[Sun Jul 7 13:47:19 2002] [error] [client xx.xx.xx.xx] client sent HTTP/1.1 request without hostname (see RFC2616 section 14.23): /

Per la seva banda, a /var/log/messages es registra el següent missatge:

Jul 7 13:47:25 foobar /kernel: pid 22639 (httpd), uid 80: exited on signal 11

Als sistemes vulnerables, el cuc es copia al directori /tmp amb els noms ".a" i ".uua".

Un cop copiats aquests fitxers, s'executa /tmp/.a, finalitzant el cicle.

Detecció

Es pot detectar la presència del cuc comprovant l'existència dels fitxers ".a" i ".uua" al directori /tmp. Una altra forma de detectar l'activitat del cuc és monitoritzant el tràfic que fa servir el port 2001/udp.

Eliminació

Per tal d'eliminar el cuc a una màquina compromesa cal esborrar els fitxers ".a" i ".uua" del directori /tmp i matar el procés del cuc:

% ps aux | grep ".a" 

nobody 1103 (...) /tmp/.a xx.xx.xx.xx

% kill -9 1103

Prevenció

Actualitzar la versió d'Apache a la 1.3.26.

Més informació

Una per dia (17-06-02): Vulnerabilitat a Apache
http://www.quands.cat/unaperdia/arxiu/20020617.html

Una per dia (20-06-02): Es publica l'actualització d'Apache
http://www.quands.cat/unaperdia/arxiu/20020620.html

Vulnerabilitat a Apache
http://www.quands.cat/alertes/html/apache020617.html

Apache Security Advisory
http://httpd.apache.org/info/security_bulletin_20020617.txt

Avís del CERT (CA-2002-17)
Apache Web Server Chunk Handling Vulnerability
http://www.cert.org/advisories/CA-2002-17.html

Apache Worm in the wild
http://online.securityfocus.com/archive/1/279529
http://dammit.lt/apache-worm/
http://dammit.lt/apache-worm/apache-worm.c

The Apache "APC" worm
http://www.securiteam.com/securitynews/5ZP05207PQ.html

Apache Worm Analisys
http://www.freebsd.org/cgi/getmsg.cgi?fetch=34552+54852+
/usr/local/www/db/text/2002/freebsd-security/20020707.freebsd-security

Xavier Caballé
xcaballe@quands.com

Contacte: info@quands.com