> menú > recursos > documentos >> Usted también puede hacerlo. Henry James



Usted también puede hacerlo
Henry James

We work in the dark                 Trabajamos a oscuras,
We do what we can                   hacemos lo que podemos,
We give what we have.               damos lo que tenemos.
Our doubt is our passion            La duda es nuestra pasion
and our passion is our              y la pasion es nuestro
task.                               trabajo.

The rest is the madness             El resto es la locura
of art.                             del arte.


HENRY JAMES, CITADO EN EL FAQ DE ALT.2600

Los hackers usan una gran diversidad de metodos para lograr sus objetivos, ninguno de los cuales es -como popularmente se cree- su genialidad innata ni la magia. Si se quiere entender el hacking, el primer paso es familizarizarse con las telecomunicaciones, los sistemas en general y algunos especificos. Los sistemas operativos controlan de manera absoluta el funcionamiento de las computadoras, y en su mayoria brindan ayuda extra en la pantalla, la gauchita funcion "Help". Pero hay algo mas importante en este primer paso: saber sobre los sistemas aquello que no se consigna en los manuales. Las revistas constituyen una exelente fuente de informacion. La renombrada 2600, que edita el procer norteamericano Emmanuel Goldstein, es una de las que brindan mayor utilidad; inclusive sus lectores que no son hackers la recomiendan. Otras ya desaparecidas, como TAP, se pueden conseguir buscando en los clasificados de 2600. Los libros acercan tambien datos de gran importancia. Bibliografia sobre hacking o, directamente, sobre seguridad; manuales de sistemas operativos y redes; especificaciones de protocolos; es indispensable toda aquella informacion que permita conocer las debilidades de un sistema y los comandos a los que responde, sus formatos de codigos, los modos de entrada y salida y cualquier detalle sobre hard y software. Los newsgroups (foros de mensajes publicos) de Internet, como comp.virus, alt.2600, alt.hackers, alt.security o comp.dcom.telecom -por nombrar algunos- son lugares para preguntar todo tipo de cosas y hallar la respuesta de expertos. Antes de dejar un mensaje en los newsgroups es conveniente leer las Frequently Asked Questions (FAQs, preguntas frecuentes) de cada uno. De cualquier modo, el arma principal del hacker es la inteligencia, pero no unicamente la suya. Para el llanero solitario de las redes, la falta de inteligencia, conocimiento o curiosidad del otro lado es de suma utilidad. Es muy comun que despues de un robo espectacular se escuche la frase "Lo ayudaron de adentro". En el caso del hacker generalmente es cierto, pero no por la consciente colaboracion de "el de adentro". Una password mal elegida, un sistema mal configurado, cualquier informacion que no siga el flujo correcto y se desvie hacia malas manos... todo puede ser aprovechado. Si el sistema fuese perfecto no podria ser hackeado. Pero no hay sistema perfecto, siempre hay una puerta mal cerrada. El problema con el que se topan los disen~adores es que los sistemas deben ser de uso sencillo, y eso facilita el ingreso de un hacker. Si se presentan trabas no solo los curiosos tendran inconvenientes: los usuarios legitimos tambien. Si el sistema permite que el administrador acceda a los archivos secretos, el hacker que consiga los atributos de aquel va a poder usarlos.

Bichos ------

Cuenta la leyenda que la primera computadora digital, la ENIAC, empezo un dia a funcionar mal sin motivo aparente; al revisar los circuitos, se descubrio que el problema era una polilla que se habia metido en el interior del ordenador atraida por el calor de las valvulas. De alli que el termino bug (bicho, insecto, en ingles) haya quedado, en la jerga informatica, como nombre de cualquier error de programacion. Actualmente los insectos no son un problema para los circuitos integrados y los chips, pero los errores de programacion siguen existiendo y se considera que un programa sin bugs es obsoleto, ya que cuando se detectaron y corrigieron todos los errores paso demasiado tiempo desde su creacion. Por lo general, un programador sabe que su producto tiene errores, pero el costo de corregirlos y enviar la nueva version a todos los usuarios no justifica que se solucionen inmediatamente. Por eso se esperan meses, y an~os, hasta que las modificaciones necesarias suman una cantidad tal que imponen la necesidad de una version actualizada. Mientras tanto, si el hacker conoce estos bugs puede aprovecharlos. Es lo que sucedio en 1991, cuando los holandeses penetraron en el sistema del ejercito de los Estados Unidos a traves de Internet. La revista 2600 lo explico asi: "Un usuario ingresa en una maquina de Internet. Usando FTP (un programa que permite copiar archivos de ida y vuelta entre dos computadoras, generalmente a traves de la red) se conecta a otra, la cual pide un nombre de usuario. Tipeando `anonymous', se obtiene un acceso limitado. El proposito es dejar disponibles archivos publicos sin tener que abrir cuentas para todos los que necesitan ingresar. Pero esta version de FTP tiene por lo menos un gran bug en su software. Utilizando ciertos comandos (quote user ftp, quote cwd ~root, quote pass ftp) el usuario no solo es capaz de acceder a la maquina remota sino que puede cambiar su direccion en el sistema al directorio raiz (root), la cuenta mas poderosa, que permite a quien la usa mirar todo. Ademas, los hackers pueden cambiar cualquier cosa, aunque con gran dificultad, porque no estan realmente dentro del sistema. Todavia estan confinados a trabajar dentro del programa FTP".

