You are on page 1of 9

Investigacin cientfica del delito: tecnologas de virtualizacin aplicadas en informtica forense

Leopoldo Sebastin M. Gmez1


1 Poder Judicial del Neuqun, San Martn 375, Neuqun, CP 8300, Argentina sebastian.gomez@jusneuquen.gov.ar

Abstract. La Ley 26.388 ha permitido una actualizacin oportuna del Cdigo Penal Argentino para receptar el avance de las nuevas tecnologas, pero no puede dejar de apreciarse que ms all de los llamados Delitos Informticos actualmente la evidencia digital puede estar involucrada como elemento probatorio en cualquier clase de ilcitos. La prueba cientfica como especie de la prueba jurdica ocupa un papel cada vez ms destacado en las investigaciones penales. En materia pericial, la informtica forense plantea constantes desafos, en especial cuando se trata de acceder a evidencia digital protegida mediante mecanismos criptogrficos. Este trabajo presenta una solucin tecnolgica para el descifrado distribuido de contraseas que es aplicable en la investigacin de delitos complejos. Una de las principales virtudes de la infraestructura forense propuesta es el aprovechamiento de los recursos informticos existentes sin desafectar a los operadores de sus tareas habituales. Los resultados obtenidos permiten corroborar las ventajas que otorgan las tecnologas de virtualizacin para tareas de investigacin cientfica del delito.

Palabras Clave: ilcitos informticos, informtica forense, ethical hacking.

1 Introduccin
La implementacin de soluciones informticas para el descifrado de contraseas mediante tcnicas de fuerza bruta o ataques por diccionario depende sensiblemente del poder de procesamiento con el que se cuente. En los ltimos tiempos han surgido tcnicas que aceleran el proceso, reduciendo notoriamente los tiempos de cmputo mediante utilizacin de tablas precomputadas llamadas tablas Rainbow [1]. Este mtodo, a costa de sacrificar espacio de almacenamiento y tiempo para generar las tablas, permite abordar eficientemente el problema, principalmente para contraseas de sistemas operativos MS-Windows. En cuanto a la eficiencia, debe tenerse en cuenta que una tabla rainbow es generada con varios parmetros predeterminados, como el alfabeto (letras, nmeros y/o smbolos) y un lmite en la longitud de las posibles contraseas, por lo que la probabilidad de xito del descifrado depender de esta seleccin. Por otra parte, la complejidad computacional se desplaza a la

38 JAIIO - Simposio Argentino de Informtica y Derecho (SID 2009), pp. 16-24, 2009

17

L. Gmez

generacin de estas tablas y han comenzado a surgir proyectos de computacin distribuida para abordar esta temtica. Sitios como Freerainbowtables.com 1 ofrecen servicios de descifrado online a fin de evitar la descarga de Internet de tablas rainbow que son de gran tamao, pero slo trabajan sobre algunos mtodos de cifrado como MD5, LM y NTLM. Existe una carencia de software forense de libre distribucin que asista a las labores periciales implementando tcnicas de computacin distribuida para tareas de descifrado de contraseas. El aprovechamiento del poder de cmputo de las unidades de procesamiento grfico (GPU) ha permitido la creacin de novedosos productos de software. A nivel comercial se han desarrollado las primeras aplicaciones especficas para uso en informtica forense (ej. DNA 2, EDPR 3), siendo accesibles slo por un nmero limitado de profesionales y organismos del Estado debido a su elevado costo financiero. En las ltimas versiones de Backtrack 4, la distribucin ms conocida en materia de seguridad informtica, se ha incorporado PXE -la capa de abstraccin necesaria para la utilizacin en cluster de aplicaciones de descifrado offline- aunque todava en modo experimental. La utilizacin de recursos de computacin de alta performance en esta temtica se inici en 1997 con TableCrack, un proyecto del San Diego Super Computer Center que precomput los hashes de 51 millones de contraseas dbiles con el objeto de prevenir su uso. Posteriormente este centro de investigacin continu con un proyecto llamado Teracrack para demostrar que la funcin crypt() era obsoleta para generar hashes de contraseas, alcanzando un total de 50 millones de hashes contraseas dbiles en 81 minutos y utilizando un espacio de almacenamiento de 2 Terabytes. Algunos sistemas web de acceso pblico permiten ingresar contraseas para ser descifradas. Las desventajas de estos sitios es que no siempre estn online, slo ofrecen servicios sobre un nmero reducido de algoritmos criptogrficos y los las solicitudes de descifrado suelen tener tiempos de espera elevados antes de poder hacer uso de los recursos informticos 5,6. Un caso de ejemplo es Plaintext.info 7, que cuenta con servicio de recuperacin de contraseas cifradas con los algoritmos lm, md5, ntlm y doublemd5. Otros proyectos de investigacin muestran grandes avances en materia de computacin distribuida pero slo permiten integracin de recursos informticos para el logro de objetivos ya preestablecidos como localizacin de vida en el espacio, en el caso de Seti@home 8 y Distributed.net 9 para el descifrado de una contrasea RC5 de 72 bits.

