lunes, 27 de octubre de 2008

El crimen siempre paga

Mr. I/O [blackhat4all@gmail.com]

Este es un sencillo artículo que trata acerca de intrusión – Cracking – y técnicas – para nada complejas – de detección y detención, basadas en ;) Hacking, es un ejercicio de cómo hacer, pues ante un problema: una respuesta.


Es un artículo educativo, porque la educación es la profilaxis, las restricciones son la represión neta, el explicarte las causas y consecuencias es el convencimiento, y tú – quizás debes ser convencido – necesitas saber – para que conozcas – a los riesgos que te enfrentas.

¿A quien puede interesar este artículo?
• A los padres de los chicos despiertos – sus chicos buenos sin salir de la casa, o la escuela, se pueden meter en problemas.
• A los profesores – o jefes – dormidos con claves triviales, o la lengua suelta.
• A los propios chicos curiosos para que aprendan que puede pasar si se emplean recursos simples, imaginando entonces que sucede cuando se involucran otras armas.
• A los administradores no capacitados – o incapacitados – ustedes saben quienes son. Algún día terminará eso del puesto para el hombre, y será el hombre capaz el que llevará el puesto.
• A los técnicos de laboratorio que aun no comprenden que su misión es la más importante: mantener actualizados los registros de asistencia por parte de los usuarios a las máquinas bajo su control. Y que son el eslabón más importante en la cadena de la responsabilidad para con los bienes del estado.

A todos ellos recomiendo incluso suscribirse a esta revista educativa.

En el desarrollo de este artículo se incluyen referencias bibliográficas que permitirán aumentar el nivel de conocimientos respecto al tema tratado, por ello es el objetivo de este material demostrar que no se deben realizar acciones de violencia contra la integridad de la data, ya que ninguna alteración detectada permanecerá impune.

GÉNESIS

Un día – hace poco – me llama un amigo que me dijo hola, y después de las triviales conversaciones en las que la gente intercambia las cosas relativas a saludos, me confesó: – Tengo un problema de seguridad – ahí me reí, porque los problemas de seguridad en los institutos educacionales son comunes, los chicos tratan de violar las restricciones, tratan de obtener – y obtienen muchas veces – privilegios – y hacen cosas mal hechas – algunas son tan simples como navegar, otras en cambio simplemente por el hecho de poder hacer cosas que el dominio les restringe. Hay de todo en la aldea del señor.

Pero luego mi sonrisa varió y se trocó en mueca de disgusto. Resulta que no fue un hacker, fue un cracker el intruso, y no es lo mismo.

Confieso que una vez – en esta parte de intrusiones en Cuba no hay hacking, solo cracking vulgar o ingenioso – apliqué técnicas de ingeniería social para hacerme de unas claves que me permitió un día demostrarle a algunos amigos – entre ellos estaba este mismo admin – que nosotros no teníamos Internet porque éramos jóvenes respetuosos de las reglas, no porque no pudiéramos llegar al infinito y más allá. O sea hackers con ética.

Procederé entonces a explicar cómo apliqué – con lujos de detalles – eso que llaman ingeniería social – ojo término por el cual el autor entiende: un conjunto de técnicas psicológicas – sociológicas, que apoyándose en la ingenuidad y buena fé de la humanidad – por ello la considero no ética – permiten obtener información. Esta cuestión siempre esta vinculada a personas oscuras[1] – o con oscuras intensiones – la misma alcanza su momento cumbre cuando el “especialista” la aplica frente a frente, pues domina – intuitivamente o de forma ilustrada – alguna que otra arma como puede ser el llamado lenguaje corporal[2].

Antes de hacerlo se definirá en cada caso que se entiende por los términos de la jerga técnica empleada.
Para partir me refugio en la literatura y busco un viejo libro de seguridad[3] – como secreto les cuento que es todo un clásico y está reconocido como el mejor jamás escrito – y busco lo que el autor define como hackers y crackers para tratar de poner frontera a estas dos personalidades tan cercanas:

Hacker: este término hace referencia:
“to programmers and not to those who unlawfully breach the security of systems. A hacker is any person who investigates the integrity and security of an operating system. Most commonly, these individuals are programmers. They usually have advanced knowledge of both hardware and software and are capable of rigging (or hacking) systems in innovative ways. Often, hackers determine new ways to utilize or implement a network, ways that software manufacturers had not expressly intended.” [4]

El mismo autor hace referencia en otra parte del mismo libro que un hacker
“is a person intensely interested in the arcane and recondite workings of any computer operating system. Most often, hackers are programmers. As such, hackers obtain advanced knowledge of operating systems and programming languages. They may know of holes within systems and the reasons for such holes. Hackers constantly seek further knowledge, freely share what they have discovered, and never, ever intentionally damage data.” [5]