Un hacker habilidoso que utilice este metodo podra cambiar lo que desee dentro de la maquina, incluso el archivo de passwords o agregar un usuario con los privilegios de acceso que prefiera. Por supuesto, cada vez son menos las maquinas que tienen ese bug, especialmente despues de que fue publicado. Pero como dice el proverbio zen-hacker: "Es solo uno de los bugs posibles en solo una de las maquinas posibles". Otro bug tipico hasta hace algunos an~os, que todavia se puede ver en un pun~ado de lugares, es el que permite entrar en la cuenta de otro despues de que la persona corta. Es posible que esto suceda cuando coinciden una mala configuracion del modem y bugs en el programa. En algunas circunstancias -por ejemplo, si al usuario se le corta la llamada antes de que se desconecte- el modem puede atender otro llamado y abrir la comunicacion en el punto donde quedo la anterior, adjudicando al nuevo los mismos derechos. Es especialmente peligroso si el que quedo enganchado es un supervisor: equivale a que el usuario se levante de la silla frente a su terminal y un hacker se siente en ella. Hay que caer en el momento adecuado y, como los sistemas no muestran la password, el hacker no podra volver a ingresar en la cuenta a menos que el error se repita. Con este metodo, entre otros, PUA accedio a Delphi. Algunos bugs dependen de cuanto conoce el administrador las posibilidades que el sistema ofrece. El sistema operativo UNIX permite asignar a un programa, temporalmente, privilegios mas altos que los del usuario. Un uso adecuado permite a un operador -por ejemplo- ingresar clientes en una base de datos, que normalmente no puede ser modificada; pero a traves del programa correcto el sysop podra agregar clientes nuevos en un banco, aunque no le sera posible cambiar el saldo de ninguna cuenta. Cuando el operador sale del programa ya no puede tocar la base de datos. Si el hacker logra acceder a ese programa, tiene que simular la salida de este para modificar la base de datos, pero sin salir realmente, porque cuando lo hace pierde sus privilegios. Es aqui cuando un bug en el programa es critico: si en algun momento permite ejecutar otro programa que de la posibilidad de salir temporalmente al shell (interprete de comandos) del UNIX, el sistema continua dandole acceso superior. Un caso comun es que en algun momento haya que editar un archivo de texto con el editor Vi, que permite acceder al shell facilmente. Una vez en el shell se puede modificar la base de datos a gusto, o, si el programa tiene suficiente acceso, crear una cuenta nueva con privilegios de supervisor. Este no es un error de programacion del sistema: es un error de configuracion frecuentemente cometido por los supervisores o system programmers.

Puerta de emergencia --------------------

Una backdoor (puerta trasera) permite entrar en un sistema sin usar los metodos normales. El programador puede establecerla para accesos de emergencia o para no perder el control sobre su sistema en caso de que lo maneje otra persona. Una backdoor requiere la modificacion del programa, por eso en la mayor parte de los casos es obra del disen~ador. De todas formas, en un sistema conocido un hacker puede crear un patch (parche), un programa que modifique partes del sistema para abrir una backdoor donde antes no existia. Un ejemplo clasico de esta practica es lo que hizo uno de los disen~adores del UNIX original, Ken Thompson. En una version primitiva del sistema operativo agrego una rutina al compilador de C para que cada vez que tomara el comando "login" (el que valida a los usuarios y les da acceso al sistema), lo modificara y permitiera ingresar a cualquiera que usara una password elegida por Thompson. Si alguien veia el codigo y descubria la backdoor podia sacarlo, modificando el compilador. Al advertirlo, Thompson hizo que el compilador detectara si estaba haciendo una copia de si mismo y, en ese caso, volviera a cambiar las rutinas para que la backdoor siguiera en su lugar. Por supuesto esta puerta ya no existe en las versiones actuales de UNIX. El segundo caso, el del patch, fue usado por el Chaos Computer Club para entrar en la NASA. Introdujeron un programa en la red europea SPAN que se copiaba en todas las maquinas a las que tenia acceso. Una vez en la computadora deseada, utilizaba un bug del sistema para obtener privilegios especiales y emparchaba algunos programas para crear un usuario especial que no aparecia en los listados y era invisible para el administrador. De esta forma entraban en el sistema cuando querian.

Troyanos --------

