Junio 22, 2018, 03:30:22 am

Autor Tema: Nociones basicas de Ingenieria Inversa  (Leído 11033 veces)

0 Usuarios y 1 Visitante están viendo este tema.

Desconectado SiriusBl@ck

  • Me das tu IP?
  • *
  • Mensajes: 32
  • Sexo: Masculino
  • It's The Hack Generation! - SiriusBl@ck
    • Ver Perfil
    • SiriusBl@ck - Blog
Nociones basicas de Ingenieria Inversa
« en: Noviembre 16, 2010, 03:48:49 am »
Por Roberto Gómez Cárdenas

Hoy en día todo se encuentra en Internet, programas, bases de datos, libros, películas, conciertos, canciones de artistas, etc.

Hoy en día todo se encuentra en Internet, programas, bases de datos, libros, películas, conciertos, canciones de artistas, etc. Existen servidores que almacenan archivos que contienen este tipo de información. Algunos sitios cobran una cierta cantidad de dinero para que el usuario pueda bajar su contenido de forma más rápida o en paralelo. Un usuario que no ha pagado debe esperar una cantidad de tiempo antes de bajar un archivo, no puede bajar varios archivos al mismo tiempo y en algunas ocasiones debe esperar algunos minutos cuando acaba de bajar un archivo y desea bajar otro.

En mayo del 2008 se presentaron los resultados del quinto estudio anual mundial de piratería, publicado por la BSA (Bussinness Software Alliance) y realizado por la Internacional Data Corporation. De acuerdo a lo publicado, de los 108 países incluidos, el uso de software pirata disminuyó en 67 de ellos y aumentó en solo 8. Sin embargo, debido al rápido crecimiento del mercado de PC en los países de alta piratería, la tasa mundial de software pirata creció en tres puntos (38%) con respecto al año pasado. Las pérdidas por piratería aumentaron de $8 billones de dólares a 48 billones. A finales del 2007 existía más de un billón de PCs instalados en todo el mundo, y cerca de la mitad contenían software sin licencia en ellos.

El estudio presentado por la BSA se limita a software pirata, no aborda la piratería de otro tipo de información digital como música, video o libros. La piratería de software consiste en comprar un software, hacer copias ilegales de este y vender estas. Mucho software se encuentra protegido para impedir copias ilegales, es aquí donde entra la ingeniería inversa.

La ingeniería inversa es una metodología para analizar el diseño de un dispositivo o sistema. El objetivo del estudio varia ya que como toda metodología o herramienta en el área de seguridad es un arma de dos filos. Por un lado se puede utilizar para conocer como funciona un sistema y darle la vuelta a los sistemas de protección contra copias no autorizadas. Por otro lado es una buena herramienta para entender el funcionamiento de los nuevos virus, poder erradicarlos y/o diseñar una vacuna.

Desde un punto de vista de sistemas computacionales la ingeniería inversa puede ser vista como el proceso de extraer el código fuente de una aplicación a partir del código objeto. Hay que tomar en cuenta que el término cracking también se utiliza también cuando se burla al sistema de protección de algún software en específico para obtener una copia funcional de un software supuestamente protegido.

Para poder realizar un análisis de ingeniería inversa es necesario contar con las herramientas adecuadas. Dependiendo del objetivo del análisis será la, o las, herramientas utilizadas. Entre las herramientas más comunes podemos mencionar a los editores hexadecimales, los des-ensambladores, los descompresores, los depuradores, los analizadores de archivos, los dumpeadores de memoria y monitores de registro.

Un editor hexadecimal, permite editar un archivo en su forma bruta, es decir permite editar los bits de un archivo. Para que el usuario no tenga que lidiar con unos y ceros en la aplicación, el editor los agrupa en conjuntos de 4 bits y los convierte a hexadecimal. De esta forma el usuario solo ve números hexadecimales en el editor. A través de este tipo de herramientas es posible conocer el contenido de cualquier tipo de archivo, imágenes, ejecutables, office etc. También es posible conocer el contenido de un disco. Las personas que se dedican a hacer forencia usan este tipo de editores para buscar información oculta. Es importante hacer notar que no solo es posible conocer el contenido de un archivo sino que es posible modificar esté con los datos que se consideran relevantes. Usando esta herramienta es posible cambiar una instrucción por otra si conocemos el código hexadecimal de la instrucción y donde se encuentra ubicada. Entre los editores hexadecimales más conocidos podemos mencionar a Winhex, Hex, Ultraedit y Hacker's View.