1 2

http://www.freerainbowtables.com http://www.accessdata.com/Products/Dna.aspx 3 http://www.crackpassword.com/products/prs/integpack/edpr/ 4 http://www.remote-exploit.org/backtrack.html 5 http://www.passcracking.com/ 6 http://www.milw0rm.com/cracker/ 7 http://www.plain-text.info/index/ 8 http://setiathome.berkeley.edu/ 9 http://www.distributed.net/

Investigacin Cientfica del Delito - Tecnologas de Virtualizacin aplicadas en Informtica Forense

18

2 Planteo de la investigacin
Para comprender el alcance de la aplicacin de estas tcnicas de descifrado de contraseas en el mbito de la informtica forense es preciso definir una situacin concreta de trabajo pericial. Si se plantea la investigacin de un delito econmico en perjuicio de una entidad financiera, cometido con participacin de personal interno, es probable que sea necesario determinar las redes laborales y sociales entre los investigados para intentar esclarecer los hechos y atribuir responsabilidades. Para esta casustica, el anlisis de e-mails es uno de los procedimientos ms efectivos. Mediante una orden de allanamiento puede procederse al secuestro de los servidores de e-mails corporativos, pero no siempre se autoriza este tipo de medidas ya que causan graves perjuicios en la operatoria diaria. Frecuentemente se recurre a preservar la evidencia digital obtenida de los archivos de correo electrnico, o bien se realiza una duplicacin bit-a-bit (imagen forense) del servidor de e-mail si es tcnicamente factible por razones de tiempo y recursos. A posteriori, el peritaje de e-mails se efecta con software forense que permite estructurar la informacin contenida en los repositorios de datos de cada una de las cuentas de correo electrnico. La inspeccin de evidencia digital desde la perspectiva del usuario proporciona una visin complementaria al anlisis forense. Esta tcnica es muy valorada en la comunidad forense por su practicidad para facilitar la exposicin de los resultados de una investigacin a la audiencia no tcnica, en este caso jueces, fiscales y defensores. Si no se cuenta con las herramientas forenses adecuadas para visualizar o extraer los datos almacenados en ciertos repositorios de e-mail, o bien se desea realizar una inspeccin desde la perspectiva del usuario para aprovechar otras funcionalidades del software de gestin de correo electrnico, ser necesario recurrir a la aplicacin de email nativa. Asimismo, muchos servidores de correo electrnico corporativo permiten acceder a sus datos utilizando el navegador de Internet como interfaz de usuario. Varios esquemas de seguridad limitan el acceso a la informacin almacenada en estos archivos de correo electrnico, principalmente mediante el ingreso de una contrasea. Existen diferentes algoritmos criptogrficos, muchos de ellos son pblicos y otros de carcter propietario. Lgicamente, es probable que las personas investigadas no suministren informacin sobre la contrasea de acceso a su correo electrnico y en este caso el perito puede estar obligado a utilizar tcnicas de ethical hacking. Si el personal informtico de la institucin est sospechado o imputado en la comisin del delito deber prescindirse de su colaboracin. Una de las herramientas de groupware ms utilizadas en el mundo a nivel empresarial y estatal es Lotus Notes/Domino, principalmente por la seguridad que brinda la infraestructura informtica. Los archivos de correo electrnico y bases de datos usualmente son encriptados y solamente pueden ser accedidos por medio del software Lotus Notes o bien a travs de la Web utilizando un navegador, siempre que se posea la contrasea de usuario.

