Underc0de

[In]Seguridad Informática => Análisis y desarrollo de malwares => Desarrollo y modificación de malwares => Mensaje iniciado por: Karcrack en Junio 16, 2013, 06:29:48 PM

Título: [HOT] Avira Bypass
Publicado por: Karcrack en Junio 16, 2013, 06:29:48 PM
Bueno, siendo Avira el antivirus que más me ha tocado los cojo*** a la hora de codear malware me puse a analizar porque saltaba la más famosa de sus detecciones (TR/Dropper.Gen)... Ésta salta por muchas razones... pero he descubierto una que no he visto nunca documentada en ningún foro :P

Básicamente Avira detecta como Dropper una aplicación en VB6 si ésta gasta __vbaAryLock/__vbaAryUnlock... Estas funciones sirven para evitar que al llamar a una función el Array que pasas como parámetro cambie de tamaño. Como dato diré que sencillamente llaman a sus funciones análogas en OLEAUT32.

Y ahora lo interesante ¿Cómo narices evitamos llamar a esas APIs si tenemos que pasar un item de un Array a una función? La única forma que se me ha ocurrido a mí es usando la estructura SAFEARRAY (de la que están compuestos todos los Arrays en VB6) para acceder al puntero con los datos del array.
Tal que así:
DWORD[DWORD[VarPtrA(arr)] + &HC]

Siendo VarPtrA() una declaración especial de VarPtr() que acepte como entrada Arrays :D No pongo código de ejemplo para dejar algo de trabajo al lector :P

Saludos! ;D


Otro pequeño tip :D
Para saltarse en algunas ocasiones Avira-TR/Dropper.Gen o F-PROT-W32/VBTrojan.9!Maximus basta con establecer el FormCount del VBHeader a 0 aún teniendo formularios en tú aplicación (eso sí, éstos no se cargarán)
Título: Re:[HOT] Avira Bypass
Publicado por: ZanGetsu en Junio 16, 2013, 06:35:31 PM
Gracias, muy bueno
Título: Re:[HOT] Avira Bypass
Publicado por: k0ws en Junio 16, 2013, 08:16:04 PM
Hace tiempo tontee por esos lares obteniendo algún que otro resultado (Hablando siempre desde el código XD), pero lo tuyo es superior bro, enhorabuena!

(http://www.aniinthesky.com/wp-content/uploads/2013/05/jocker-aplausos.gif.gif)

-Saludos-
Título: Re:[HOT] Avira Bypass
Publicado por: inzect02 en Junio 17, 2013, 05:41:13 PM
 ??? No se por que se complican xD.
Ofuscando código lo tienes todo
Título: Re:[HOT] Avira Bypass
Publicado por: k0ws en Junio 17, 2013, 08:13:24 PM
No tienes permitido ver los links. Registrarse o Entrar a mi cuenta
??? No se por que se complican xD.
Ofuscando código lo tienes todo

Pero asi no se aprende...
Título: Re:[HOT] Avira Bypass
Publicado por: Karcrack en Junio 18, 2013, 02:54:46 PM
No tienes permitido ver los links. Registrarse o Entrar a mi cuenta
??? No se por que se complican xD.
Ofuscando código lo tienes todo
¿Ofuscar el código? ¿El código que genera VB6? Eso sí es complicarse.

En otros lenguajes como C/ASM sí puedes simplemente ofuscar el código, aquí no basta con ofuscar el código porque la parte detectada tiene que ver con el paso de arrays como parámetros y la forma en que VB6 lo maneja.
Título: Re:[HOT] Avira Bypass
Publicado por: Frade en Enero 23, 2014, 02:55:26 PM
He indagado sobre el lo que recomiendas, pero sin embargo tengo la duda de como pasas los datos del split.
Recomiendas algo? Usas Split() realmente?

Aprovecho para agradecerte por la info al inicio del post
Título: Re:[HOT] Avira Bypass
Publicado por: crackerfull en Marzo 08, 2014, 06:23:35 PM
interesante
gracias