Los griegos, para entrar a la ciudad fortificada de Troya, enviaron de regalo un caballo gigante de madera, con soldados ocultos en su interior. Cuando el caballo traspaso las murallas de la ciudad, los soldados salieron y la tomaron por la fuerza. En el mundo de la computacion, un troyano es un programa que parece una utilidad pero no lo es; el usuario lo ejecuta confiado, porque cree en las especificaciones, y se ve sorprendido en su buena fe. Un ejemplo tipico es un programa que dice servir para hacer trampa en un juego, pero que cuando se pone en marcha destruye el disco rigido. En 1987, en Alemania, se registro un inocente caballo de Troya: se llamaba Christmas (Navidad) y el operador debia teclear esa palabra para que en su pantalla se dibujara un tipico arbol adornado; mientras tanto, el programa leia la agenda electronica y se enviaba a si mismo a todos los telefonos que encontraba. Corrio por European Academic Research Network (EARNet, Red de Investigaciones Academicas Europea), BitNet (red con mil trescientas sedes en los Estados Unidos), VNet (correo electronico privado mundial de IBM) y cuatro mil computadoras centrales, mas las personales y estaciones de trabajo. A los dos dias se paralizo la red de IBM. Hay formas mas sutiles y menos dan~inas de hacer troyanos. Un hacker podria reemplazar el login de UNIX, por ejemplo, por un programa que haga exactamente lo mismo pero guarde una copia de la password ingresada por el usuario en un archivo accesible para el. Login es la pantalla que muestra un sistema cuando alguien intenta ingresar; en general consta de dos elementos: el pedido de identificacion (username, login, ID) y la solicitud de clave o password. Si el hacker tiene interes en algun archivo en particular al cual no tiene acceso, puede enviarle al supervisor un programa disfrazado de juego que, al ser ejecutado, copie ese archivo en un lugar accesible. Si estan bien hechos, los caballos de Troya no son faciles de descubrir, aun por un administrador experimentado; The Knightmare aconseja en su libro Secrets of the Superhacker tomar algunas precauciones en el momento de disen~arlo: que no acceda al disco rigido o perifericos porque llamaria la atencion del operador; distraer a quien lo ejecuta con algun mensaje o nota en pantalla; no utilizar comandos que -en caso de ser revisados manualmente por el administrador- demuestren el real objetivo; no colocarlo al principio ni al final del archivo.

Sen~uelo ------- Un decoy (sen~uelo, en ingles) es un programa disen~ado para que el usuario caiga en un movimiento donde se le pueda robar la password. Si un hacker tiene cuenta en una maquina o servicio determinado y quiere sacarle la password al administrador, puede conectarse con su cuenta y dejar un programa que imite al login normal de la computadora; se desconecta y espera a que el sysman entre al sistema usando su programa. Cuando este ingresa nombre y password, el decoy -segun su implementacion- puede por ejemplo anunciar que hubo un error y presentar el login verdadero, o puede hacer el login por el: en cualquier caso, el administrador no notara nada raro. Otro metodo es poner en el ordenador que se quiere hackear un programa que guarde todas las teclas que se presionan, algo bastante comun en DOS. De esta manera, el hacker puede leer lo que el usuario tipeo, incluyendo passwords, programas de acceso o trafico de informacion. Instalando uno de esos programas en una maquina que sea puente de una red, como un PAD, el hacker puede conseguir direcciones interesantes dentro de esa red, inclusive las passwords que se registren en ese nodo. Tambien se puede montar un sistema falso para que la victima se conecte pensando que ingresa en el lugar original: tal es lo que hicieron Doctor Trucho y El Chacal para averiguar el NUI de otro hacker. Por lo general, estos programas muestran un login igual al del sistema verdadero y luego de que el usuario teclea su password responden con algun tipo de error para que salga del sistema. Si se trata de una terminal a la que el hacker tiene acceso fisico, se pueden cambiar los cables y conectarlos a otra maquina. Si es por telefono, puede convencer al usuario de que el numero telefonico cambio (algo desaconsejable, porque si el usuario sospecha puede pedir confirmacion) o, si la compan~ia telefonica lo permite y el hacker se las ingenia, puede redirigir la linea verdadera a un aparato elegido por el.

El Adivino ---------- Para acceder a una maquina de la que se conoce el nombre de una cuenta (como root en UNIX) pero no la password, una posibilidad es probar todas y cada una de las combinaciones para conseguirla. El metodo se conoce como fuerza bruta y no es nada sencillo. Si el sistema permite letras de la A a la Z, mayusculas y minusculas, ademas de numeros del 0 al 9, y un largo de ocho caracteres, las posibilidades de comparacion son 218.340.105.584.896, sin contar teclas especiales y siempre que todas las passwords sean exactamente de ocho digitos. Probando un millon de combinaciones por segundo se tardarian casi siete an~os. Si se tiene en cuenta que algunos sistemas obligan al usuario a esperar unos segundos entre cada intento de login erroneo, es facil sospechar que tal vez no se trate del acercamiento mas practico a la solucion. Pero los sistemas son usados por personas, no por abstracciones matematicas. Eso permite pensar caminos mas cortos: muy poca gente, por ejemplo, va a elegir recordar una password como "Hks4Ijdh"; normalmente se prefieren claves como "Gustavo", "Mnemonic", "aeiou" o cualquier otra facil de retener en la memoria. En particular es muy comun el uso del mismo nombre de login como password: si el usuario ingresa como "pepe", es probable que su clave sea "pepe". Un estudio realizado en la Universidad de Michigan revelo que cinco de cada ochenta usuarios escogen como password su nombre. Tambien es frecuente el uso de una sola letra, con lo cual las posibilidades se reducen a cincuenta y dos, contando mayusculas y minusculas. Un usuario puede elegir como contrasen~a el nombre del sistema o, por ridiculo que parezca la palabra "password". En terminos generales, nombres de personas, animales, lugares, marcas y personajes de ficcion son elecciones muy comunes. Esto reduce el espectro, aunque sigue siendo muy grande.

