Crypter FUD: El Stub como pieza clave

El término Crypter FUD es muy amplio en internet, y se trata de un recurso para poder en que dar un archivo y ocultarlo de determinadas personas que no se encuentran autorizadas para obtener el código fuente, reutilizarlo, modificarlo o hacer uso de este para cuestiones personales. Por otra parte, se encarga de evadir los sistemas de protección que utilizan ciertos antivirus, con la finalidad por supuesto, de que no se escanee el código fuente, y generalmente se utiliza para esconder malware.

Este recurso se trata de un conjunto compuesto por dos elementos, el primero se conoce como builder mientras que el segundo es llamado comúnmente stub. Para el primero, se trata de una parte sencilla del código, el cual se diseñan con el propósito de formar un ejecutable el cual estará compuesto por el stub y el código fuente cifrado (cabe destacar que los programadores pueden hacer uso de diversas técnicas para poder encriptar esta información). En el caso de la segunda parte, es decir el stub, se trata de algo bastante complejo, ya que decodifica el código fuente cifrado y permite almacenarlo directamente en la memoria del sistema.

El stub hacer uso de una técnica conocida como RunPE o Dynamic Forking, tratándose de una técnica bastante antigua, es muy funcional y válida hasta el día de hoy, lo que la hace totalmente excepcional para cargar la información sin tocar el disco duro.

El procedimiento Run PE o Dynamic Forking

Cuando se ejecuta el Stub como parte del Crypter FUD, lo primero que realiza es ubicar en el código fuente cifrado la clave cifrado/descifrado, decodificándolo en la memoria. Enseguida, el stub comienza un segundo proceso invocándolo con una propiedad conocidad como CREATE_SUSPENDED. Esto permite que el archivo se cargue en la memoria, así como los datos para su ejecución, sin embargo no arranca sino que se encuentra suspendido.

Posteriormente se encarga de ubicar la dirección de memoria, la sección y cabecera del proceso que se encuentra en suspensión, y sobrescribe estas con el código fuente de descifrado que se encuentra en la memoria. Luego se encarga de sustituir los datos de contexto por los datos que se encuentran en el archivo ejecutable, es decir el código fuente que fue descifrado, el diseñado por nosotros.

Por último, se encargará de lanzar nuevamente el proceso que está suspendido, pero esta vez ejecutando el código fuente diseñado por nosotros, y con ello se habrá logrado el objetivo de pasar por alto los sistemas de detección de antivirus (aunque esto es un tema más complejo).

Conclusión

Cómo pudiste observar, el stub como parte principal del Crypter FUD, es una parte bastante importante ya que, se encarga de establecer el código en la memoria para que éste pueda pasar desapercibido por los sistemas de detección de los antivirus, gracias a una serie de procedimientos realizados para poder ejecutar en el sistema nuestro código fuente, logrando los resultados deseados, y lo mejor de todo, ocultándolo manteniendo el código a salvo.

Please follow and like us:

Deja un comentario