elhacker.net cabecera Bienvenido(a), Visitante. Por favor Ingresar o Registrarse
¿Perdiste tu email de activación?.

 

 


Tema destacado: Los 10 CVE más críticos (peligrosos) de 2020


+  Foro de elhacker.net
|-+  Seguridad Informática
| |-+  Análisis y Diseño de Malware (Moderador: fary)
| | |-+  [MASM][SRC] ¿Puede este codigo burlar a los AV's?
0 Usuarios y 1 Visitante están viendo este tema.
Páginas: [1] Ir Abajo Respuesta Imprimir
Autor Tema: [MASM][SRC] ¿Puede este codigo burlar a los AV's?  (Leído 3,295 veces)
jmetin2

Desconectado Desconectado

Mensajes: 14


Ver Perfil
[MASM][SRC] ¿Puede este codigo burlar a los AV's?
« en: 11 Julio 2013, 00:18 am »

Hola amigos, un dia estaba programando en ASM (aun estoy empezando), y se me ocurrio la idea de programar un downloader y dejarlo FUD, pero ahi surgio la pregunta ¿como lo ago?

Entonces pense: "¡Puedo llamar a las API's de forma dinamica!". Como saben las unicas API's que se necesitan son 2: LoadLibrary y GetProcAddress asi que escribi esto:

Código:
.386                 ; create 32 bit code
.model flat, stdcall

;;;;; Importar Kernel32 y sus funciones

include     \masm32\include\kernel32.inc
includelib  \masm32\lib\kernel32.lib

.data

USER32  db  "User32",0
Message db  "MessageBoxA",0

.code
   start:
     PUSH offset USER32
     CALL LoadLibrary
     PUSH offset Message
     PUSH EAX
     CALL GetProcAddress

     PUSH 0
     PUSH offset USER32    ;Titulo del mensaje
     PUSH offset USER32    ;Texto del mensaje
     PUSH 0
     CALL EAX
   end start

pero me di cuenta que cuando un AV analize el archivo, se dara cuenta de las cadenas ASCII y si encuentra un patrón de funciones sospechosas pues es mas que seguro que lo detectara como una amenaza.
Fue ahi donde pense que si dejo la variable llena de caracteres al azar y compilo el programa, al abrirlo con un editor hexadecimal puedo ver la cadena que yo escribi, asi que puedo modificarla a placer y al ser ejecutada la variable tomara el valor que yo le asigne con el editor hexadecimal.

bueno a esto me refiero:

Código:
.386                 ; create 32 bit code
.model flat, stdcall

;;;;; Importar Kernel32 y sus funciones

include     \masm32\include\kernel32.inc
includelib  \masm32\lib\kernel32.lib

.data

USER32  db  "666666",0
Message db  "11111111111",0

.code
   start:
     PUSH offset USER32
     CALL LoadLibrary
     PUSH offset Message
     PUSH EAX
     CALL GetProcAddress

     PUSH 0
     PUSH offset USER32    ;Titulo del mensaje
     PUSH offset USER32    ;Texto del mensaje
     PUSH 0
     CALL EAX
   end start

Supuestamente el exe no debe de hacer nada, ya que no hay nada que importar, pero al compilar y editar el archivo con un editor hexadecimal se muestra como el exe funciona.







Funciono!



Ahora, si esto lo modificamos un poco y le agregamos unos XOR podriamos modificar y agregar cadenas encriptadas. bueno eso es solo mi punto de vista.

Tambien cabe la posibilidad de insertar codigo (cifrado) en una variable, desencriptarlo y ejecutarlo.

si a alguien le parece y quiere implementar algo, cuanta con toda mi ayuda.

PD: Muy pronto lanzare un [MASM][SRC] Downloader
« Última modificación: 11 Julio 2013, 00:55 am por jmetin2 » En línea

Empezando a programar en MASM32
Karcrack


Desconectado Desconectado

Mensajes: 2.416


