Unpacking Unidad 1

« Older   Newer »
 
  Share  
.
  1. josedavido
        +1   +1   -1
     
    .

    User deleted


    Como ya sabemos, esta sección es para tratar temas referentes a la Ingeniería Inversa (Reverse Enginering o RE).
    Lo malo, es que nadie se ha tomado el trabajo de enseñarles a hacer Ingeniería Inversa :P :P .
    asi que abro este post, porque concidero que estamos en edad de saber un poco de RE.

    Iniciamos primero hablando de los Empaquetadores, o encriptadores. son softwares que protegen los programas cuando ya estan terminados. es decir, toman el programa original y lo "distorcionan" ´para que nadie pueda ver lo que hay adentro.
    este tipo de seguridad es la empleada en la cajas de la actualidad, tal como la Infinity, Vygis, Z3X, FUrious, ETC.
    Hay infinidad de empaquetadores en el mercado, unos son free y otros son pagos, entre los principales empaqetadores tenemos los siguientes:
    Execryptor, Themida, ExeFog, Mew, Armadillo, Pack Protector, Asprotect, Aspack, VMprotector... entre otros.
    asi que antes de hacer RE a un sofware, lo primero que debemos hacer es saber si está empaquetado o no, y de estarlo, saber cual empaquetador usa.

    para eso podemos usar varios softwares, pero en este ejemplo vamos a usar uno de mis favoritos, el RDG Packer Detector.


    Link de Descarga:www.multiupload.com/FHAS0A2LDL



    este sencillo programa nos mostrará la verdad escondida detrás de la mayoria de los softwares, no de todos, pero si la mayoria.

    la manera de usarlo es sencila, simplemente lo ejecutamos, damos click en abrir para buscar el EXE a detectar. Despues de esto seleccionamos las opciones M-B y al Frente. luego lick en DETECTAR.
    al cabo de unos segundos obtendremos el resultado de la deteccion.

    aqui déjo ejemplos de algunos análisis.




    Como Podemos ver, uno de los empaquetadores mas usados es el Execryptor, en las versiones 2.2.x y 2.3.x
    y el lenguaje de programacion es Borland Delphi.

    Podemos mirar todo lo que se nos ocurra, y asi estamos dando el primer paso en el mundo de la Ingeniería Inversa.
    ESPEREN MÁS





    Br,

    Josedavido
     
    Top
    .
  2. ciberkhy
        +1   -1
     
    .

    User deleted


    gracias y buena la esplicacion
     
    Top
    .
  3. .::nannocell12::.
        +1   -1
     
    .

    User deleted


    gracias jose buena tu explicasion
     
    Top
    .
  4.     +1   -1
     
    .
    Avatar

    User Nuevo

    Group
    Fan
    Posts
    84

    Status
    Offline
    gracias amigo , me interesa bastante este tema , gracias por compartir tus conocimientos , ojala no se quede aqui este post y los demas miembros aporten , lo digo es para los miembros como yo que no sabemos nada de ingenieria inversa podasmos aprender

    gracias
     
    Top
    .
  5. MobilUnlock
        +1   -1
     
    .

    User deleted


    Este si se puso mejor... Buen Aporte
     
    Top
    .
  6. ciberkhy
        +1   -1
     
    .

    User deleted


    amigo aka le dejo lo que significa ingeneria inversa

    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.



    Edited by ciberkhy - 6/4/2011, 01:13
     
    Top
    .
  7.     +1   -1
     
    .
    Avatar

    User Nuevo

    Group
    Fan
    Posts
    84

    Status
    Offline
    hola

    amigos les cuento que ya comense a meterme en el cuento ya consegui quitarle la proteccion a un archivo que tenia estaba con proteccion aspack v2.12 y buscando en la red encontre el AspackDie 1.2 el cual corri y me quito la proteccion del archivo ahora con el RDG me dice que el compilador es microsoft visual c++ 5.0, mi pregunta es ahora que tengo el archivo exe sin proteccion como puedo desempaquetarlo para que me quede en codigo fuente para poder manipularlo con el visual c++ , si es posible , gracias de antemano
     
    Top
    .
  8. josedavido
        +1   -1
     
    .

    User deleted


    QUOTE (nanpo @ 23/3/2011, 22:03) 
    hola

    amigos les cuento que ya comense a meterme en el cuento ya consegui quitarle la proteccion a un archivo que tenia estaba con proteccion aspack v2.12 y buscando en la red encontre el AspackDie 1.2 el cual corri y me quito la proteccion del archivo ahora con el RDG me dice que el compilador es microsoft visual c++ 5.0, mi pregunta es ahora que tengo el archivo exe sin proteccion como puedo desempaquetarlo para que me quede en codigo fuente para poder manipularlo con el visual c++ , si es posible , gracias de antemano

    jeje, no es tan facil amigo ;) .
    La ingeniería inversa es uno de los temas mas complicados en relacion con el Unlock.
    eso que hiciste estubo bien hecho, eso lo iba a tratar en la unidad 2 de unpacking, pero ya que lo hiciste, entonces te explico:
    si quieres sacar el codigo fuente debes DECOMPILAR el software que tienes, pero eso no funciona muy bien, lo otro que puedes hacer es editarlo, o crackearlo para que funcione sin la proteccion.

    Invito a los seguidores de este post que hagan el ejercicio que se propone en la unidad 1, detecten la proteccion de varios softwares y posteen los resultados aqui, a ver si estan a aprendiendo o no con las explicaciones.
    Si quieren que las clases de RE continuen, entonces hagan las "tareas en casa". :P



    Br,
    Josedavido
     
    Top
    .
  9.     +1   -1
     
    .
    Avatar

    User Nuevo

    Group
    Fan
    Posts
    84

    Status
    Offline
    hola aqui subo las imagenes de algunos que e leido la informacion el mobilex de la mxkey, el de polar pero no me salio nada y el de la ustpro




     
    Top
    .
  10. ciberkhy
        +1   -1
     
    .

    User deleted


    amigo si quiere le pongo un tutorial con el cual yo aprendi dan otros programas pero son miuy utilez solo digame que si quieren que lo ponga
     
    Top
    .
  11.     +1   -1
     
    .
    Avatar

    User Nuevo

    Group
    Fan
    Posts
    84

    Status
    Offline
    amigo si no es mucha molestia lo pudes subir

    mil gracias
     
    Top
    .
  12. ciberkhy
        +1   -1
     
    .

    User deleted


    ok voy a subir uno por dia para que lo puedan analizar con calma desde el lunes
     
    Top
    .
  13. josedavido
        +1   -1
     
    .

    User deleted


    QUOTE (ciberkhy @ 26/3/2011, 21:16) 
    amigo si quiere le pongo un tutorial con el cual yo aprendi dan otros programas pero son miuy utilez solo digame que si quieren que lo ponga

    Existen varios programas para detectar las protecciones, de hecho yo utilozo 4 o 5 antes de convencerme totalmente ya que a veces los detectores no muestran el empaquetador correcto.

    Por otra parte, las veces que el detector muestra "NADA" como resultado de la búsqueda es porque el empaquetador es una version nueva que no está en la base de datos del detector, o porque está utilizando un antidetector, para no ser detectado.


    PD. Ya estoy trabajando en la unidad 2 ;)

    Br,
    Josedavido


     
    Top
    .
  14. calicell
        +1   -1
     
    .

    User deleted


    tremendo tema JOSEDAVIDO gracias por esa explicacion
     
    Top
    .
  15. ciberkhy
        +1   -1
     
    .

    User deleted


    jose quiero pedirte permiso para poner los tutoriales para que lo demas aprendan
     
    Top
    .
18 replies since 23/3/2011, 17:32   592 views
  Share  
.