|
|
Como defenderse del virus NIMDA/Red Code/Sircam ...
(28726 lectures)
Por Carlos Cortes Cortes
carcoco
(http://bulma.net/~carcoco/)
Creado el 21/09/2001 17:54 modificado el 21/09/2001 17:54
|
El virus NIMDA es un virus/troyano de los de ultima hornada, que utiliza varias tecnicas diferentes para atacar: Correo Electronico (gracias al OutLook), al visualizar pagina web (gracias al IE y puede que a otros navegadores), red local de Windows (gracias a Microsoft) y atacando servidores web (gracias al ISS de Microsoft).
Pero que tiene todo esto que ver con Linux ? ...
[NUEVO]: Correccion de errores, multiples enlaces nuevos y nueva seccion sobre el Sircam.
[ACTUALIZACION]: Ejecucion del virus Sircam en Linux usando Wine.
| Pagina1/1 |
Voy a centrarme en el ultimo de los metodos de ataque: infeccion de servidores web (se basa en aprovechar un error relacionado con la escalada de directorios a traves de caracteres Unicode en la URL), en servidores Internet Information Server:
El ataque lo que hace es mandar una peticion GET que busca el cmd.exe de los windows o el root.exe de otros troyanos como el Code Red II, de forma que si el ISS es vulnerable conseguira infectalo y este ordenador pasara a buscar nuevas victimas.
El virus scanea direcciones IP por Internet, atacando a todo tipo de maquinas.
Si tenemos activado el servidor Apache en nuestro Linux, quedaran registrados en sus log's todos estos ataques a nuestra maquina. Pudiendo conocer quien nos esta atacando y desde que IP concretamente de una forma muy sencilla:
Aqui podemos ver las peticiones que esta haciendo el nimda y otros
troyanos como el CodeRed II:
egrep "cmd\.exe|root\.exe|\.ida" /var/log/httpd/access_log
Y esta nos devuelve el numero de ip's diferentes desde las que nos han atacado:
egrep "cmd\.exe|root\.exe|\.ida" /var/log/httpd/access_log | \
awk '{print $1}' | sort | uniq | wc -l
Aqui tenemos firmas de ataques de otros gusanos:
egrep "scripts|_vti_bin|_mem_bin" /var/log/httpd/access_log | \
cut -f1 -d" " | sort | uniq | wc -l
(Nota: La ubicacion del fichero de lods puede ser diferente, se puede averiguar
tecleando locate access_log. La contrabarra "\" indica que el comando
sigue en la linea siguiente)
Ahora podemos saber la direccion y el dominio madre de esa IP, utilizando el comando whois
http://bulma.net/body.phtml?nIdNoticia=380
Posibles medias a tomar:
- Programas que detectan y manda correo a los administradores de las maquinas
y/o listas especiales de maquinas infectadas:
codeblue-v4:
Este programa escrito en C, recorre un fichero de log's buscando ataques por
virus del tipo Code-Red y similares, una vez encontrada la direccion IP,
intenta establecer una conexion con dicha maquina, para enviarle un correo
avisando al Administrador de la infeccion.
http://www.tenebrous.com/files/codeblue-v4.tar.gz
wormreport-1.2
Este programa tambien recorre los logs, generando un informe con el numero
de accesos, el nombre, la IP e intenta averiguar el domino.
Luego este log se manda a una direccion para coordinar y corregir el problema.
http://tuxzone.net/scripts/wormreport-1.2.tar.gz
Nimda Notifyer:
Similar a los anteriores manda al coordinador de netblock un correo informado de las maquinas infectadas.
http://www.digitalcon.ca/nimda/nimda-notify.pl
CNimda de Felix-Gabriel Gangu
Este programa en PHP, que muestra los intentos del NIMDA de infectar tu servidor.
http://phpclasses.upperdesign.com/browse.html/package/335
Snort es un NIDS, Network Intruction Detection System; en este articulo nos dan las claves para configurarlo de forma que nos detecte los ataques del nimda.
http://www.snort.org/article.html?id=31
http://lizard.drsuse.org/snort/snort18.html
- LaBrea:
La idea detras del programa LaBrea, es crear unas maquinas virtuales usando direcciones IP de nuestra propia red no utilizadas, de forma que aunque no detienen al virus/gusano/troyano, lo mantienen entretenido, aligerando notablemente el impacto de los mismo en nuestras redes.
http://www.hackbusters.net/LaBrea/
- Samba, nmap: Conociendo la ip de la maquina que nos esta atacando, y sabiendo que tendra compartida una carpeta con el usuario administrador y sin permisos, podemos usar los comandos del samba: nmblookup, smbclient y smbmount, para acceder a la misma y dejarle una mensaje al administrador del sistema, o incluso podriamos detener el ataque. Seria un especie de autodefensa ;-)
Aunque no se las implicaciones legales de esta opcion, puesto que incluso
nos podrian acusar de acceso ilegar a sus maquinas :-(. Cuidado!.
http://www.samba.org
http://www.insecure.org/nmap/
Usando Iptables y el script ipblock podemos bloquear las direcciones IP que esten infectadas y que nos estan saturando nuestras redes:
http://bulma.net/body.phtml?nIdNoticia=861
Deteccion de virus con tcpdump:
http://bulma.net/body.phtml?nIdNoticia=843
He realizado una selecion de documentacion y
programas/scripts sobre estos
virus/gusanos/troyanos, seguro que aqui puedes encontrar informacion
complementaria y muy valiosa; como la que explica como configurar el apache,
de forma que cuando le llegue algun intento de infeccion, responda mandado
una paguina web, al servidor infectado, usando la misma vulnerabilidad que
explota el troyano:
Otro de los virus que todavia se mantiene vivo y en su dia causo bastantes
problemas, al colapsar los buzones de correo, de miles de usuarios en todo
el mundo, es el Sircam. Este virus se autoreplica,
usando una vulnerabilidad del OutLook, mandando
correos con ficheros adjuntos de considerable tamaño y con mensajes tan
sugerentes como Te mando este fichero para que me des tu opinion,
siendo el origen del mensaje alguien conocido por el destinatario.
Aqui el problema radica en poder borrar de nuestros buzones, los enormes
correos (que ademas llevaban el virus):
Os presento tres posibles alternativas, Mailfilter, AniMail
y PopMail, pero existen muchas mas alternativas y posibilidades:
- Mailfilter o cómo remediar un ataque del Sircam:
http://barrapunto.com/article.pl?sid=01/08/08/0633233&mode=thread&threshold=
http://www.planetalinux.com.ar/article.php?aid=52
http://mailfilter.sourceforge.net/
- Animail:
href="http://www.escomposlinux.org/fer_y_juanjo/linux.php?pag=animail.html
- PopMail:
http://www.escomposlinux.org/sromero/prog/popmail.html
Ejecucion del virus Sircam en Linux usando Wine.
Parece ser que usando el wine
(Wine Is Not an Emulator - Wine no es un emulador,
sino realmente es una capa de
abstraccion que permite ejecutar binarios de windows en Linux),
se ha conseguido ejecutar el virus Sircam en sistemas Linux,
pudiendo estudiarlo internamente de una forma totalmente controlada
e inofesiva:
http://www.vnunet.com/News/1125594
|
http://appdb.codeweavers.com/appview.php?appId=277
--
Carlos (aka carcoco)
http://bulma.net/todos.phtml?id_autor=132
|
|
|
|
|
|
Comentarios Es posible que se hayan omitido algunos comentarios considerados poco constructivos
| 1. Re: Como defenderse del virus NIMDA/Red Code/... (21/09/2001 18:26, #2733) Por: DaniRC |
| Sigue asi chico! que gozada de articulos instructivos que nos brindas :-) |
|
2. Re: Como defenderse del virus NIMDA/Red Code/Sircam ... (22/09/2001 11:39, #2738) Por: Manuel de Vega Barreiro (http://www.croftj.net/~barreiro) |
Muy interesante. Ayer puse en servicio un servidor
apache, y todavia sin anunciarlo, he recibido 525
intentos de ataque. !increible!
Un saludo |
|
3. Re: Como defenderse del virus NIMDA/Red Code/Sircam ... (22/09/2001 15:55, #2741) Por: Gigi (http://www.navegalia.com/personal/gginard/mispag.htm) |
Si detectas una ataque de estos, hay alguna forma de filtrar estos ataques de tal forma que pase de ellos para no cargar el servidor con peticiones que no queremos que se produzcan.
Vamos que si nos damos cuenta que nos estan buscando el cmd.exe, hacer que no se reciban mas peticiones de esa IP y de esa forma que nuestra maquina se dedique a otra cosa mas util.
Creo que mas o menos captas la idea. |
|
4. Re: Como defenderse del virus NIMDA/Red Code/Sircam ... (22/09/2001 17:00, #2743) Por: carcoco (http://carcoco.eresmas.com) |
Si capto la idea perfectamente, puedes usar el ipchains o el iptables (segun la version del kernel que tengas instalado) para impedir que te sigan llegando esas peticiones desde una determinada IP.
Precisamente en el articulo, hay un punto que dice:
- Usando Iptables y el script ipblock podemos bloquear las direcciones IP que esten infectadas y que nos estan saturando nuestras redes:
http://bulma.net/body.phtml?nIdNoticia=861
ftp://www6.software.ibm.com/software/developer/library/l-fw.pdf
http://www.gentoo.org/projects/dynfw-1.0.1.tar.gz
Si quieres te puedo mandar 2 ejemplos que tengo, uno usando ipchains y el otro en perl.
|
|
5. Re: Como defenderse del virus NIMDA/Red Code/Sircam ... (23/04/2004 16:36, #20870) Por: leolinux |
| si mandamelo por favor
gracias desdde ARGENTINA. |
|
|
6. Prevenir (23/09/2001 12:03, #2747) Por: SunChat (http://sunchat.tegaweb.com) |
Bueno, si antes busco cosas sobre el Nimda este, antes las encuentro ;))).
En fín, sólo voy a dar una opinión, contar una experiencia y hacer una pregunta.
La opinión: Si filtras los logs del Apache en busca de ataques de ese tipo y automatizas una regla de ipchains/iptables, creo que es buena idea, pero el ataque YA se ha producido, ¿no?... y no puedes predecir cual será la siguiente IP que te "aterrizará" en el apache... aunque se evita posteriores ataques por parte de esa ip... lo cual no está mal (algunos administradores de NT/2000 no parecen destacarse por la rapidez detectando "bichos" de estos, y los ataques pueden repetirse)
La experiencia: he aplicado algo bastante parecido (en un Unix tosco) a los trucos que se cuentan en el artículo, hace unos días:
for i in `grep msadc /var/log/apache/access.log | cut -f1 -d' ' | uniq | xargs echo`; do ipchains -A input -j DENY -s $i; done
(siento mi ignorancia en awk y sigo usando mi entrañable "cut")
Lo iba a aplicar via crontab cada "x" tiempo, pero me dí cuenta que sólo evitaba ataques DESDE IPs que ya me habían atacado, pero no preveía nuevos ataques... entonces y por último, la pregunta:
¿Hay manera de hacer un firewall sobre la carga útil de un paquete con ipchains/iptables? Leo que iptables puede copiar un paquete al espacio de usuario y éste puede crear un programa que "trate" dicho paquete.... ¿no sería muy interesante? Directamente filtrar paquetes con destino al puerto 80 y con payload *msadc* o algo así... quizás ya lo haya, quizás no se pueda y quizás esté diciendo tonterías... en fín...
Saludos |
|
7. Re: Prevenir (23/09/2001 13:46, #2749) Por: carcoco (http://carcoco.eresmas.com) |
Para hacer lo que preguntas, debes usar un NIDS, como el http://www.snort.org,
que sera el encargado de detectar los intentos de infeccion a tu
servidor.
Luego necesitas un programa que usando la informacion proporcionada por
snort, modifique la reglas de tu Firewall, por ejemplo:
Dynamic snort log 2 iptables.
http://www.newald.de/dsli/
|
|
8. Re: Prevenir (26/11/2001 17:42, #3561) Por: dtemes |
| Por ejemplo en mi servr no utilizo ningún directorio scripts, por lo que con una directiva <Location /scripts> intercepto las llamadas y redirijo las mismas a http://localhost/scripts/... Tambien se podría hacer un pequeño script con php o perl que coja la ip origen y cree una regla en el firewall bloqueando el acceso. Con una directiva scriptalias se podría llamar a esta página php de forma que solo "entraría" el primer ataque desde una ip determinada, los demás los bloquearía el firewall, supongo que liberaría carga en el servidor web... |
|
|
9. Re: Prevenir (24/09/2001 01:07, #2757) Por: Celso |
Lo estabamos hablando hace nada en la lista, parece que con iptables existe una opcion para filtrar por el contenido de una peticion
iptables bla bla -m string --string "root.exe" -j DROP
El problema es que ahora somos incapaces de encontrar donde esta el match string este (parece que ha desaparecido en iptables 1.2.3)
PD. Me alegra volver a verte ;-) |
|
|
|
|
|
11. Re: Como defenderse del virus NIMDA/Red Code/Sircam ... (23/09/2001 15:11, #2750) Por: carcoco (http://carcoco.eresmas.com) |
Os recomiento una visita a
http://www.dshield.org/, Distributed Intrusion Detection System:
DShield.org is an attempt to collect data about cracker activity from all
over the internet. This data will be cataloged and summarized. It can
be used to discover trends in activity and prepare better firewall
rules.
Right now, the system is tailored to simple packet filters. As firewall
systems that produce easy to parse packet filter logs are now available for
most operating systems, this data can be submitted and used without much
effort.
Hay 2 cosas que me han gustado mucho de dshield: el grafico mundial segun
las IP's infectadas y el Are you cracked? Click here to see, donde
podemos ver si tenemos problemas de ataques (informados a dshield)
desde nuestra IP.
|
|
12. Re: Como defenderse del virus NIMDA/Red Code/Sircam ... (23/09/2001 23:10, #2756) Por: El cobarde anónimo |
| BillGates y Cia faltaron a clase el día que explicaron el tema de la seguridad. |
|
13. Dos pequeños detalles (24/09/2001 14:38, #2761) Por: El cobarde anónimo |
Hola:
Muy bueno el artículo, dos breves apuntes:
Falta una barrita invertida antes de .ida para que el punto se interprete como literal
Es decir: egrep "cmd\.exe|root\.exe|\.ida" /var/log/httpd/access_log
Si no, tomará como falsos positivos cosas como un inocente "GET /documentos/comunidad.htm".
La petición de "_vti_bin" también puede dar falsos positivos. No siempre proviene de gusanos, M$ Frontpage hace una petición con referencia a esa cadena al abrir una página de forma remota.
Joer, estos gusanos son una auténtica plaga (me refiero al Redcode & company, no a M$ ;-) |
|
14. Re: Dos pequeños detalles (24/09/2001 20:28, #2765) Por: carcoco (http://carcoco.eresmas.com) |
Muchas gracias no me di cuenta de ese pequeño detalle, hay que escapar los puntos "." con "\" para que los tome como puntos y no como expresiones regurales.
;-)
|
|
|
|
|
16. ipw: alternativa a whois (25/09/2001 09:00, #2779) Por: El cobarde anónimo |
| Una alternativa muy buena a whois es ipw, escrito por Ron Guilmette. Busca en las bases de datos de ARIN, RIPE y APNIC.
http://www.mjhb.com/ipw/ |
|
17. Re: Como defenderse del virus NIMDA/Red Code/Sircam ... (04/07/2002 16:36, #7126) Por: El cobarde anónimo |
| es IIS no ISS XDDD |
|
18. Re: Como defenderse del virus NIMDA/Red Code/Sircam ... (23/04/2004 16:48, #20871) Por: leolinux |
| quien de ustedes ataco bulnero el sistema de una universidad con un administrador que es un experto en routers CISCO JEJEJE PUE YO YA LO TENGO EN MI PODER JEJE.
el pedaso de idiota es un sobervio apesar de ser unixcero
jeje.que me den sus opiniones
leolinux desde argentina. |
|
19. Re: Como defenderse del virus NIMDA/Red Code/Sircam ... (09/05/2004 18:43, #21132) Por: mavriqi (http://www.kastriot.net) |
| im mavriqi-1- |
|
|
|
|
|---|
|
|
|
|
Calificacion
    Vots: 18 |
Danos tu opinion:
|
|
|
|
|
|
|
|