Prueba

Páginas: 4 (932 palabras) Publicado: 27 de octubre de 2010
Decompiladores

I.T. Informática de Sistemas Traductores Manuel Martín Salvador
draxus@correo.ugr.es http://draxus.org

¿Qué es un decompilador?

Es un programa que realiza la operacióninversa de un compilador: obtener el código fuente de un programa compilado

¿Por qué decompilar?


Para arreglar bugs (errores) Para encontrar vulnerabilidades Para buscar malware Para aprender Porinteroperabilidad Para optimizar el código Para mejorar el programa Por si has perdido el código















¿Es legal?
La licencia de la mayoría de los programaspropietarios prohíben explícitamente la decompilación, pero en algunos países hay leyes que la permiten para los siguientes casos:


Para propósitos de interoperabilidad con otro software o hardware Paracorregir errores en aquellos casos en el que el propietario no pueda hacerlos Para saber si se están usando algoritmos protegidos por patentes





¿Es posible?



Muchos creemos que dela misma forma que no se puede obtener una vaca de una hamburguesa, tampoco se puede obtener el código de un programa binario. Si bien es cierto que no todo programa se puede decompilar, hay casos enlos que podemos obtener un código útil. La verdad es que la mayoría de los decompiladores actuales sólo son capaces de usarse en programas preparados y no en el MundoReal(TM)





¿Esposible?
Código C Ensamblador Ensamblador optimizado

void main() { int i, j, k; i = 10; j = 20; k = i*j + 5; }

;---- i = 10; mov si, 10 ;---- j = 20; mov di, 20 ;---- k = i*j + 5; mov ax, si mov bx,di mul bx add ax, 5 mov [bp+6], ax

;---- k = i*j + 5; mov ax, 10 mov bx, 20 mul bx add ax, 5 mov [bp+6], ax

¿Es posible?
Código C Ensamblador 1 Ensamblador 2

if (i>20){ j=30; } else{ j=40; }j++;

cmp [bp+2], 20 jle lab1 mov [bp+4], 30 jmp lab2 lab1: mov [bp+4], 40 lab2: inc [bp+4]

cmp [bp+2], 20 jg lab1 jmp lab2 lab1: mov [bp+4], 30 jmp lab3 lab2: mov [bp+4], 40 lab3: inc [bp+4]...
Leer documento completo

Regístrate para leer el documento completo.

Estos documentos también te pueden resultar útiles

  • Prueba
  • Prueba
  • Prueba
  • Prueba
  • Prueba
  • Pruebas
  • Pruebas
  • Prueba

Conviértase en miembro formal de Buenas Tareas

INSCRÍBETE - ES GRATIS