Vous êtes sur la page 1sur 4

Ingeniera inversa Que es

El objetivo de la ingeniera inversa es obtener informacin a partir de un producto accesible al pblico, con el fin de determinar de qu est hecho, qu lo hace funcionar y cmo fue fabricado. Hoy en da (principios del siglo XXI), los productos ms comnmente sometidos a ingeniera inversa son los programas de computadoras y los componentes electrnicos, pero, en realidad, cualquier producto o bien puede ser objeto de un anlisis de Ingeniera Inversa. El mtodo se denomina as porque avanza en direccin opuesta a las tareas habituales de ingeniera, que consisten en utilizar datos tcnicos para elaborar un producto determinado. En general, si el producto u otro material que fue sometido a la ingeniera inversa fue obtenido en forma apropiada, entonces el proceso es legtimo y legal. De la misma forma, pueden fabricarse y distribuirse, legalmente, los productos genricos creados a partir de la informacin obtenida de la ingeniera inversa, como es el caso de algunos proyectos de Software libre ampliamente conocidos. La ingeniera inversa es un mtodo de resolucin. Aplicar ingeniera inversa a algo supone profundizar en el estudio de su funcionamiento, hasta el punto de que podamos llegar a entender, modificar y mejorar dicho modo de funcionamiento. Pero este trmino no slo se aplica al software, sino que tambin se considera ingeniera inversa el estudio de todo tipo de elementos (por ejemplo, equipos electrnicos, microcontroladores, u objeto fabril de cualquier clase). Diramos, ms bien, que la ingeniera inversa antecede al nacimiento del software, tratndose de una posibilidad a disposicin de las empresas para la produccin de bienes mediante copiado[1] desde el mismo surgimiento de la ingeniera. En el caso concreto del software, se conoce por ingeniera inversa a la actividad que se ocupa de descubrir cmo funciona un programa, funcin o caracterstica de cuyo cdigo fuente no se dispone, hasta el punto de poder modificar ese cdigo o generar cdigo propio que cumpla las mismas funciones. La gran mayora del software de pago incluye en su licencia una prohibicin expresa de aplicar ingeniera inversa a su cdigo, con el intento de evitar que se pueda modificar su cdigo y que as los usuarios tengan que pagar si quieren usarlo. La ingeniera inversa nace en el transcurso de la Segunda Guerra Mundial, cuando los ejrcitos enemigos incautaban insumos de guerra como aviones u otra maquinaria de guerra para mejorar las suyas mediante un exhaustivo anlisis.

EJEMPLO

El programa Samba es un claro ejemplo de ingeniera inversa, dado que permite a sistemas operativos UNIX compartir archivos con sistemas Microsoft Windows. El proyecto Samba tuvo que investigar informacin confidencial (no liberada al pblico en general por Microsoft) sobre los aspectos tcnicos relacionado con el sistema de archivos Windows. Lo mismo realiza el proyecto WINE para el conjunto de API de Windows y OpenOffice.org con los formatos propios de Microsoft Office, o se hace para entender la estructura del sistema de archivos NTFS y as poder desarrollar drivers para la lectura-escritura sobre el mismo (principalmente para sistemas basados en GNU/Linux). HERRAMIENTAS PARA INGENIERIA INVERSA: oSpy: Es una herramienta permite usar la ingeniera inversa en la plataforma Microsoft Windows. Trabajando directamente con los procesos como el estado de los (protocolos de sincronizacin, mensajera instantnea, etc). Esta herramienta intercepta las prncipales API utilizada por MSN Messenger, Google Talk, etc para cifrar / descifrar los datos HTTPS. Enlace: http://code.google.com/p/ospy/
OllyDbg: Es un depurador de 32 bits a nivel de ensamblador para analizar software Microsoft Windows. OllyDbg es un shareware, pero se puede descargar y utilizar de forma gratuita. Enlace: http://www.ollydbg.de/

W32Dasm: es un desensamblador de 16/32 bits para Windows. Enlace:http://www.plunder.com/W32dASM-8-94-download-528.htm Rasta Ring 0 Debugger: Alternativa Libre similar al Softice Enlace: http://rr0d.droids-corp.org/

SoftIce: La Leyenda (actualmente desactualzado) Es capaz de desensamblar un programa mientras ste se encuentra en ejecucin, deteniendo al mismo en la instruccin exacta que se est ejecutando. Se puede tracear el programa a depurar de dos formas distintas: paso a paso siguiendo cada instruccin segn el curso normal del programa o bien seguir el cdigo lnea a lnea sin tener en cuenta las instrucciones de saltos. Enlace de descarga http://www.megaupload.com/es/?d=04RTJU2C
o http://www.mediafire.com/?bmmvl11mj2t

Syser: Este depurador indica que es el sucesor de SoftICE. Se ejecuta en las versiones 32-bit de Windows Vista/XP/2003/2000, y soporta SMP, HyperThreading y CPUs multincleo. Enlace:http://www.sysersoft.com/ NLKD: Depurador para Kernel http://forge.novell.com/modules/xfmod/project/?nlkd IDA: Uno de los mejores Enlace:: http://www.hex-rays.com/idapro/idadownfreeware.htm UltraEdit: Uno de los mejores editores hexadecimales (shareware) Enlace:: http://www.ultraedit.com/ HxD: Potente editor hexadecimal, capaz no slo de abrir ficheros, sino tambin de leer y escribir datos en sectores del disco duro y procesos en memoria. Compatible con varios estndares, HxD puede copiar datos en texto puro, HTML o como variable para lenguajes de programacin. HxD es una herramienta potente, til en determinados escenarios en los que la lectura de datos en bruto sea el ltimo recurso. Enlace: http://mh-nexus.de/en/hxd/
Compiladores:

The Go tools for Windows + Assembler: Herramienta para "ensamblar" cdigo genera un ejecutable. Enlace: http://www.jorgon.freeserve.co.uk/
LuxAsm: Herramienta "ensambladora" bajo entorno GNU/Lnux Enlace: http://luxasm.sourceforge.net/ Manuales: Sobre diversos aspectos del SoftICE http://bibliotecainformatica.iespana.es/programacion/softice/man_ice1.zip

Estudio de las protecciones del Software http://www.karpoff.hpg.ig.com.br/


Reverse Engineering (en Ingles) http://www.publispain.com/supertutoriales/underground/hacking/cursos/2/revengi.htm Introduccin al Cracking con OLLYDBG desde 0 http://ricardonarvaja.info/..../TUP/ Lectura recomendada:

Ingeniera inversa y los nmeros mgicos http://erwin.ried.cl/?modo=visor&elemento=239


Configuracin GDB para ingeniera inversa http://diariolinux.com/2008/05/20/configuracion-gdb-para-ingenieria-inversa/ Software Security and Reverse Engineering http://www.infosecwriters.com/text_resources/pdf/software_security_and_reverse_engineering.pd f

Ingeniera inversa de base de datos http://www.latiumsoftware.com/es/articles/00020.php


Quieres iniciarte en Ingenieria Inversa? http://foro.el-hacker.com/index.php/topic,123800.0.html Manual de Ingenieria Inversa http://www.conocimientosweb.net/dcmt/ficha960.html

Otra Fuentes consultadas: Ingeniera inversa http://es.wikipedia.org/wiki/Ingeniera_inversa


Ingeniera inversa de procesos que corren en Windows http://www.hackhispano.com/foro/showthread.php?t=31389 Ingeniera Inversa de Procesos http://cnx.org/

Vous aimerez peut-être aussi