__________________________________________________________________________________
![]() |
La siguiente Guía cubre las bases de la falsificación de correo electrónico.
La primera convención de hackers a la que asistí fue Def Con III, en el hotel Tropicana de Las Vegas, en agosto de 1995. Me traje un portátil de pocas prestaciones con Windows 3.11 y un módem. El salón de baile tenía una conexión telefónica activada con la que al parecer nadie hacía nada, así que la ocupé. Hice telnet a las diferentes máquinas Unix en las que tenía cuentas shell y entretuve a montones de hackers mostrándoles cómo podían falsificar correo electrónico en casi cualquier ordenador conectado a Internet.
Gregory Gillis, del Dis Org Gang, lo encontró tan genial que me hizo escribir las instrucciones sobre cómo falsificar correo electrónico, las copió en disquetes y se las vendió a la gente de la Def Con.
Hoy en día es mucho más difícil falsificar correo que cuando publiqué esta Guía. La razón es que los spammers falsifican el correo electrónico para enviar correos basura. Esta práctica carga enormemente la máquina empleada para enviar el correo falso, no permitiéndole realizar sus tareas normales. ¡También hace que toda esa gente que recibe correos del estilo "fotos calientes XXX" se vuelva totalmente loca! Así pues, sólo los más despistados dejan sus servidores de correo abiertos al público.
Todavía es fácil falsificar correo electrónico: simplemente tienes que saber más que los spammers. En la Guía que sigue he añadido instrucciones sobre cómo encontrar, en menos de diez minutos, un ordenador en el que poder falsificar correo. Claro que si lo que quieres son instrucciones actualizadas, real y seriamente detalladas acerca de cómo falsificar correo, echa un vistazo a mi libro *The Happy Hacker*, que está en la mayoría de las estanterías de las librerías Barnes & Noble
Carolyn Meinel.
Hacking osado en media hora. ¿Cómo te gustaría dejar alucinados a tus amigos? Bien, ¿cuál es la cosa más flipante que has oído que hacen los hackers?
Conseguir acceso a un ordenador sin tener autorización para ello, ¿no?
Así que ¿te gustaría ser capaz de acceder y ejecutar un programa en casi cualquiera de los millones de ordenadores conectados a Internet? ¿Te gustaría acceder a todos esos ordenadores de la misma forma que lo hizo el hacker más notorio de la historia: ¡Robert Morris!?
El Gusano de Morris fue el que desmontó Internet en 1990. Desde luego, el fallo que aprovechó para llenar el 10% de los servidores de Internet con su virus de autoenvío ha sido arreglado ya en la mayoría de los servidores.
Pero esa misma característica de Internet tiene todavía montones de fallos y diversión por descubrir. De hecho, lo que vamos a aprender es el primer paso de varias de las maneras más comunes que los hackers usan para introducirse en las zonas privadas de ordenadores desprevenidos.
Pero no te voy a enseñar a meterte en esos sitios. Suena demasiado mal. Además, soy alérgica a la cárcel.
Así que lo que vas a aprender es legal e inofensivo, pero la mar de divertido. Nada de vendas en los ojos ni juramentos de sangre con los colegas que te vean hacer estas cosas.
Pero, para probar estas técnicas vas a necesitar un servicio de conexión que te permita hacer un telnet a un puerto específico de un servidor conectado a Internet. Netcom, por ejemplo, te dejará salirte con la tuya.
Sin embargo Compuserve, America Online y la mayoría del resto de proveedores de acceso a Internet son tan buenas niñeras que te evitarán que caigas en la tentación.
¡La mejor forma de hacer esto es con una CUENTA SHELL! ¡Hazte ya con una si no la tienes todavía!
Este hack es muy simple, incluso si nunca te habías conectado por telnet antes. De hecho, incluso aunque lo que vas a aprender te parezca de lo más osado, lo puedes dominar en media hora, o menos. Y sólo tienes que memorizar *dos* órdenes.
Para comprobar si tu proveedor de acceso a Internet te permite hacer este tipo de cosas, prueba con:
telnet
callisto.unm.edu 25
Este es un ordenador de la Universidad de Nuevo México. Mi cuenta de Compuserve se cuelga cuando lo pruebo. Simplemente corta la sesión de telnet sin decir siquiera "tch, tch".
Pero, al menos hoy, Netcom todavía me permite usar esta orden. Y casi todas las cuentas shell ofrecidas por un proveedor de acceso a Internet cutre también lo harán. Muchas cuentas de la universidad también te dejarán salirte con la tuya.
Busca en las páginas amarillas. Mira en Internet. Llama y pídela.
Lo normal es que te digan "Claro que podemos". Pero la mayoría de las veces te están mintiendo. Creen que eres demasiado tonto como para saber lo que es una verdadera cuenta shell. O el tío mal pagado con el que hablas no tiene ni idea.
La mejor manera es pedir una cuenta temporal de invitado. Cualquier proveedor de acceso a Internet que merezca la pena te dejará una de prueba gratis. Con esto ya puedes probar el truco del día.
De acuerdo, supongamos que tienes una cuenta seria que te deja hacer telnet a algún sitio. Así que volvamos a probar:
telnet
callisto.unm.edu 25
Si ya habías hecho algún telnet antes, lo más probable es que pusieras sólo el nombre del ordenador al que te querías conectar, sin añadir ningún número detrás. Esos números marcan la diferencia entre el ciudadano bueno y aburrido de Internet y alguien que se desliza por la resbaladiza pendiente que conduce al reino de los hackers.
Con ese 25 le estás diciendo al telnet que quieres conectarte a un puerto específico de tu víctima...digo, ordenador.
Un puerto de un servidor es un sitio por el que la información entra y sale. En el ordenador de tu casa, ejemplos de puertos podrían ser: el monitor, que envía información hacia fuera; el teclado y el ratón, que envían información hacia dentro, y el módem, que transmite información en ambos sentidos.
Pero un servidor conectado a Internet como callisto.unm.edu tiene muchos más puertos que el típico ordenador casero. Estos puertos se identifican mediante números. Estos puertos ya no son puertos físicos, como un teclado o un puerto serie RS232 (para un módem): son puertos virtuales (software).
Hay mucha diversión en el puerto 25. Muchísima diversión. Mira, cuando te conectes al puerto 25 de un ordenador obtendrás a veces, un mensaje diciendo "acceso denegado" (cuando te encuentres con un cortafuegos); pero muchas más veces te encontrarás con algo como esto:
Trying
129.24.96.10...
Connected to callisto.unm.edu.
Escape
character is '^]'.
220 callisto.unm.edu Smail3.1.28.1 #41
ready at Fri, 12 Jul 96 12:17 MDT
¡Eh, mira esto! No nos ha pedido que nos identifiquemos. Simplemente dice... ¡listo! Fíjate que está ejecutando Smail3.1.28.1, un programa empleado para componer y enviar correo electrónico.
¡Oh, Dios mío! ¿Qué hacemos ahora? Bien, si de verdad quieres parecer sofisticado, lo siguiente que tienes que hacer es pedirle a callisto.unm.edu que te diga las órdenes que puedes usar. Por norma general, cuando entras en un ordenador ajeno, "help", "?" o "man" te dará información. En este caso yo tecleo:
help
...y me aparece esto:
250 The following SMTP
commands are recognized:
250
250 HELO hostname startup
and give your hostname
250 MAIL FROM:<sender
address> start transaction from sender
250 RCPT
TO:<recipient address> name recipient for
message
250 VRFY <address> verify deliverability of
address
250 EXPN <address> expand mailing list
address
250 DATA start text of mail message
250 RSET
reset state, drop transaction
250 NOOP do nothing
250
DEBUG [level] set debugging level, default 1
250 HELP
produce this help message
250 QUIT close SMTP
connection
250
250 The normal sequence of events in
sending a message is to state the
250 sender mail with a
MAIL FROM command, give the recipients with
250 as many
RCPT TO commands as are required (one address per
command)
250 and then to specify the mail message text
after the DATA command.
250 Multiple messages may be
specified. End the last one with a QUIT.
Es decir:
250 Se reconocen las
siguientes órdenes:
250
250 HELO nombre comenzar y dar
el nombre de tu ordenador
250 MAIL FROM:<dirección>
comenzar transacción desde el remitente
250 RCPT
TO:<dirección> indicar destino para el mensaje
250
VRFY <dirección> verificar la disponibilidad del
destino
250 EXPN <dirección> expandir las
direcciones de las listas de correo
250 DATA comenzar a
escribir el mensaje
250 RSET reiniciar conexión,
abandonar la transacción
250 NOOP no hacer nada
250
DEBUG [nivel] especificar el nivel de depuración
250 HELP
produce este mensaje de ayuda
250 CLOSE cerrar la
conexión SMTP
250 La secuencia normal de eventos cuando
se manda un mensaje es:
250 especificar la dirección del
remitente con MAIL FROM,
250 indicar los destinos con
tantas órdenes RCPT TO como sean necesarias
250 (una
dirección en cada una), y luego especificar el texto del
mensaje
250 con DATA. Se pueden mandar varios
mensajes.
250 El último se indica con un QUIT.
Conseguir esta lista queda la mar de bien. Te hace parecer realmente de los buenos, porque sabes cómo hacer que la máquina te diga cómo usarla. Y eso significa que lo único que tienes que memorizar es "telnet <ordenador>" y "help". El resto puedes mirarlo mientras estés conectado. Así que, incluso si tu memoria es tan mala como la mía, puedes aprender y recordar este truco en sólo media hora. Rayos, puede que en medio minuto.
Bien, ahora...¿qué hacemos? Bien, ya te lo imaginabas, este es un programa de correo muy, pero que muy primitivo. ¿Y sabes por qué nos ha dejado entrar sin identificarnos? ¿Sabías que éste era el punto vulnerable que permitió a Robert Morris hacer saltar Internet?
El puerto 25 envía correo de un nodo al siguiente a través de Internet. Automáticamente acepta todo el correo entrante y, si el mensaje no pertenece a alguien con la dirección de ese ordenador, lo manda al siguiente ordenador de la red, haciendo que llegue al final hasta el ordenador de la persona indicada.
Algunas veces el correo va directamente del remitente al destino, pero si mandas un correo electrónico a alguien que esté bastante lejos, el mensaje puede atravesar varios ordenadores.
Hay millones de ordenadores en Internet que redirigen correo. ¡Y puedes tener acceso a casi todos ellos sin contraseña! Mejor aún, como pronto aprenderás, es fácil conseguir la dirección de Internet de todos esos ordenadores.
Algunos de estos ordenadores están muy bien protegidos, por lo que es difícil pasárselo realmente bien con ellos. Pero otros no tanto. Una de las diversiones del hacking es explorar ordenadores buscando aquellos que nos vayan bien.
Bien, ahora ya estamos en el país del Gusano de Morris...¿qué podemos hacer?