Se siente observado ¬¬'


Ver Perfil
Re: [MASM][SRC] ¿Puede este codigo burlar a los AV's?
« Respuesta #1 en: 11 Julio 2013, 00:57 am »

Importando sólo LoadLibrary y GPA ten por seguro que más de una detección tendrás.

Suerte ;)
En línea

jmetin2

Desconectado Desconectado

Mensajes: 14


Ver Perfil
Re: [MASM][SRC] ¿Puede este codigo burlar a los AV's?
« Respuesta #2 en: 11 Julio 2013, 01:06 am »

 :-[ :-[ :-[ :-[

jajajaja no habia pensado en eso, bueno esque sin paginas para  chekar sin que manden pruebas no me atrevo, y pues no he podido hacer un chekeo (ch4ckme murio).

¿Que solución puede tener eso?
En línea

Empezando a programar en MASM32
Karcrack


Desconectado Desconectado

Mensajes: 2.416


Se siente observado ¬¬'


Ver Perfil
Re: [MASM][SRC] ¿Puede este codigo burlar a los AV's?
« Respuesta #3 en: 11 Julio 2013, 01:17 am »

La forma más común es recorriendo la estructura PEB_LDR_DATA del PEB en busca de KERNEL32. Tras encontrar su base se recorre su EAT en busca de LoadLibrary() y GetProcAddress() y se llama directamente a los punteros. :rolleyes:

Hay información en el foro busca sobre shellcodes y APIs :-*
En línea

The Swash

Desconectado Desconectado

Mensajes: 194


Programmer


Ver Perfil WWW
Re: [MASM][SRC] ¿Puede este codigo burlar a los AV's?
« Respuesta #4 en: 11 Julio 2013, 01:27 am »

Creo que esto te puede servir:
http://ricardonarvaja.info/WEB/CURSO%20NUEVO/TEORIAS%20NUMERADAS/1001-1100/1030-Importando%20funciones%20a%20mano_PARTE%20II_por%20Solid.rar
http://ricardonarvaja.info/WEB/CURSO%20NUEVO/TEORIAS%20NUMERADAS/1001-1100/1029-Importando%20funciones%20a%20mano_PARTE%20I_por%20Solid.rar
http://ricardonarvaja.info/WEB/CURSO%20NUEVO/TEORIAS%20NUMERADAS/1301-1400/1330-IMPORTANDO%20FUNCIONES%20MANUALMENTE%20-%20The%20Swash.rar

Saludos.
En línea

jmetin2

Desconectado Desconectado

Mensajes: 14


Ver Perfil
Re: [MASM][SRC] ¿Puede este codigo burlar a los AV's?
« Respuesta #5 en: 11 Julio 2013, 03:14 am »

Gracias amigos, compartire lo que encuentre y lo que logre hacer.
En línea

Empezando a programar en MASM32
Páginas: [1] Ir Arriba Respuesta Imprimir 

Ir a:  

Mensajes similares
Asunto Iniciado por Respuestas Vistas Último mensaje
alguien puede ayudarmecon este codigo
Programación Visual Basic
pedraosone 7 2,417 Último mensaje 5 Octubre 2007, 01:57 am
por Spider-Net
Ensamblar con MASM codigo DOS
ASM
x64core 3 4,450 Último mensaje 30 Noviembre 2011, 23:07 pm
por Eternal Idol
Se puede optimizar este codigo ?
PHP
nobo 6 3,797 Último mensaje 5 Marzo 2012, 22:41 pm
por nobo
Se puede optimizar más este codigo?
Desarrollo Web
z3nth10n 2 2,838 Último mensaje 16 Abril 2013, 07:33 am
por z3nth10n
Se puede descifrar este codigo?
Criptografía
maryrose1984 3 6,601 Último mensaje 6 Junio 2013, 19:31 pm
por engel lex
WAP2 - Aviso Legal - Powered by SMF 1.1.21 | SMF © 2006-2008, Simple Machines