Un programa, el Password Cracker, permite chequear automaticamente las passwords corrientes. Es raro que se lo use contra un sistema en tiempo real: la mayoria de las veces se consigue el archivo encriptado de passwords y se chequea contra el programa. Las claves estan encriptadas con un algoritmo de una sola direccion, aquellos que permiten encriptar un texto pero no desencriptarlo. Es decir, no hay modo de conseguir la password a partir del archivo. Para chequear si la password ingresada por el usuario es correcta, el sistema encripta la clave que ingresa y la compara con el archivo. Un hacker que tenga un archivo de contrasen~as puede tomar una palabra, encriptarla y ver si esta en ese archivo. En UNIX el archivo de contrasen~as es legible por cualquiera y en muchos sistemas se puede conseguir a traves del FTP anonimo. Los programas chequeadores pueden verificar setecientas passwords por segundo si la computadora es una 486: cada palabra es encriptada en un diccionario (preparado por el hacker) y la chequean contra todas las passwords del archivo. Se puede adivinar un veinte por ciento de las claves en cuestion de horas o, si se usan diccionarios grandes, en un dia. Este metodo no descubrira contrasen~as como "PdejkK", pero va a encontrar las mas comunes. La defensa mas usada para evitar esta tecnica es permitir pocos intentos y desconectar la computadora si no se ingresa una password correcta. Otra posibilidad es buscar cuentas sin passwords, o passwords default. Cuando los hackers saben que en un sistema determinado el usuario "admin" viene configurado con password "admin", es lo primero que prueban. En general sucede con los que no son demasiado usados, como una cuenta para mantenimiento de emergencia, que puede llamarse "admin2" y no tener password por default. El administrador puede haber olvidado corregirlo y hasta puede ignorar que existe. Leer el manual del sistema con detenimiento permite vislumbrar posibilidades que, tal vez, el supervisor no conoce. Tambien pueden aprovecharse los procesos automaticos. En una red es probable que exista un usuario "backup" sin password, o con una obvia como "backup", que solo se utilice para realizar una copia de seguridad al ingresar. Este proceso debe acceder a todos los archivos por razones obvias; es, en consecuencia, un blanco apetecible para un hacker que puede usarlo si se conecta con ese nombre, aborta el backup y logra quedar en un shell de comandos.

Otras cuentas con menos prioridades permitiran ingresar en el sistema con privilegios minimos y usar diversos metodos para aumentarlos. En una red Lantastic, un usuario accedio con la cuenta "clock", que servia para sincronizar los relojes de las maquinas y no tenia password ni acceso a casi nada; luego uso un programa del sistema mal configurado que le permitia ver lo que estaba haciendo otro usuario en otra terminal. Si de adivinar passwords se trata, siempre es util saber lo mas posible sobre el usuario en cuestion. The Knightmare cuenta que un fanatico de Popeye tenia como password "OliveOyl"; en la pelicula Juegos de guerra la clave era el nombre del hijo de quien habia disen~ado el sistema. Averiguar datos del usuario es de gran utilidad, pero las posibilidades de hacerlo dependen del objetivo: si el hacker tiene acceso al lugar y puede hablar con los empleados, algunas preguntas bien hechas pueden ayudar. "¨Cual es tu password?" reveleria sin mas las intenciones y una persona que se interesa por los nombres de amigos, novias, animales y parientes puede resultar sospechosa. Pero si alguien se para en la puerta de un edificio y reparte cuestionarios para una supuesta investigacion, nada llamara la atencion y quiza obtenga las respuestas necesarias. Si bien ningun sistema muestra en pantalla la password mientras se la tipea, una vista rapida puede seguir el movimiento de los dedos y descubrir que letras marco el usuario: la tecnica se llama shoulder surfing y consiste en el antiguo truco de mirar discretamente por sobre el hombro del otro. Muchos hackers disimulados supieron conseguir interesantes datos frente a telefonos publicos, por ejemplo: claves de servicios de llamadas de larga distancia. Los programas de comunicaciones tambien son una fuente de passwords. Algunos, como el Terminate, permiten guardar la clave del usuario junto con el telefono del sistema. Otros dejan realizar "scripts", programas que facilitan la comunicacion con determinados lugares, en los cuales seguramente esta la password sin encriptar. Conseguir una contrasen~a de esa manera requiere acceso fisico a la computadora o, a traves de una red, al directorio donde se hallen.

¨Mi password? Como no ---------------------