19

L. Gmez

Contando con la debida autorizacin judicial, se puede intentar extraer del servidor de e-mail corporativo las contraseas encriptadas y luego proceder al descifrado en laboratorio. Al descifrar una contrasea es posible acceder a un elemento de informacin de la misma forma que lo hara su dueo. Durante un peritaje informtico los resultados obtenidos mediante ethical hacking son de suma utilidad para poder ingresar en forma directa a un sistema operativo, a la informacin contenida en un archivo encriptado, o bien a otro software especfico instalado sobre el recurso informtico secuestrado, como correo electrnico o bases de datos. Debe trabajarse siempre sobre una imagen forense de la evidencia original o bien generar una mquina virtual desde la imagen forense para evitar la contaminacin de prueba. Mediante la integracin de arquitecturas de clustering o computacin distribuida, con algoritmos especficos de descifrado por fuerza bruta o ataques con diccionario, es posible aumentar la capacidad de cmputo y as disminuir los tiempos de descifrado de contraseas. Existen supercomputadoras y clusters cuya potencia de cmputo es sorprendente 10, sin embargo, con mnimos recursos financieros para la adquisicin de tecnologa informtica, los organismos estatales que poseen unidades periciales y los profesionales del mbito privado dedicados a la informtica forense no tienen posibilidad alguna de acceder a las ventajas de contar con procesadores dedicados para este tipo de tareas. Es por ello que mediante tcnicas de virtualizacin es posible aprovechar el poder de cmputo de los procesadores de una red informtica local mientras son utilizados para otros trabajos de ofimtica con bajo nivel de procesamiento de datos.

3 Implementacin del cluster virtual


Para la implementacin del cluster virtual, y luego de estudiar diferentes alternativas, se utiliz la distribucin CHAOS 11 para los nodos workers virtuales y un nodo virtual ClusterKnoppix 12 con MPICH2 13, que contiene el archivo de contraseas cifradas, para el inicio y monitoreo del proceso de descifrado. Se utiliz a John The Ripper MPI Patch (JtR-MPI) 14 como aplicacin para descifrado en paralelo de contraseas, y fue instalado en el nodo virtual ClusterKnoppix. Se seleccion a Vmware como infraestructura tecnolgica para la distribucin y ejecucin de los nodos virtuales. ClusterKnoppix es una versin modificada de Knoppix 15 que utiliza openMosix, una extensin del kernel de Linux para implementar un sistema nico que permita manejar un cluster con computadoras sencillas conectadas en red. El algoritmo interno de balanceo de carga migra -transparentemente para el usuario- los procesos
10 11

http://www.top500.org/ http://www.purehacking.com/chaos/ 12 http://clusterknoppix.sw.be/ 13 http://www.mcs.anl.gov/research/projects/mpich2/ 14 http://www.bindshell.net/tools/johntheripper 15 http://www.knoppix.net/

Investigacin Cientfica del Delito - Tecnologas de Virtualizacin aplicadas en Informtica Forense

20

entre los nodos del cluster. El cluster escoge por s mismo la utilizacin optima de los recursos que son necesarios en cada momento y de forma automtica. Esta caracterstica de migracin transparente hace que el cluster funcione a todos los efectos como un gran sistema de multiprocesamiento simtrico con varios procesadores disponibles. openMosixview es una interfaz grafica libre para la administracin y mantenimiento de un cluster openMosix. MPICH2 es un estndar para el intercambio de mensajes entre aplicaciones que utilizan memoria distribuida. CHAOS es una distribucin para cluster basada en Linux y openMosix. Su tamao reducido permite que se ejecute en forma completa en memoria.