Como su nombre lo dice, los des-ensambladores permiten des-ensamblar un programa. Dado un archivo ejecutable con esta herramienta podemos conocer las instrucciones en ensamblando que lo componen y poder entender su funcionamiento. Su función es toda la contraria a la de un compilador. Como ejemplos de des-ensambladores podemos mencionar IDA, Sourcery, DeCadePro, W32Dasm, VBDE, LDasm.

Una técnica utilizada para proteger aplicaciones de ser copiadas, es comprimir/cifrar el código de la aplicación y descomprimir/descifrar el código en el momento que se necesite ejecutar. Los descompresores son aplicaciones que permiten obtener el ejecutable original antes de que fuera procesado por el compresor/cifrador. O polo menos contar con una imagen descomprimida que pueda ser ejecutada o funcional. Ejemplo de este de aplicaciones son Armadillo Kille, CUP, EXELOCK, PeUNLOCK, Deshrink.

Un depurador permite dar seguimiento a la ejecución de una aplicación y poder conocer que es lo que hace cada una de las instrucciones de la aplicación. También permite conocer los valores de las diferentes variables que la componen en todo momento. Con este tipo de herramientas es posible localizar instrucciones que lleven a cabo ciertas acciones, por ejemplo solicitar un número de licencia (en el caso de un atacante) o conocer donde lleva a cabo ciertas acciones dañinas un virus. Este tipo de herramientas también son utilizadas por desarrolladores de código para encontrar errores de codificación, Podemos mencionar a Debug, Soft-Ice, TR, dbg, como ejemplos de estas herramientas.

Los analizadores de archivos proporcionan información sobre un archivo, como el tipo de este. En el caso de ejecutables pueden dar a conocer el tipo de plataforma para la cual fue compilada la aplicación. Si se conoce el tipo de plataforma se podrá elegir el des-ensamblador y depurador adecuado. El comando file de Linux es un ejemplo de este tipo de utilerías, así como File Inspector XL, EXEScan, GETTyp. FILE Info, Multi Ripper y Language 2000.

Los dumpeadores de memoria permiten vaciar el contenido de una región de la memoria RAM. Lo cual puede ser interesante ya que muchas aplicaciones almacenan información al arranque de la aplicación para consultarla periódicamente. Al conocer el contenido de la memoria es posible que se conozcan contraseñas utilizadas por la aplicación. Como ejemplos podemos mencionar a AMDUump, LordPE DEeluex, ProcDump, Pupe

Los monitores de registro son utilizados en aplicaciones que corren sobre Windows. Varias aplicaciones almacenan información en los registros de Windows y este tipo de herramienta permite conocer el contenido de los registros.
Existe una gran variedad de herramientas, pero no basta con tenerlas sino hay que saber usarlas. Existen diferentes metodologías para darle la vuelta a la protección de un medio digital, pero esto es otra historia.

-----------------------------------------------------------------------------------------

Fuente: HackHispano.com

SALUDOS & SUERTE / SIRIUSBL@CK
« Última modificación: Diciembre 03, 2010, 01:04:12 pm por jep »
''La corrupción, el síntoma más infalible de la libertad que otorga la Constitución''

Desconectado WaesWaes

  • Actualmente es
  • Colaborador
  • ****
  • Mensajes: 4402
  • You are not prepared!
    • Ver Perfil
Re: Nociones basicas de Ingenieria Inversa
« Respuesta #1 en: Noviembre 17, 2010, 11:59:01 pm »
A la fuente ponela, cuando mucho el spam es tu mensaje no la fuente...

Saludos

Desconectado SiriusBl@ck

  • Me das tu IP?
  • *
  • Mensajes: 32
  • Sexo: Masculino
  • It's The Hack Generation! - SiriusBl@ck
    • Ver Perfil
    • SiriusBl@ck - Blog