La mejor fuente de informacion sobre un sistema son los usuarios. Muchos NUIs de Arpac fueron robados llamando a una empresa con cuenta en esa red y preguntandole la password a algun empleado. Por supuesto hay que justificar la necesidad de pedir esa informacion. El metodo se llama social engeenering y consiste en convencer a la gente de que debe informar algo que teoricamente no corresponde. Fry Guy lo uso para obtener los datos que le permitieron hackear la agencia de credito CSA, pero hay miles de casos que lo ejemplifican. Emmanuel Goldstein cuenta que un hacker llamo a una empresa y pregunto el numero de telefono para acceder a su computadora. Hablo con el responsable del centro de computos pasando por un usuario legitimo, pero ante las sospechas del operador se puso nervioso y dio respuestas contradictorias. El hombre amenazo con denunciar de inmediato ese intento de ingreso ilegal al administrador del sistema. El hacker consulto con otro colega, quien lo tranquilizo: "No te preocupes, yo voy a arreglar todo", fueron las palabras. Dejo pasar media hora y se comunico de nuevo con el operador. "Buenas tardes. Le hablo de la oficina del administrador del sistema -mintio-. Usted denuncio hace unos momentos un intento de averiguar el numero de acceso a nuestra red; hizo un gran trabajo, lo felicito. Para confeccionar el informe necesito que me diga cual es el numero que querian averiguar". El operador se lo dio, el hacker agradecio y colgo: habian obtenido el numero aun despues de que parecia imposible. Esta tecnica puede adoptar muchisimas formas y se puede realizar por telefono, personalmente, o por escrito. Por ejemplo, es posible que alguien simule ser inspector de la Direccion General Impositiva (DGI) y vaya a la empresa cuya computadora se quiere hackear para ver los archivos: la persona que atienda al truchinspector tendra que brindarle la password para acceder a la informacion contable. Tambien es posible fingirse periodista y preguntar con profesional inocencia todo sobre el funcionamiento del sistema de una empresa. Son formas indudablemente peligrosas: permiten que luego el hacker pueda ser reconocido. Por escrito se puede solicitar a las empresas, usurpando el lugar de un usuario, informacion sobre los errores de los programas o sobre su funcionamiento.

Cartoneo Informatico -------------------- Los diagramas de flujo de la informacion terminan tipicamente en un mismo punto: el archivo. Una factura, una orden de compra, un listado de numeros telefonicos de acceso a una red se guardan en una caja hasta que alguien necesita verlos. Pero no toda la informacion que circula en una organizacion sigue un diagrama de flujo correctamente disen~ado. Un operador puede anotar su password en un papelito y una vez que se la acuerda de memoria tirarlo a la basura. Uno de los principios de la termodinamica dice que nada se destruye, todo se transforma: el papelito con la informacion comprometedora va a salir de la organizacion en una bolsa y Manliba se ocupara de ella. Desde que sacan la basura de la empresa hasta que pasa el camion de Manliba, un hacker puede revisar la bolsa y encontrarlo. Esta tecnica se llama trashing, del ingles trash, basura. Bruce Sterling concurrio a una reunion de agentes norteamericanos federales durante la investigacion que realizo para su libro The Hackers Crackdown. Mientras esperaba fuera de la sala de conferencias se pregunto que haria un hacker en esa situacion: buscaria entre la basura cualquier dato de valor. Decidio husmear en el cuarto de enfrente, que no tenia relacion con los investigadores. Entre los papeles de la basura encontro una cuenta telefonica de larga distancia de Sprint a nombre de Evelyn. Un cartel escrito en computadora decia: "Trata a tu tarjeta de telefono como a cualquier tarjeta de credito. Para asegurarte contra un fraude, nunca digas tu numero por telefono a menos que tu hayas llamado. Si recibes llamados sospechosos notifica a servicio al cliente inmediatamente". Sterling pego los pedazos con cinta adhesiva y pudo ver los diez digitos de identificacion de la tarjeta aunque faltaba el codigo, pero tenia el telefono de Evelyn y los de muchos de sus amigos en el mundo. Si Sterling hubiera sido un hacker habria tenido gran cantidad de informacion para explotar. Un papel con una palabra anotada puede ser una password, pero quiza no sirva demasiado si no se sabe a quien pertenece; un cuaderno con notas tomadas en algun curso puede ser una caja de Pandora. Es posible que el alumno anotara en detalle los pasos para entrar en un sistema y aun a falta de password esa informacion servira para saber como funciona ese sistema. Y no solo de papelitos cartoneados vive el hacker: no hay que olvidar los manuales. Muchas veces las empresas compran diez paquetes de software porque la ley de copyright les impide uno solo en todas las maquinas. Cada paquete trae su manual respectivo y, como suelen ser voluminosos, no es improbable que los empleados, una vez que crean dominar el sistema, los tiren. Recoger uno significa acceder a informacion dificil de conseguir sin comprar el producto. Un memorandum interno que explica procedimientos de seguridad, o detalla numeros de acceso externos al sistema de la compan~ia es invalorable. El riesgo del trashing es que alguien vea al hacker cuando lo esta haciendo y pida explicaciones. The Knightmare sugiere en su libro que se estan buscando latas para reciclar. En la Argentina esta excusa no es demasiado creible, pero hacerse pasar por botellero es sencillo si se consigue un carrito y se toma la precaucion de vestirse adecuadamente. Todo lo que se encuentre en la basura es potencialmente util si el hacker sabe como usarlo y darle el significado correcto, al mejor estilo Sherlock Holmes.