4 Definicin del banco de pruebas y experimentacin


Para comprobar los resultados de la solucin propuesta se gener un corpus consistente en 500 pares (usuario, contrasea) con longitud menor o igual a ocho letras y/o nmeros. Siguiendo con el caso planteado, el algoritmo de cifrado seleccionado fue HTTP password -sin salt- de Lotus Notes/Domino (en John The Ripper se lo conoce como Lotus5). Contraseas descifradas 4 ... 377 380 385 ... 400 ... 450 ... 500 1 CPU hh:mm:ss 00:00:01 ... 00:00:11 00:00:13 00:00:14 ... 00:00:20 ... 00:03:16 ... 00:59:30 8 CPUs hh:mm:ss 00:00:02 ... 00:00:13 00:00:13 00:00:13 ... 00:00:15 ... 00:00:46 ... 00:09:47 Porcentaje de avance 8% ... 75% 76% 77% ... 80% 90% ... 100%

Tabla 1. Comparativa de descifrado de contraseas entre 1 CPU vs. 8 CPUs

Aunque es sabido que una contrasea fuerte debe incluir combinaciones de nmeros, letras y smbolos, y ser de longitud suficientemente larga como para desalentar el uso de estas tcnicas de descifrado, en la prctica los usuarios utilizan frecuentemente contraseas sencillas para poder recordarlas. De los resultados obtenidos en el caso de estudio puede apreciarse que un porcentaje mnimo de las contraseas del corpus presentaron mayor dificultad para ser descubiertas mediante el mtodo de descifrado por fuerza bruta. Sin perjuicio de los resultados obtenidos, como estrategia de trabajo es recomendable intentar el descifrado sobre el archivo de contraseas ejecutando John The Ripper

21

L. Gmez

MPI en forma individual y con los mtodos bsicos que ofrece el software (reglas predefinidas, ataque con diccionario o fuerza bruta) antes de proceder a la utilizacin del cluster virtual, considerando que esta arquitectura tiene mayor rendimiento sobre contraseas de mayor fortaleza.
1:04:48 0:57:36 0:50:24 0:43:12 0:36:00 0:28:48 0:21:36 0:14:24 0:07:12 0:00:00 1 CPU 8 CPUs

Tiempo

5 Trabajos relacionados
El crecimiento exponencial del volumen de los dispositivos de almacenamiento hace que operaciones tpicas de bsqueda de evidencia digital mediante palabras clave puedan demorar das. Como paliativo, la construccin de ndices en algunos casos facilita la tarea de anlisis forense, sin embargo, el tiempo de pre-procesamiento puede ser prohibitivo si no se cuenta con el poder de cmputo adecuado. Es por ello que investigadores de renombre en informtica forense [2] han comenzado a plantear una arquitectura de cmputo distribuido con el objeto de poder dar respuesta a la problemtica, permitiendo la posibilidad realizar operaciones de bsqueda, hashing, o la ejecucin de otros comandos especficos utilizados para las actividades periciales. En cuanto al descifrado de contraseas, los primeros trabajos en esta lnea de investigacin utilizaron clusters dedicados. En algunos casos [3] se intent aplicar tcnicas de descifrado mediante ataque por diccionario. Una vez creado el diccionario mediante un generador de palabras un archivo de posibles contraseas, el nodo coordinador se encargaba de distribuirlas a cada uno de los nodos esclavos, y stos realizaban el cifrado y posterior comparacin con la contrasea a descubrir.

4 36 6 37 7 38 8 40 2 40 7 41 3 41 7 42 7 43 5 43 9 44 3 44 7 45 1 45 5 45 9 46 3 46 8 47 2 47 6 48 0 48 4 48 8 49 2 49 6 50 0
Contraseas rotas

Figura 1. Rendimiento del cluster virtual en el descifrado de contraseas

Investigacin Cientfica del Delito - Tecnologas de Virtualizacin aplicadas en Informtica Forense

22