Por ello el intruso no era posible catalogarlo como un hacker.
Cracker: este término envuelve a:
“any individual who uses advanced knowledge of the Internet (or networks) to compromise network security. Historically, this activity involved cracking encrypted password files, but today, crackers employ a wide range of techniques. Hackers also sometimes test the security of networks, often with the identical tools and techniques used by crackers.” [6]

La diferencia radical en lo recogido en el siguiente párrafo:
“A cracker is a person who breaks into or otherwise violates the system integrity of remote machines, with malicious intent. Crackers, having gained unauthorized access, destroy vital data, deny legitimate users service, or basically cause problems for their targets. Crackers can easily be identified because their actions are malicious.” [7]

De ahí es comprensible que cuando mi amigo me comentó que algunos ficheros de word fueron alterados, y que desconocía si había perdido algo comprendí por que la molestia de mi amigo, y su determinación a que la violación del sistema era ocasionada por un cracker se debía a que simplemente había evidencia en la escena de data dañada. Un verdadero acto de sabotaje informático de bajo nivel cultural.

Trataré de – para que se entienda – reproducir entonces el ataque –el echo por mi – para que se comprenda de quien es la culpa de lo sucedido. Echemos un ojo a la escena del crimen, lo que ha quedado es una larga lista de ficheros – quizás algunos perdidos – corrompidos son un letrero en wordart que dice simplemente: “Te hackie”, una vulgar demostración de poder.

DESCRIPCIÓN DEL PROCEDIMIENTO

Pero ¿Cómo llegó hasta allí el intruso?
Estoy convencido que solo pudo ser a través de un par de técnicas elementales:
La primera: muchos crackers se hacen de login y password mirando por encima del hombro de quien escribe, es un método bastante vulgar, pero igual de efectivo.

La segunda: aplicar la ingeniería social para obtener el loggin y password.
Dos técnicas sencillas pero efectivas para aplicar por el depredador a una victima inocente.
Expongamos un ejemplo de cómo puede un cracker obtener loggin y password a través de la ingeniería social.
Obtener un loggin es bastante sencillo, a veces lo damos sin saber que lo hemos hecho, pues este coincide con el loggin del correo, para ello basta que el profesor haya enviado a los alumnos algo como una guía de ejercicios, alguna bibliografía, y bastará con revisar el correo, o pedirle al objetivo que nos haga el favor de enviarnos algo tan inocente como un lindo powerpoint.

Luego puede venir una conversación sobre lo difícil – por ejemplo – que resulta recordar las contraseñas, con ello el cracker – o el hacker – atrae la atención recomendando – mas bien explorando – lo que realmente no se debe hacer para recordar contraseñas, este ambiente de seguridad hace que los objetivos se sientan seguros, compartan sus temores de ser crackeados, y terminan confesando – sin decir exactamente cual es, por supuesto – que por ejemplo su clave es el nombre del hijo de su hija, de su mascota, su número de carné de identidad u algún otro. El siguiente paso es más propio de un detective privado, y consiste en hilvanar las pistas para poder llegar a la password con los datos obtenidos.

Este fue el método que utilicé en mi demostración de hacking a mis amigos, y luego una llamada a personal en un momento en que sabía que mi objetivo no se encontraba en el lugar, me permitió agenciarme del número de Carné de Identidad alegando algún trámite que ahora no recuerdo bien.

Hasta el momento ya podemos definir niveles de culpabilidad y responsabilidad. En el nivel más bajo esta el agresor, pues este solo es alguien que se aprovechó de un descuido.

En el siguiente esta el dueño de la clave, por escoger una clave insegura, y no mantener su boca serrada.
Y el máximo responsable fue el admin., por no brindar una buena educación a sus usuarios, enseñándoles las normativas de seguridad y ética, para que mantuvieran la boca serrada. Pero ese es mi punto de vista, que me dicta a mi juicio que el cracker no es el único que debe ser castigado, pues el usuario también peca de culpable. El root en este caso ya expió su culpa: fue crackeado, lo cual implica siempre vergüenza.

El siguiente paso es definir sospechosos, para ello basta con reconocer dentro de la comunidad de “chicos de talento”[8] quien está molesto y por qué, advierto que no se deben admirar, los motivos pueden ser variados y asombrosos. Con todo ello ya estamos listos para comenzar la caza, y pueden apostar que nuestro “amigo” ya esta atrapado en su propia ratonera.

EN BUSCA DE LAS TRAZAS [9]