La Infeccion ------------

Pocas cosas en el mundo informatico excitan mas la imaginacion popular que un virus. Son programas que aparentan tener vida propia y que invaden las computadoras sin permiso. Se duplican a si mismos y suelen tener lo que se llama el payload, el regalito que infecta al sistema. Este puede ser inofensivo -los hay que meramente muestran un mensaje- o destructivo; en cualquier caso es peligroso ya que, como minimo, ocupa espacio en el disco y en la memoria. El primer caso conocido sucedio en 1960. "El monstruo de la galletita" -como fue bautizado el virus pionero en un articulo de la revista norteamericana Time- solo se ejecuto dentro de una universidad. Presentaba por toda la actividad una leyenda en la pantalla: "I want a cookie" ("Quiero una galletita"); no se reproducia; solo se repetia hasta trabar la maquina. La forma de desactivarlo era sencilla -aunque en la desesperacion hubo quienes probaron metodos extran~os, desde preguntar que tipo de galletita hasta acercar una al ordenador-: habia que teclear la palabra "Cookie". ¨Por que no darle lo que pedia?. Un virus parece el hacker ideal, pero no es tan cierto. Es un ente ubicuo y puede estar en cualquier parte, pero no es una ventaja para el hacker: no siempre va a aparecer donde le interesa. Un virus se escapa de control demasiado rapido y no se puede usar facilmente para atacar a un sistema en particular. Unicamente es perfecto para el vandalismo indiscriminado. Segun la definicion mas aceptada, se trata de un programa que modifica a otros agregandoles su codigo y -de esa forma- reproduciendose. El doctor Fred Cohen, el primer estudioso reconocido de los virus, tiene su propia definicion: un virus es cualquier programa que se autoreproduzca. Segun el, un gusano -un programa que no modifica a otros para reproducirse- tambien es un virus. La diferencia consiste en que estos se ejecutan cada vez que el usuario utiliza el programa infectado mientras que los gusanos deben buscar otros metodos, pero el uso de ambos en el hacking es similar: si es el objetivo, tanto unos como otros envian de regreso la informacion que recolectan. Por lo general un virus se copia en un diskette, de alli pasa de maquina en maquina y se pierde el control de donde va. Si un hacker quisiera usarlo deberia asegurarse de que ataque a la maquina correcta, para lo cual un virus normal de DOS no serviria. Necesita un virus programado especialmente para redes, que busque el camino desde su punto de origen hasta la victima. El gusano de Morris es un ejemplo exelente: aunque el no buscaba atacar a un sistema en particular, usaba algunas tecnicas de hacker para copiarse a lo largo de Internet. Otro ejemplo es uno de los experimentos de Fred Cohen, quien consiguio permiso para probar su virus en un sistema operativo que usaba una tecnica llamada Bell-LaPaluda que, se suponia, estaba disen~ada para dar un grado maximo de seguridad e impedir la filtracion de informacion. La idea de Fred era demostrar que un usuario con privilegios minimos podia introducir un virus para que accediera a la informacion mas clasificada. El programa que Cohen desarrollo tuvo exito: el secreto es que si un usuario con bajo nivel de acceso infecta uno de sus programas y consigue que otro de mayor privilegio lo ejecute, el virus va a tomar automaticamente los derechos del segundo y asi hasta llegar al maximo nivel. Para que funcione hay que tener acceso al sistema para, por lo menos, ingresar el virus. La clave consiste en saber que el programa es el usuario (sea un virus o no, tiene el mismo nivel de acceso que el usuario). Si el supervisor lo ejecuta, podra acceder a todo el sistema y una vez alcanzado ese nivel puede hacer lo que el hacker quiera: filtrar informacion secreta, instalar un backdoor o cualquier otra cosa.

Busqueda Frenetica ------------------

Scanning (busqueda) es, en el argot del hacker, la revision de una serie de posibilidades dentro de un sistema -por ejemplo, una red- para encontrar datos interesantes. Es el discador tipo Juegos de guerra: un programa llama mediante un modem a un numero telefonico tras otro y chequea que conteste otro modem. Guarda en un archivo los que encontro (incluso, segun el software, el cartel de bienvenida al sistema alcanzado) para que el hacker luego lo analice con tranquilidad. Puede hacerse a mano si se buscan Private Branch Exchanges (PBX, centrales telefonicas internas de empresas), donde un modem no es util. La desventaja es que, dada la cantidad de numeros telefonicos existentes, lleva demasiado tiempo, por lo que su practica se reduce a una cantidad menor, como los publicados en guia de una empresa determinada. Pero una vez conseguido el dato se puede manejar el circuito telefonico interno y utilizarlo para salir al exterior con llamadas de larga distancia. La tecnica no esta limitada a la red telefonica: se puede hacer scanning de numeros IP (la identificacion de la maquina) en una red TCP/IP (como internet) o intentarlo con ondas de radio. Muchos equipos de radio vienen preparados para buscar automaticamente sen~ales dentro del espectro radial que reciben. El hacker puede escuchar y obtener informacion interesante: llamadas telefonicas por inalambricos y celulares, comunicaciones de fuerzas de seguridad, etcetera. Toda la informacion que viaja por el aire esta a disposicion del hacker para ser analizada, desde cables de agencias de noticias hasta mensajes para los servicios de radiollamadas. Claro que algunos de estos datos requieren un equipamiento especial -disponible y a la venta en los Estados Unidos y otros paises- para ser detectados.