Un gran avance en esta temtica, fue la modificacin del cdigo de John The Ripper para permitir el cmputo en paralelo utilizando la Interfaz de Paso de Mensajes (MPI) [4], [5]. En otros trabajos de investigacin [6] se compar la eficiencia entre dos clusters dedicados para descifrado de contraseas utilizando John The Ripper MPI y Cisilia 16. Otras variantes [7] que se han presentado utilizan un prototipo de experimentacin que integra a Condor 17 y John The Ripper (JtR). La solucin propuesta slo procura la ejecucin de un proceso JtR sobre el recurso informtico con mayor disponibilidad de tiempo de cmputo, sin realizar una divisin del espacio de bsqueda (posibles contraseas) para permitir el descifrado en paralelo. En trabajos ms recientes [8] contina la experimentacin con clusters sobre Linux para ser aplicados en informtica forense.

6 Aspectos jurdicos y estado del arte en el procedimiento forense


El esfuerzo invertido en investigacin tecnolgica aplicada a la informtica forense se ha visto fortalecido con la sancin de la Ley 26.388 (Ley de Delitos Informticos), que permite receptar el advenimiento de las nuevas tecnologas. Se ha zanjado la discusin sobre si constituyen o no delito determinadas conductas en las que interviene la tecnologa informtica, pero ser necesaria la modificacin de los cdigos procesales para tratar en profundidad aquellos aspectos concernientes a la prueba. Entretanto, la adopcin de buenas prcticas forenses por parte de los peritos informticos, junto a otros aspectos metodolgicos de la especialidad, irn consolidando los resguardos necesarios para evitar la contaminacin de la prueba, garantizar la cadena de custodia y la admisibilidad de la evidencia digital. Por otra parte, se requiere que los operadores judiciales y profesionales del Derecho procuren una actualizacin de conocimientos en la temtica. Sigue siendo frecuente para el Perito encontrarse con puntos de pericia ambiguos, o bien tener que realizar un esfuerzo elevado para lograr adecuar los requerimientos de un operador judicial inexperto a los servicios ofrecidos en funcin de la experticia y las posibilidades tcnicas y humanas. Las fallas en la comprensin del trabajo pericial se producen principalmente por el desconocimiento de esta nueva especialidad y la falta de formalizacin e institucionalizacin de los servicios ofrecidos. En el Poder Judicial del Neuqun se cuenta con amplia experiencia en la realizacin de peritajes informticos. All por el ao 1999 comenzaban a distribuirse a los magistrados y funcionarios los primeros reportes tcnicos orientados a poder facilitar las actuaciones judiciales en incidentes con tecnologa informtica, y la utilizacin de algoritmos de reduccin criptogrficos como MD5 para certificacin de evidencia digital. Esta lnea de trabajo ha continuado dando resultados de aplicacin concreta en
16 17

http://www.citefa.gov.ar/si6/cisilia.htm http://www.cs.wisc.edu/condor/

23

L. Gmez

la Justicia. En el ao 2002 se public un marco normativo para el desarrollo de pericias informticas que proporciona un lenguaje comn entre informticos y operadores judiciales para el desarrollo de pericias informticas y expone los criterios bsicos a considerar durante la seleccin de recursos humanos para el desempeo de la funcin de Perito Informtico. En el ao 2004 se formalizaron las etapas de la metodologa de informtica forense habitualmente aplicada para anlisis de datos. Durante el 2006 se present a la comunidad acadmica una publicacin con reglas de procedimiento forense que permiten mejorar, sistematizar y estimar las tareas de investigacin de actividades delictivas sobre material informtico. La gua operativa para procedimientos judiciales con secuestro de tecnologa informtica -que fuera publicada y divulgada en ese ao- simplific en gran medida el trabajo de las fuerzas de seguridad, permitiendo que pudiesen intervenir en forma autnoma en gran parte de los procedimientos judiciales sin necesidad de ser acompaados por un especialista en informtica forense. Recientemente en el ao 2008 se present el Catlogo de Servicios para Peritajes Informticos y Protocolo de Actuacin, que permite una correcta definicin del alcance de los servicios profesionales de informtica forense, contribuye a profundizar los resguardos en la cadena de custodia de la prueba, y explicita la modalidad de trabajo interno para una mejor adecuacin de los requerimientos judiciales.