Se coincide con un investigador más calificado quien opina que para la determinación de la identidad de un intruso se deben buscar las pistas que nos aporta la escena del crimen[10], y nuestra primera escena es el directorio que contiene los documentos Word alterados. Así como descubrir si existe algún otro daño.
Con una buena política de seguridad, una vez analizadas las pistas, ya nuestro intruso estría atrapado, porque en cada laboratorio toda máquina poseería su propia descripción, que la caracterizaría como unidad irrepetible.

Por lo que al chequear las propiedades de los documentos – en el menú archivo – podrá decir en:
- pestaña general: cuando fue modificado y cuando el último acceso
- pestaña estadística quien lo modificó

Tras lo cual se podría ir al laboratorio implicado y revisar cuidadosamente en los registros de la máquina, y con ello tendremos al intruso o a un nuevo culpable.

Pues si los registros de las máquinas no son llevados como deben ser el técnico iría a parar a la nómina de los culpables, recayendo sobre él la mayor parte del peso debido a que esto es prácticamente la totalidad de su contenido de trabajo

En el caso que se discute la solución no fue tan simple debido a las irregularidades detectadas en el trabajo de los técnicos y los fallos en la política de seguridad en la instalación de las workstations.
Nota: el error más importante obtenido es que todos los usuarios en las máquinas de los laboratorios poseían igual nombre y no se pudo determinar con facilidad la posición del ataque, aunque si se poseía ya la identidad del posible atacante.

Una ojeada más profunda con vista a identificar otros daños que nos permitan esclarecer el proceso son buscados en el directorio que contiene las páginas web publicadas, estas se recogen en un subdirectorio del wwwroot directorio (\inetpub\wwwroot).

Al observar estos ficheros como ya explicamos la primera pista útil que aparece es la relativa a fechas de creación y modificación – alteraciones en ficheros Hypertext Markup Language (HTML) originales – estas fechas – que no son de manera absoluta una prueba concisa – nos permite establecer comparaciones con las otras, instituyendo cuando fueron realizadas modificaciones autorizadas, pudiéndose definir un margen temporal en cuyo tiempo las modificaciones a elementos responden en un 100 % a un ataque.

Una vez fijado que existió ataque – aunque no se realizaron modificaciones a la página – la siguiente acción fue examinar el contenido de la carpeta _vti_cnf[11], que es la carpeta habilitada por FrontPage para guardar información de configuración[12]

Estos ficheros de configuración tienen los mismos nombres que los observados pero con la diferencia que estos guardan información de configuración como la ya discutida en los fichero Word, por lo que no se volverá a considerar su discusión.

Como se imaginan las fechas listadas en la configuración coinciden las algunas fechas de estos con las alteraciones registradas. Pero en este caso el nombre del autor coincidía con el de una cuenta en el directorio activo del servidor, y que no correspondía a alguien que estuviera asaltando servidores ni alterando páginas.

Por ello se reafirmó la sospecha de que alguien había robado[13] la cuenta a un usuario con grandes privilegios, que permitía acceder a los directorio del servidor – o ganar privilegios de acceso – y alterar – en este caso no se realizó literalmente[14] – la página web.

Este escrutinio se realizo para determinar la identidad del dueño legítimo de la cuenta, para continuar estas averiguaciones se examinaron varios ficheros creados por el IIS[15] entre otros programas de conectividad. Los primeros ficheros log revisados fueron los correspondientes al Hypertext Transfer Protocol (HTTP) y File Transfer Protocol

(FTP) logs que el IIS crea de manera automática.
La dirección[16] donde es posible encontrar estos ficheros está en su opción por defecto en \%windir%\System32\LogFiles\W3SVC1, su nombre por defecto es exLOGDATE.log, y este guarda una copia por cada día en el cual ocurre actividad.

Para entender el proceso explicaremos que el logs de HTTP contiene un GET cuando alguien solicita un fichero a través de la web, y responde con un POST cuando alguien coloca un fichero en el servido vía web. Una observación importante es que solo obtendremos el registro del POST en el HTTP logs solamente cuando los ficheros son colocados en el servidor utilizando un programa como por ejemplo Microsoft FrontPage o un similar.

El fichero log contiene la fecha de solicitud y los ficheros solicitados con la dirección correspondiente al protocolo de internet (IP) de quien hace la solicitud. Expliquemos ahora como funcionaron de ahí en adelante esas cuestiones en la práctica:

• Se estableció un marco de tiempo de un par de semanas para estudiar si existió asecho.
• El análisis de estos permitió detectar la presencia de un espía, pues GETs tomadas de la página alterada demostraban un comportamiento anormal para condiciones normales en el centro.
• Eran recurrente la observación de la página desde la misma dirección IP. Al punto de encontrarse varias “visitas” en un mismo día.
• La dirección IP correspondía al esquema privado de un laboratorio específico.
• Se continuó con el examen hasta encontrar el POST propio de la salva de cambios hechas a la página correspondiente a la dirección IP.
• Se realizó un examen de los log que crea IIS cuando alguien se conecta en un servidor vía FTP. El mismo se encuentra guardado en \%windir%\System32\LogFiles\MSFTPSVC1 is exLOGDATE.log.

