Los crypters genericos ya se extinguieron

3 comments
Los crypters es algo de lo que hablan mucho los newbies y scriptkiddies cuando descubren el malware (por no decir todos).

El 100% de los crypters en foros hispanos y públicos funcionan de la misma manera.

Generalmente se utilizan las siguientes APIs:

CreateProcess, NtUnmapViewOfSection, WriteProcessMemory, SetThreadContext, ResumeThread, NtMapViewOfSection.

Lo que va a hacer ese stub es crear un proceso, supongamos notepad.exe y luego se va a reemplazar el código mapeado en memoria de notepad.exe por el código del archivo “cifrado” y va a ejecutar un hilo que apunta al inicio del mismo.

Todos los que están interesados en malware deberían saber que un antivirus se compone por varios motores para detectar malware, es decir un motor de detección por firmas, un motor de detección heurística, un emulador, etc.

Cuando alguien “programa” o “modifica” un “crypter FUD (full undetected)” lo corrobora subiendo orgulloso un troyano “cifrado” a una pagina como virus total. 0/64 detecciones. WOW, SO MUCH UNDETECTED, SO MUCH FUD


Siendo algo tan “indetectable”, por que digo que no sirve?

Hay mucha confusión con respecto a este tema, ya que mucha gente se llena la boca escribiendo tutoriales de cosas de las que no tiene idea como funciona, pero como el método aplicado da algunos resultados, suponen que el método es realmente efectivo, pero no están en lo cierto.

Este método tan básico se viene usando hace muchos años y es algo que esta súper manejado por la industria antivirus (hablando de crypters genericos. Realmente hay cosas complejas, pero nada es gratis).

Pero si virus total dice 0/64, por que no funciona?

Básicamente, cuando subimos un archivo a virus total o escaneamos un archivo, se aplica principalmente el análisis basado en firmas, heurística. No estoy seguro de que se emplee la emulación en scanners online ya que consume bastantes recursos.

Pero en la vida real estamos frente a cosas mas complejas, como la detección por comportamiento, escanear la memoria operativa, etc.

Básicamente cuando se ejecuta el stub, no importa si estas usando un cifrado xor, rc4 o AES 256, ya que el antivirus no va a decifrar el ejecutable. El antivirus no es tan tonto como el que programa un crypter. Básicamente lo que hace es interceptar hookeando algunas de las APIs que mencione anteriormente desde ring0, es decir que no hay manera de corregir los hooks desde usermode (ring3).

Un ejemplo es la api WriteProcessMemory. El antivirus hookeando esta api va a obtener todo lo que escribe en memoria, es decir, el archivo totalmente decifrado. Asi que si te esmeraste aplicando algoritmos criptograficos fuertes lamento decirte que perdiste tu tiempo.

No importa si llamas a WriteProcessMemory de manera estática, dinámica, con CallWindowProc, con un sysenter o algún truco sucio. Si sabes lo que estas haciendo sabes que WriteProcessMemory llama a NtWriteProcessMemory el cual llama a KiFastSystemCall que hace un sysenter, entra a ring0, llama NtWriteProcessMemory en kernel mode y ahi sucede la magia. El antivirus sabe que vas a escribir en la memoria y levanta una bandera ya que es algo altamente sospechoso.

Otro método de detección es el análisis de la memoria operativa. El malware desencriptado esta en memoria como si nunca hubiera tocado un crypter. El antivirus lo encuentra igual de fácil.

“Yo uso un metodo privado... RunPE Shellcode... Bla Bla”}

Si sos de los que dice eso, realmente te aconsejo que te dediques a otra cosa. Es el mismo RunPE. Te mintieron. Agarra ollydbg y fijate.

Otra cosa que veo en los foros hispanos es mucha gente “dedicándose” a la venta de crypters la cual no tiene demasiados conocimientos de informática, pero como leyó un par de papers puede indetectar alguna que otra herramienta y los venden caro, cuando ilegalmente hablando estas herramientas son vendidas por descarte a menos de U$D 5.

Si no me crees lo que te digo, agarra un antivirus y pruebalo por tu cuenta. Puede que los antivirus gratis solamente te dejen usar el método de firmas, pero por ejemplo NOD32, Kaspersky, BitDefender lo van a detectar. Hace la prueba.

Autor: OnTheCore

Gracias al mismo OnTheCore por permitirme traerlo al blog y ustedes que opinan se extinguieron o aun esta alguno vivo? 

Regards,
Snifer

3 comentarios

  1. Esos pibes están des-actualizados, el mundo del Malware evoluciona día a día, lo que hoy es indescifrable y "super wuay", mañana es abandonware. Y lo peor es que siguen subiendo información totalmente vieja e inutil, y le nublan el camino a los que se inician en este increíble mundo.

    ResponderEliminar
  2. Hola, algun foro donde actualizarse un poco? hace tiempo que no me paseo por estos caminos.

    ResponderEliminar