Cajitas -------

Para manipular las lineas telefonicas, phreakers y hackers inventaron una serie de dispositivos llamados "cajas". La mas conocida es la Blue Box (Caja Azul), un aparato que emite un tono de 2600 hertz con el cual convence a la central telefonica de que un operador u otra oficina de la empresa esta usando la linea. Quien opere una Blue Box puede controlar a gusto una central: hacer llamadas gratis, redirigirlas y todo lo que permita el software que controle. Otra caja popular es la Black Box (Caja Negra), que evita que la central telefonica detecte que el auricular fue levantado. Impide el cobro de las llamadas hechas a un telefono equipado con este aparato. Una Red Box (Caja Roja) emite tonos equivalentes a los que envian a sus centrales los telefonos publicos de los Estados Unidos, simula que se ponen moneadas y, en consecuencia, la comunicacion resulta gratis. Una Cheese Box (Caja de Queso) dirige las llamadas de un telefono a otro; el Infinity Transmiter (Transmisor Infinito) permite escuchar las llamadas hechas al telefono donde esta instalado.

Celulares ---------

Los telefonos celulares son especialmente vulnerables al hacking: sus chips pueden ser reprogramados para presentar el codigo de un llamador falso y evitar el pago. En general, la gente cree que impiden que la policia pinche las lineas, por eso lo prefieren -entre otros- los distribuidores de drogas, aunque es un error: no estan libres de que alguien escuche sus conversaciones, tal como lo demostraron los hackers argentinos en el Congreso de 1994. En sus origenes, los aparatos traian el numero de serie en un chip de memoria, lo que permitia reprogramarlo y cambiarlo a uno pirata. Ahora ese numero esta dentro de un chip que no es programable. En 1993 los paises con mayor cantidad de fraudes cometidos por via celular fueron Republica Dominicana, Egipto, Pakistan, India, Rusia, El Salvador, China, Colombia, Mexico y Ghana. En 1993 la agencia de creditos TRW anuncio una tecnica de "firma" que debe coincidir con el numero de telefono y el de serie, pero los conocedores del tema aseguraron que es un parche. El ingeniero Armando Parolari trabaja en la actualidad para la empresa de telefonia celular CTI. Afirma que "se pueden usar todas las lineas, porque si alguien se dedica a enganchar una frecuencia libre puede usarla, pero creo que el sistema celular es el mas confiable, porque tiene que ser algo muy circunstancial". Parolari esta convencido de que la telefonia celular sera la forma de comunicacion del futuro, porque ofrece una ventaja que considera imbatible respecto de las de cable rigido: la comodidad de llevar consigo el telefono. Para apoyar su teoria asegura que "hay paises nordicos que tienen un desarrollo de sistema celular equivalente al que nosotros tenemos en telefonia fija, es decir seis abonados por cada seis habitantes", pero reconoce que la gran limitacion es la banda de frecuencia. Opii no comparte la opinion de Parolari sobre la mayor seguridad de la telefonia celular. "Eso es una broma, el que dijo eso es un nabo -define, contundente, el chico- no tiene idea de nada. Es muy facil, con modificar el televisor, ya esta. Tenes que recibir una determinada frecuencia: entre 800 y 900 MHZ estan los telefonos celulares. Con cualquier cosa que reciba en esa banda, podes escuchar las conversaciones. Despues, si queres captar o usar uno en especial, es mas complicado. Pero escuchar, lo hace cualquier estupido."

Digitales ---------