Re: Nociones basicas de Ingenieria Inversa
« Respuesta #2 en: Noviembre 18, 2010, 02:30:23 pm »

Cierto xD. Ya puse la fuente.

Saludos WaesMaes

Desconectado iTZBANANO

  • Yo vivo en CPH
  • ***
  • Mensajes: 506
  • Sexo: Masculino
    • Ver Perfil
Re: Nociones basicas de Ingenieria Inversa
« Respuesta #3 en: Noviembre 18, 2010, 11:12:30 pm »
Muy buena info, aprendí varias cosas que no sabia.

Desconectado SiriusBl@ck

  • Me das tu IP?
  • *
  • Mensajes: 32
  • Sexo: Masculino
  • It's The Hack Generation! - SiriusBl@ck
    • Ver Perfil
    • SiriusBl@ck - Blog
Re: Nociones basicas de Ingenieria Inversa
« Respuesta #4 en: Noviembre 19, 2010, 06:37:09 am »

Cada dia se aprende una cosa nueva o se amplia el conocimiento sobre algo en particular iTZBANANO.

Saludos

Desconectado el_cash

  • CPQUE??
  • *
  • Mensajes: 1
    • Ver Perfil
Re:Nociones basicas de Ingenieria Inversa
« Respuesta #5 en: Marzo 30, 2015, 07:04:01 am »
GRACIAS POR LA INFORMACION. APRENDI MUCHO SIGUE PONIENDO MAS POST. FALTA LOS MONITOREOS DE REGISTRO POR FAVOR SIGUE CON ESA INFORMACION.  :) :D

Desconectado seth

  • El mas real
  • G#
  • **
  • Mensajes: 7936
  • Sexo: Masculino
    • Ver Perfil
Re:Nociones basicas de Ingenieria Inversa
« Respuesta #6 en: Marzo 30, 2015, 08:49:27 am »
El post es del 2010 y el usuario no entra desde el 2011... no creo que siga posteando

Por favor lee las reglas, está prohibido revivir posts y escribir todo en mayusculas


Ves links a xd-blog.com.ar que no andan? buscalos en You are not allowed to view links. Register or Login


xx
Nociones basicas de Encriptacion

Iniciado por ..::Lëssiëm Táralóm::..

6 Respuestas
4618 Vistas
Último mensaje Enero 15, 2008, 07:10:07 am
por Audrum
resuelto
Juntar archivos en C++ (Nociones de un joiner + Nociones Installer + infeccion)

Iniciado por SEKTOR

7 Respuestas
3132 Vistas
Último mensaje Julio 27, 2011, 07:51:07 pm
por SEKTOR
xx
Ingenieria inversa

Iniciado por tavitopiu

2 Respuestas
1807 Vistas
Último mensaje Marzo 20, 2014, 11:15:53 am
por cibergolen
xx
Problema con ingeniería inversa

Iniciado por zk4m1k4z3

5 Respuestas
2371 Vistas
Último mensaje Marzo 10, 2007, 02:07:09 am
por sn0x.
xx
Manual de Ingenieria Inversa

Iniciado por Dr.SysCrack

2 Respuestas
2848 Vistas
Último mensaje Diciembre 02, 2007, 08:14:57 am
por Ramc
xx
curso de ingenieria inversa

Iniciado por Hacker290

12 Respuestas
4034 Vistas
Último mensaje Enero 16, 2012, 10:02:41 am
por jep
xx
Ingeniería inversa en Android?

Iniciado por ppdeluxe

2 Respuestas
2482 Vistas
Último mensaje Abril 27, 2013, 07:36:03 am
por cibergolen
resuelto
Ingenieria Inversa en Linux

Iniciado por cibergolen

3 Respuestas
3639 Vistas
Último mensaje Noviembre 16, 2010, 06:10:34 am
por svchost
xx
Manual de Ingenieria Inversa

Iniciado por Dr.SysCrack

0 Respuestas
2012 Vistas
Último mensaje Noviembre 21, 2007, 04:38:13 pm
por Dr.SysCrack
question
Ingenieria Inversa WPA con handshake

Iniciado por martin_poipon

1 Respuestas
2259 Vistas
Último mensaje Febrero 02, 2011, 02:14:50 pm
por Aetsu