11- Ofuscar código:
Autor: Javier Gómez ("javier.mil")
Primero de todo,......... ¿ Que es ofuscar ?
La ofuscación consiste en alterar el código fuente (el código VBA) para que No pueda ser entendible. El código ofuscado funciona igual que un código normal, pero con la ventaja que es difícil de entender y/o de leer es decir el código VBA esta enrevesado de tal manera, que el código esta confuso siendo casi imposible de interpretar su lectura. Este nuevo código sirve como medida adicional de SEGURIDAD a los ficheros ACCDE.
¿ Son los ficheros ACCDE seguros ?
La razón principal para la difusión del formato ACCDE es que se supone que No contiene el código fuente. Desafortunadamente esto no es cierto, el código fuente original se puede recuperar ! Resulta difícil obtener el código fuente de Access a partir del código compilado (MDE o ACCDE), pero No es imposible, por eso siempre y cuando no se haya utilizado un ofuscador de código, la tarea de poder descifrar el código será mas difícil. En otras palabras, si no se toman las precauciones debidas, cualquier aplicación en Access puede ser víctima de ingeniería inversa y así obtener su código fuente
Para poner coto a esta ingeniería inversa y evitar la violación de los derechos de autor, consiste en ofuscar el código VBA de forma tal que resulte prácticamente imposible descompilarlo e incluso interpretarlo correctamente aun si se obtiene el código fuente por el procedimiento que fuera. La idea es No dar pistas a los Hackers.
Ejemplo Código Normal
Function
funCalculo()
Rem Código Normal
Dim x As Byte
Dim y As Byte
Dim z As Byte
x = 3
y = 2
z = 5
Debug.Print "Total= " & x * y - z
MsgBox "Total= " & x * y - z
End Function
Ejemplo Código Ofuscado
Function funCalculo2()
Rem Codigo Ofuscado
Rem No hagas un copiar y pegar desde Aquí
(No funcionara)
Dim As Byte
Dim As Byte
Dim As Byte
= 3
= 2
= 5
Debug.Print "Total= " & * -
MsgBox "Total= " & * -
End Function
La ofuscación consiste en la práctica, en la
inclusión de bucles irrelevantes o sin
sentido, cálculos innecesarios,
comprobaciones absurdas, nombres de
funciones y de variables que no tienen nada
que ver con su cometido, funciones
larguísimas que no sirven para nada,
interacciones inverosímiles entre variables
y funciones, su pueden esconder números
pequeños en cadenas de texto, se puede crear
métodos grandes en vez de utilizar
subrutinas,....... etc... etc.....
No conviene olvidar que los ofuscadores no
tienen nada que ver con la seguridad en los
programas, simplemente añaden grandes
complicaciones al proceso de decompilación y
posterior interpretación del código fuente
del programa.
Por supuesto, no se debe comenzar a escribir
el programa de esta manera. Primero, se debe
escribir de forma convencional y luego se le
irán aplicando las reglas anteriores hasta
que haya quedado satisfactoriamente
oscurecido y finalmente se puede aplicar
esta DEMOS.
Bajar Demo-48: Anti_Hacker v1.4