• Domingo 22 de Diciembre de 2024, 13:00

Autor Tema:  ofuscar codigo  (Leído 2339 veces)

newcode

  • Nuevo Miembro
  • *
  • Mensajes: 1
    • Ver Perfil
ofuscar codigo
« en: Viernes 25 de Julio de 2008, 09:31 »
0
hola soy nuevo en esto y me he puesto a buscar algun ofuscador de codigo en asm y no he encontrado nada.

alguien sabe de algun o como poder hacerlo.

gracias

m0skit0

  • Miembro de PLATA
  • *****
  • Mensajes: 2337
  • Nacionalidad: ma
    • Ver Perfil
    • http://fr33kk0mpu73r.blogspot.com/
Re: ofuscar codigo
« Respuesta #1 en: Lunes 28 de Julio de 2008, 14:12 »
0
Busca en Google "assembler obfuscator". De nada.

Nebire

  • Miembro HIPER activo
  • ****
  • Mensajes: 670
    • Ver Perfil
Re: ofuscar codigo
« Respuesta #2 en: Viernes 5 de Septiembre de 2008, 00:48 »
0
Cita de: "newcode"
hola soy nuevo en esto y me he puesto a buscar algun ofuscador de codigo en asm y no he encontrado nada.

alguien sabe de algun o como poder hacerlo.

gracias

Ofuscar en ensamblador ?   . Mov ax,20 no tiene ninguna otra forma de ser indicado, Me temo que es algo difícil pero ensayando.... te sale, pro ejemplo supongamos el ejemplo siguiente:

se desea comprobar si una lista de números es mayor de 20 con los números que así cumplan luego se desea sumarlos y hallar el promedio de dicha suma... los pasos secuencialmente serían más o menos

Código: Text
  1. poner contador total a 0
  2. poner suma total a 0
  3.  
  4. se ha agotado la lista de lementos ?
  5.  si no, entonces
  6.      tomar elemento de la lista
  7.      comprobar es mayor que 20 ?
  8.      si sí, entonces
  9.            sumar a total y
  10.            aumentar contador en una unidad
  11.    si no
  12.         saltar a por el siguiente elemento
  13. si si ' se acabaron los elementos
  14.     si contador total es mayor que 1 luego
  15.          dividir suma total entre contador
  16.          presentar el resultado
  17.     si no
  18.         presentar no se hallaron elementos
  19. saltar a otra parte del programa
  20.  

Para ofuscar este pequeño código lo que haríamos sería no ir de modo racional por los pasos si no tras buscar el primer elemento de la lista saltar a otra parte del código a iniciar otra rutina, luego, desde allí volveríamos a esta a analizar otro elemento como esta rutina no tiene nada que ver con la otra quien pretenda 'entender' el código de entrada no sabrá por donde tirar, necesitará hacer un seguimiento bastante amplio y abstracto para ver que está entremezclado....

O dicho de otro modo ofuscar en ensamblador es programar de modo antimetódico.... olvidando todo lo referente a objetos, olvidando secuencia de pasos, haciendo muchos saltos incondicionales  colocando etiquetas siempre numeradas (que no expresan nada, en vez de poner leerDisco poner a269) a diestro y siniestro, a veces dar rodeos en vez de usar una instrucción usar 3 ó 4 para hacer lo mismo y en medio de ellas adelantas otra instrucción que normalmente iría más adelante pero que desordenando x líneas más arriba no altera el código pero si dificulta (qué hace aquí esto?)....
«Ma non troppo»
----> ModoVacaciones = False<----