En cuanto a los medios digitales, en este momento hay por lo menos tres CDs con informacion sobre hacking que se consiguen facilmente. Los BBS underground contienen archivos con materiales que van desde programas para hackear hasta instrucciones precisas para hacer determinadas operaciones. Conseguir sus numeros telefonicos no es dificil: en los BBSs corrientes hay listas de otros y, una vez que se accede a uno, descubrir mas es sencillo. Los operadores no se preocupan por mantener cautiva a su clientela y, en general, reservan un centro de mensajes o de publicidad donde figuran los telefonos. Un BBS es un programa que funciona con el modem de la computadora y que permite a quien llama elegir opciones desde una pantalla o menu principal. Las principales son: correo; envio y recepcion de archivos con diversas informaciones, programas o materiales publicados en otros medios; en algunos casos tambien hay juegos y se puede mantener una conversacion on line con el operador. Algunos son abiertos y cualquiera puede ingresar y accionar; otros son absolutamente cerrados y se limitan a presentar informacion, no admiten respuestas. Estan los anonimos (el operador no sabe ni el nombre el domicilio de los usuarios), intermedios (el sysop conoce la identidad de los usuarios pero estos no la de los otros usuarios) y los que prohiben el uso de seudonimos; los publicos y gratuitos; los privados (casi siempre cobran por asociarse y restringen los usuarios a amigos del operador). Algunos marcan status entre sus usuarios y, por ejemplo, no permiten el acceso de nin~os a determinadas areas. Aunque no se trata de algo cotidiano se puede hackear un BBS, pero hay muchos que no cobran por el servicio y hacerlo solo servira para recolectar informacion acerca de los usuarios y sus claves. Los de mayor taman~o, generalmente masivos, nacionales y comerciales, que ademas brindan servicios on-line -como Compuserve o Delphi- son, tradicionalmente, objetivos para el hacking. Los importes que cobran por asociarse resulta casi siempre elevados, pero contienen datos que los hackers saben utilizar. En cuanto a las redes, en la actualidad la unica que se tiene en consideracion es Internet: a traves de ella es posible llegar a otras treinta mil redes y a dos millones y medio de computadoras diseminadas por el mundo. Para un hacker que da sus primeros pasos es conveniente entrar en el underground y relacionarse con gente que este en el tema. En la practica, sin embargo, resulta muy dificil limitarse a usar los conocimientos de otros. Compartir descubrimientos, tecnicas, e informacion es una de las mas antiguas tradiciones dentro del mundo hacker, pero no significa que los secretos se revelen indiscriminadamente: es necesario ganarse la confianza de los hackers mas avezados y demostrar que el interes esta en adquirir conocimientos y no en conseguir llamadas de larga distancia gratis sin saber como. Los grupos de hackers suelen ser bastante cerrados y desesperarse por ingresar en ellos puede cerrar las puertas; las chances aumentan si se puede demostrar que se tiene algo para ofrecer y que se es una persona confiable y discreta.

Los responsables de la seguridad de los sistemas son conscientes de todas estas posibilidades y por lo tanto, toman precauciones. Una de ella es instalar una "pared de fuego": una computadora que registra todos los paquetes de informacion que ingresan en la compan~ia para, una vez verificados, derivarlos a otra que tiene conexion interna y no recibe archivos que no provengan de aquella. En el camino inverso, la interna envia los datos a la maquina que tiene conexion con el exterior y esta no acepta paquetes que registren otro origen. Los directivos de seguridad de ATT instalaron una pared de fuego en la oficina central de la compan~ia para preservar el sistema y Marcus Ranum, del Trusted Information Systems, disen~o una para la Casa Blanca. A veces se instala un ring back: el que llama debe ingresar una identificacion correcta, luego la computadora corta la conexion y llama al telefono registrado para ese usuario. Pero asi como surgen nuevas medidas de control, nacen nuevas ideas para hackear: por ejemplo, el ring back se burla levantando el telefono y simulando un tono de linea desocupada para que el modem piense que esta marcando el numero, pero en realidad sigue conectado con el que llamo. El rango de cosas que el hacker puede estudiar es inmenso: ningun detalle puede de manera alguna agotar el vasto campo de exploracion posible.

BIBLIOGRAFIA ------------

Revistas:

Secure Computing, Virus News International, 2600, The Hacker Quarterly,Hack-Tic Wired, Computer Virus Development Journal, Virus Report, Whole Earth Review, Diarios y revistas de Buenos Aires.

Libros:

The Hacker Crackdown: Law and Disorder on The Electronic Frontier, por Bruce Sterling. Bantam Books, 1992.

Los piratas del chip: La mafia informatica al desnudo (titulo original: Approaching Zero), por Bryan Clough y Paul Mungo. Ediciones B.S.A., 1992.

Security in Computing, por Charles P. Pfleeger. Prentice Hall International Editions, 1989.

Secrets of a Super Hacker, por The Knightmare. Loompanics Unlimited, 1994.

Neuromante, por William Gibson. Minotauro, 1992.

The Hacker's Dictionary, compilacion de Eric Raymond. The MIT Press, 1991.

Practical UNIX Security, por Simson Garfinkel y Gene Spafford. O'Reilly & Associates, Inc., 1991.

Network Security, por Steven Shaffler y Alan Simon. AP Professional, 1994.

The Internet Worm Program: an Analysis, por Eugene H. Spafford.

A Tour of the Worm, por Donn Seeley.

Firewalls and Internet Security: Repelling the Wily Hacker, por William Cheswick y Steven Bellovin. Addision Wesley Professional Computing, 1994.

A Short Course on Computer Viruses,por Fred Cohen. John Wiley & Sons, Inc.,1994

Out of the Inner Circle, por Bill Landreth. Microsoft Press.

Hackers, por Stephen Levy. Dell Publishing, 1984.

FAQ de alt.2600, por Voyager.