o Este guarda un fichero por cada DIA que hay actividad FTP
o Los logs de FTP contienen la IP y el nombre del usuario que intentan conectarse al Server vía FTP, y la efectividad con que lo logran.
o Si se logró la conexión el log del FTP muestra los ficheros que el usuario copió o borró del Server.

• El examen de los log permite conocer las aplicaciones que son utilizadas comúnmente.
• Se utilizó una herramienta llamada VisualRoute 6.0b[17] para determinar la máquina de la cual se realizaron las intrusiones.

Como se esperaba VisualRoute buscó la dirección IP de la máquina en la LAN. El trazado reveló la identidad del intruso, ya que VisualRoute literalmente mostró el nombre de la computadora en el campo node name. Pues aunque sin control todos los técnicos señalaron a un estudiante como asiduo usuario de la máquina en cuestión.

RESPONSABILIDAD SOCIAL

La totalidad de las ideas discutidas en este documento pueden tener cierta repercusión negativa y positiva, por lo que meritan más que nada un análisis ético del hacking en las escuelas. Pues quienes manejen los términos relacionados por la vía de la ética podrán convertirse en expertos en hábiles expertos en seguridad.
Recomendándose la discusión en clases de seguridad casos/problemas – reales o posibles – teniendo en cuenta posibles vulnerabilidades de los sistemas estudiados, soluciones y captura de invasores. Fortificando las bases cognoscitivas de los estudiantes, en vías de formar como egresados profesionales con grandes conocimientos relativos a seguridad.

Con un buen trabajo educativo basado en valores formaríamos a profesionales más íntegros. Esto puede estar apoyado con la inclusión en los currículos de estudios de asignaturas básicas que incluyan la ética y legalidad.[18]

Las medidas tomadas con los implicados fueron medidas profilácticas, ya que todo este ejercicio contribuyo despertar a un admin. que se encontraba dormido, ninguno de los archivos comprendidos sufrió daños irreparables y todos los implicados – se puede considerar – solo no midieron el alcance de sus actos.

CONCLUSIONES

1. Uno de los elementos relacionado son el conocimiento teórico sobre la utilización de aplicaciones, entendiéndose que los estudiantes en general – y los crackers y hackers en particular – poseen dificultades para razonar como las distintas piezas que componen un sistema operativo trabajan encadenadas. Por lo que la explicación de estas mismas contribuirá a la formación de personas éticamente mejor formadas, eliminando los riegos de incursiones no autorizadas.

2. La discusión de la metodología utilizada en la identificación del invasor promueve un fuerte conocimiento sobre el tema a los estudiantes en lo relacionado a administración de sistemas, seguridad en servidores, manejo de redes, transferencias de datos.

3. La cuestión descrita en este material debe dejar claro que cualquier daño originado en la data de todo servidor devendrá en acciones en concreto que conllevaran a la captura del invasor, y la aplicación de las sanciones pertinentes.

BIBLIOGRAFÍA

1. Maximum Security: A Hacker’s Guide to Protecting Your Internet Site and Network.
2. Indianapolis: Sams Publishing, 1998.
3. Carpenter, Susan. “Where Hackers Teach the Art of Self-Defense.” <http://www.ttivanguard.com/bru_reconn/ ackademy.pdf>.
4. Matthews, Martin S., and Erik B. Poulsen. FrontPage 2000: The Complete Reference. Berkeley:Osborne, 1999.
5. Microsoft Baseline Security Analyzer. Microsoft Corporation. http://www.microsoft.com/technet/treeview/default.asp?url=/technet/security/tools/Tools/mbsahome.asp>.
6. Norfolk, David. “Understanding Ethical Hacking.” PC Network Advisor Mar. 2001. <http://www.itp-journals.com/nasample/M04133.pdf>.
7. Schneier, Bruce. Secrets and Lies: Digital Security in a Networked World. New York: John Wiley & Sons, 2000.
8. “Should Ethical Hacking be Taught as a Career Course?” Express IT People April 2002. <http://www.itpeopleindia.com/20020422/ cover1.shtml>.
9. Ufasoft Sniffer. Ufasoft Company.<http://www.ufasoft.com/sniffer>.
10. VisualRoute by Visualware. Visualware Incorporated. <http://www.visualware.com/visualroute/ index.html>.



Artículos relacionados


No hay comentarios: