23 julio 2013

Introducción a los 'crypters'

En la pasada edición de la NcN tuve la oportunidad de poder exponer sobre 'crypters', tema sobre el que no es sencillo, en mi opinión, encontrar información de cierta calidad. Este artículo es el primero de una serie en la que pretendo explicar, con cierto nivel de detalle, el funcionamiento y uso de los 'crypters', así como las técnicas que se utilizan para lograr dejar indetectable un 'crypter' ya 'quemado'.

Para evadir la detección de malware por parte de los programas Antivirus, en adelante AVs, se utilizan diferentes técnicas, una de ellas es el uso de 'crypters'. Éstos permiten cifrar cualquier archivo binario para hacerlo 'invisible' a los AVs.

Es cierto, como mencionaba Yago Jesús recientemente en su post que los 'crypters' tienen mala fama, pero también la tenían los exploits hace unos años y hoy en día están integrados en todo tipo de aplicativos de seguridad, como Metasploit por ejemplo. Obviamente los 'crypters' son usados por los delincuentes para evitar la detección de los AVs e infectar los ordenadores, llevando a cabo todo tipo de tropelías, pero también pueden ser utilizados, entre otros casos, en el contexto de una auditoría de seguridad.

¿Quién no se ha encontrado con detecciones de AVs en el transcurso de una auditoría usando Metasploit u otras herramientas? Especialmente en aquellos casos en los que se 'dropean' (vuelcan) binarios al disco. De hecho, metasploit cuenta con una gran variedad de técnicas de ofuscación cuyo objetivo es hacer indetectable el binario a los programas AV. Las técnicas o herramientas que ofrece Metasploit  Community para llevar a cabo las tareas de indectección son básicamente:

  • Utilizar plantillas de programas ejecutables conocidos (Calculadora de Windows, Notepad, etc.)
  • Codificar mediante múltiples 'pasadas' del algoritmo que más nos guste el código del archivo ejecutable, todo ello a través la herramienta msfencode
Estas técnicas son muy efectivas con algunos AVs pero sobre otros no tienen ningún efecto. Por lo tanto, pueden servir en ciertos escenarios pero desde luego no sirven para evitar la detección de todos, o la mayor parte de los AVs. En la versión Metasploit Pro se proporcionan además binarios firmados que aumentan el nivel de 'indetección'.


En la imagen puede verse un ejemplo de uso de msfencode combinado con msfpayload para tratar de evadir la detección por parte de los AVs del payload shell_reverse_tcp, en el que se utilizan 10 pases de la codificación shikata_ga_nai, la plantilla del ejecutable calc.exe y como resultado se genera el archivo outputfile.exe.


En definitiva, si queremos asegurarnos de volver 'indetectable' un determinado binario que es detectado por multiples AVs, necesitamos un 'crypter' indetectado o FUD (Full UnDetectable).

Cryters vs. packers

Hay que puntualizar que en algunos entornos se habla indistintamente de 'crypters' y 'packers', pero en realidad son cosas distintas. El objetivo de un packer es 'empaquetar' o 'comprimir' el archivo ejecutable. Sería como usar un ZIP pero sin perder la estructura de un archivo ejecutable PE (Portable Executable). El objetivo del 'crypter' es 'cifrar' el ejecutable. Sería como usar PGP o TrueCrypt, pero sin perder la estructura PE.

Programas AntiVirus

En lo que sigue vamos a centrarnos en el explicar qué son y cómo funcionan los 'crypters', pero antes debemos entender de forma básica cómo funcionan los AVs. Éstos, son cada vez más sofisticados y utilizan todo tipo de técnicas para identificar el malware, entre estas técnicas destacan dos: las firmas binarias y las firmas heurísticas.

Las primeras buscan secuencias de bits características del malware previamente identificado. Es decir, buscan secuencias de bits, a modo de patrón, de aquel malware que haya pasado por el laboratorio de la empresa de AVs. Es decir, que en algún momento del tiempo, en la empresa de AV han recibido una muestra del malware para analizarlo y una vez identificado como malicioso han fijado o definido un patrón característico que constituye la firma binaria del mismo. En definitiva, un malware totalmente nuevo, recién 'codeado', difícilmente será detectado por este tipo de firmas. Para poder anticiparse y detectar malware que no haya sido analizado previamente, existen las denominadas firmas heurísticas. Básicamente lo que hacen es detectar elementos que típicamente forman parte de los programas maliciosos, como el uso de determinadas funciones, algoritmos de cifrado, etc. Mediante estás técnicas, es posible detectar de forma anticipada malware 'nuevo', pero, además de ser más compleja su implementación y consumir más recursos del sistema que las firmas convencionales, también implican un mayor nivel de riesgo debido a la detección de falsos positivos.

Análisis o escaneo en disco


Las tareas de análisis o escaneo de los archivos binarios son realizadas por los AVs a nivel de disco, no en la memoria RAM. Cuando un AV nos indica que está escaneando la memoria, lo que está haciendo realmente es buscar el binario en disco que arrancó un determinado proceso que en ese momento está ejecutándose en la memoria RAM y una vez ha localizado el mismo, escanea dicho binario (en el disco) en busca de firmas de malware. Así es como funcionan los AVs, escanean los archivos en el disco y los 'crypters' basan su existencia en este principio básico.


En próximas entregas veremos cómo funcionan y cómo se crean los 'crypters' indetectables (FUD).

Artículo cortesía de Abraham Pasamar.

36 comments :

masticover dijo...

Excelente artículo Abraham. Deseando leer el siguiente artículo. ¡Enhorabuena!

María García dijo...

Me ha encantado el artículo. Muy bien explicado y muy útil.
Ya lo he puesto directamente en favoritos y también estoy deseando leer el siguiente :)

Mark dijo...

Podras recomendar lecturas relacionadas al tema,para delantarse, no puedo esperar al siguiente articulo. Saludos

Iniciando dijo...

Desde hace unas semanas que sigo esta pagina y la verdad que estoy aprendiendo mucho! Muchas gracias por compartir tan valiosa información.
Referente al articulo , creo que todos estamos deseando leer ya las siguientes entregas..

McR dijo...

Muy buen articulo esto aterriza que son los crypers, muy buena página se aprende mucho!!...

Abraham Pasamar dijo...

Como comentaba en el artículo es difícil encontrar información, pero deberías empezar buscando en los foros. Puedes probar con elhacker, indetectables.net, udtools.net para empezar ...

Sniffador dijo...

illo , pea pea pea ...

me tas disiendo que con un crypter me pue saltar el antivirú to rexulon de mi ex novia ???

majanwendi , al lorito jeny que te vas acordar de mi , sorra.

Aroooo, nos a jo !

Un saludito a mi premooh el carlos, la xuli de Alkorkon y la familia martinez. usteees representan.

sniffador dijo...

aroooooo premoh,
ahora sé que con un crypter de estos to rexulones me puedo follá el Avast de mi ex mujé.

Maite, preparate , sorra.

Peguin dijo...

Buen articulo pero los crypters ya no sirvan pa na
los antivirus cada vez son mas duros,firewall......

Abraham Pasamar dijo...

En absoluto, la mayor parte de las botnets más activas y profesionalizadas utiliza crypters para proteger los binarios y en el momento que algún Antivirus lo detecta utilizan un crypter actualizado (FUD) y así pueden permanecer indetectados por tiempo indefinido....ni firewalls ni AV's pueden parar eso....

Sniffador NO CENSURE dijo...

premoooooh !

Me tas diciendo ke con un crypter to rexulon puedo jaquear a mi ex mujé ?


Maite, so sorra. te bia enterar.

Anonimo dijo...

Sniffador dijo :


ese locarro que diseee !


to rexulon el articulo, premoh.


Entonces con un crypter de estos puedo meterle de to menos miedo a mi Maite.


por te vas a enterar. sorra.


Un saludito sbd.

Sniffador dijo...

En este post solo se permitiran mensajes que xupen la polla a SBD.

aaaaaaaaaaro premooooh

Sniffador dijo...

En este post solo se permitiran mensajes que xupen la polla a SBD.

aaaaaaaaaaro premoooohhh

Sniffador dijo...

En este post solo se permitiran mensajes que xupen la polla a SBD.

aaaaaaaaaaro premooooh





Siiii o ke ???

Sniffador dijo...

En este post solo se permitiran mensajes que xupen la polla a SBD.

aaaaaaaaaaro premooooh



Borrando voyyyyyyyyyy borrando vengo premohhhh

Sniffador dijo...

En este post solo se permitiran mensajes que xupen la polla a SBD.

aaaaaaaaaaro premooooh





SBD trolled ?

Sniffador dijo...

En este post solo se permitiran mensajes que xupen la polla a SBD.

aaaaaaaaaaro premooooh



ponerse un capcha to rexulon , premoohjs

sniffador dijo...

En este post solo se permitiran mensajes que xupen la polla a SBD.

aaaaaaaaaaro premooooh

sniffador dijo...

En este post solo se permitiran mensajes que xupen la polla a SBD.

aaaaaaaaaaro premoooohsd

sniffador dijo...

En este post solo se permitiran mensajes que xupen la polla a SBD.

aaaaaaaaaaro premoooohddd

sniffador dijo...

En este post solo se permitiran mensajes que xupen la polla a SBD.

aaaaaaaaaaro premooooh dddddddddd

sniffador dijo...

En este post solo se permitiran mensajes que xupen la polla a SBD.

aaaaaaaaaaro premoooohhhhhhhhh

sniffador dijo...

En este post solo se permitiran mensajes que xupen la polla a SBD.

aaaaaaaaaaro premoooohhhhhhh

sniffador dijo...

En este post solo se permitiran mensajes que xupen la polla a SBD.

aaaaaaaaaaro premoooohhhhhhhhhhhhh

sniffador dijo...

En este post solo se permitiran mensajes que xupen la polla a SBD.

aaaaaaaaaaro premoooohhhhhhhhhhhh

sniffador dijo...

En este post solo se permitiran mensajes que xupen la polla a SBD.

aaaaaaaaaaro premooooh

En este post solo se permitiran mensajes que xupen la polla a SBD.

aaaaaaaaaaro premooooh

En este post solo se permitiran mensajes que xupen la polla a SBD.

aaaaaaaaaaro premooooh

En este post solo se permitiran mensajes que xupen la polla a SBD.

aaaaaaaaaaro premooooh

En este post solo se permitiran mensajes que xupen la polla a SBD.

aaaaaaaaaaro premoooohEn este post solo se permitiran mensajes que xupen la polla a SBD.

aaaaaaaaaaro premooooh
En este post solo se permitiran mensajes que xupen la polla a SBD.

aaaaaaaaaaro premooooh

En este post solo se permitiran mensajes que xupen la polla a SBD.

aaaaaaaaaaro premooooh

sniffador dijo...

En este post solo se permitiran mensajes que xupen la polla a SBD.

aaaaaaaaaaro premooooh

En este post solo se permitiran mensajes que xupen la polla a SBD.

aaaaaaaaaaro premooooh

En este post solo se permitiran mensajes que xupen la polla a SBD.

aaaaaaaaaaro premooooh

En este post solo se permitiran mensajes que xupen la polla a SBD.

aaaaaaaaaaro premooooh

En este post solo se permitiran mensajes que xupen la polla a SBD.

aaaaaaaaaaro premoooohEn este poEn este post solo se permitiran mensajes que xupen la polla a SBD.

aaaaaaaaaaro premooooh

En este post solo se permitiran mensajes que xupen la polla a SBD.

aaaaaaaaaaro premooooh

En este post solo se permitiran mensajes que xupen la polla a SBD.

aaaaaaaaaaro premooooh

En este post solo se permitiran mensajes que xupen la polla a SBD.

aaaaaaaaaaro premooooh

En este post solo se permitiran mensajes que xupen la polla a SBD.

aaaaaaaaaaro premoooohEn este post solo se permitiran mensajes que xupen la polla a SBD.