7 Conclusiones
Se ha presentado la implementacin de un cluster de mquinas virtuales sobre recursos informticos compartidos que permite poder hacer uso de servicios de descifrado de contraseas para tareas de informtica forense. Esta solucin utiliza componentes de libre distribucin y es de especial utilidad para organismos periciales de la Justicia o de Polica que cuenten con presupuestos limitados para la adquisicin de tecnologa. Asimismo, la infraestructura tecnolgica propuesta puede ser utilizada por parte de los responsables de seguridad informtica de una organizacin para un chequeo de contraseas dbiles. Uno de los aspectos ms interesantes de la solucin propuesta es la utilizacin de nodos virtuales implementados con la distribucin CHAOS, cuyo tamao es sensiblemente menor al de cualquier otra alternativa de libre distribucin. El futuro de la computacin de alto rendimiento ya no se logra nicamente conectando muchas computadoras entre s para compartir recursos. En materia de informtica forense, el incremento en la disponibilidad de computadoras con procesadores de mltiple ncleo, sumado a la potencia de las GPUs, deja sin efecto la utilizacin de clusters dedicados permitiendo definir una nueva direccin de trabajo orientada hacia la aplicacin de tecnologas de virtualizacin. En gran parte de las organizaciones estatales se desperdicia la potencia de cmputo del equipamiento informtico, ya que slo se trabaja con aplicaciones de ofimtica o software de gestin para consulta y carga de datos. Lo novedoso de la integracin tecnolgica presentada consiste en el aprovechamiento paralelo de los procesadores

Investigacin Cientfica del Delito - Tecnologas de Virtualizacin aplicadas en Informtica Forense

24

de una red local para actividades forenses en este caso, el descifrado distribuido de contraseas- sin utilizar equipamiento informtico dedicado. La memoria y espacio de almacenamiento requerido para la operatividad de un nodo virtual es despreciable respecto de la disponibilidad de recursos en los puestos de trabajo actuales. Se comprob que la integracin de los nodos virtuales al cluster fue imperceptible a los operadores de las computadoras en el desarrollo cotidiano de sus labores sobre las aplicaciones ofimticas y de gestin.

Referencias
1. Oechslin, P., (2003), Making a Faster Cryptanalytic Time-Memory Trade-Off, Advances in Cryptology - CRYPTO 2003, 23rd Annual International Cryptology Conference, Proceedings of the Lecture Notes in Computer Science, vol. 2729, Springer-Verlag, ISBN 3-540-40674-3. 2. Vassil, R. and Golden, R., (2004), Breaking the Performance Wall: The Case for Distributed Digital Forensics, Proceedings of the 2004 Digital Forensics Research Workshop. 3. Perriero, R. and Lui, S, (2004), Clustering & Computing: A Look into the Usage of a Cluster as a Password Cracking Device, CMTP-495. 4. Lim, R., (2004), Parallelization of John the Ripper Using MPI, Technical Report, University of Nebraska Lincoln, Computer Science and Engineering Department. 5. Pippin, A., Hall, B. and Chen, W., (2004), Parallel Password Cracker, Final Report, Applied Parallel Computing, CS240A, University of California, Santa Brbara, Department of Computer Science. 6. Frichot, C., (2004), An Analysis and Comparison of Clustered Password Crackers, Proceedings of 2nd Australian Computer, Network and Information Conference. 7. Imamagi, E., Dmitrovi, A., Buljat, S., (2005) Distributed Password Cracking with Condor and John the Ripper, Presentation, CUC 2005, 23/11/2005. 8. Bengtsson, J. (2007), Parallel Password Cracker: A Feasibility Study of Using Linux Clustering Technique in Computer Forensics, Digital Forensics and Incident Analysis (WDFIA). Second International Workshop on Volume, Issue , 27-28 Aug. 2007 Page(s):75 82.

You might also like