aaaaaaaaaaro premooooh

En este post solo se permitiran mensajes que xupen la polla a SBD.

aaaaaaaaaaro premooooh

En este post solo se permitiran mensajes que xupen la polla a SBD.

aaaaaaaaaaro premoooohst solo se permitiran mensajes que xupen la polla a SBD.

aaaaaaaaaaro premooooh

En este post solo se permitiran mensajes que xupen la polla a SBD.

aaaaaaaaaaro premooooh

En este post solo se permitiran mensajes que xupen la polla a SBD.

aaaaaaaaaaro premooooh

sniffador dijo...

En este post solo se permitiran mensajes que xupen la polla a SBD.

aaaaaaaaaaro premooooh

En este post solo se permitiran mensajes que xupen la polla a SBD.

aaaaaaaaaaro premooooh

En este post solo se permitiran mensajes que xupen la polla a SBD.

aaaaaaaaaaro premooooh

En este post solo se permitiran mensajes que xupen la polla a SBD.

aaaaaaaaaaro premooooh

En este post solo se permitiran mensajes que xupen la polla a SBD.

aaaaaaaaaaro premoooohEn este post solo se permitiran mensajes que xupen la polla a SBD.

aaaaaaaaaaro premooooh

En este post solo se permitiran mensajes que xupen la polla a SBD.

aaaaaaaaaaro premooooh

En este post solo se permitiran mensajes que xupen la polla a SBD.

aaaaaaaaaaro premooooh

Rafael Vázquez dijo...

Muchas gracias por compartir la infor. Acerca de hacer indetectable un .exe vi una platica de un Campus Party donde le ponente añadía el .exe malicioso como un recurso en un proyecto en C++, la verdad no se mucho de área pero lo que entendí que cuando compila su programa en C++ el exe va dentro del nuevo programa hecho en C++ y es ejecutado al momento de ejecutar el programa en C++, luego hace un poco de Persistent. :D

Un Saludo

Abraham Pasamar dijo...

Introducir el .exe malicioso en un recurso de otro ejecutable es una forma de esconderlo y puede que despiste a algún Antivirus, pero la mayor parte de los AVs seguirán detectando el nuevo .exe como malicioso. Si se introduce en .exe malicioso 'cifrado' como recurso de un nuevo .exe, ahí tenemos un crypter :)

Rafael Vázquez dijo...

Perfecto, gracias por el tip.


Saludos

María García dijo...

He leído que la técnica de ocultación utilizada en el último malware para Android consiste en introducir en el comprimido dos ejecutables con el mismo nombre: el bueno y otro malicioso. Y que "traga".
¿Qué nos puedes decir de eso? Gracias.

Abraham Pasamar dijo...

Desconozco los detalles del proceso que comentas, pero es posible, en ocasiones los Antivirus utilizan técnicas demasiado simples para la detección de malware. En ocasiones, el caso de binarios de ejecutables de windows, es suficiente con cambiar un texto (un string) o una letra minúscula por otra en mayúscula para conseguir la indetección por parte de ciertos antivirus.

María García dijo...

Me refiero a esto: http://nakedsecurity.sophos.com/2013/07/10/anatomy-of-a-security-hole-googles-android-master-key-debacle-explained/

Más que con el antivirus, tiene que ver con el instalador de apps android. La técnica consiste en introducir, en el apk comprimido, dos ejecutables con el mismo nombre: el bueno y el malo. Al parecer, el instalador comprueba el checksum del bueno, pero luego instala el malo.

Lo que me asombra es que deje meter en un comprimido dos archivos que se llamen igual. Al parecer, las utilidades de compresión habituales no lo permiten; pero hackeando, se puede hacer, ya que no hay nada intrínseco en el formato que lo impida.

Me quedo con la recomendación de Sophos: que siempre deberíamos esperar lo peor y estar preparados para ello; hacernos preguntas inusuales e improbables (¿qué pasaría si...?).

solitario.moder dijo...

me gusta ese tema pueden encontrar mas sobre ese tema en dekoders.net