¿Cómo identificar y analizar el malware que comprueba las herramientas de seguridad antes de ejecutar?

10

He estado leyendo sobre ZeroAccess y he buscado en el código fuente de algún bot * y encontré este fragmento de código que comprueba si filemon se está ejecutando en la computadora infectada antes de ejecutar el bot.

  int pmain3()
{
    std::vector<DWORD> SetOfPID;
    GetProcessID("filemon",SetOfPID);
    if (SetOfPID.empty())
    {
        // Nothing found running, Safe to execute bot.
    }
    else
    {
        // One of the process was found running, Exit install.

    ExitProcess(0);
    }
    return 0;
}

No es el único. Hay otros revisando Wireshark, tcpview, procmon, VM, VirtualBox, sandBox ...

En este caso, ¿cómo puedo analizar una computadora infectada? ¿Y cómo podría encontrar el proceso infectado?

PS: [*] tomado de la botnet IMbotMod V4.1

    
pregunta Barttttt 05.04.2014 - 12:23
fuente

3 respuestas

3

¡Es una carrera de armamentos! Teóricamente, no puedes inspeccionar un sistema desde dentro de sí mismo. Debe estar en un nivel superior: si desea inspeccionar el malware en el espacio del usuario, debe estar en la zona del kernel. Si desea inspeccionar el malware del kernel, esté en el hipervisor.

En la práctica, para su caso, puede intentar cambiar las herramientas de análisis comunes para evitar la detección del malware. Por ejemplo, puede cambiar el nombre de filemon a fmon. O crea sus propias herramientas de análisis de las que el autor del malware no conoce.

Si desea encontrar un proceso de malware que compruebe las herramientas de análisis, intente conectar GetProcessID. Después de filtrar el ruido, descubrirá el malware que utiliza la función.

    
respondido por el fel1x 23.07.2014 - 20:37
fuente
3

Malware detectó la presencia de Rootkit Revelador , por lo que cambiaron la forma en que se ejecutó el programa . Ahora se inicia con un servicio de Windows con un nombre de ejecutable aleatorio.

Del mismo modo, puede usar un proceso de supervisión para iniciar procmon y cualquier otro ejecutable detectado con los nombres "supuestos".

    
respondido por el mcgyver5 12.04.2014 - 03:47
fuente
0

Otra posibilidad sería el análisis estático del binario utilizando un desensamblador (IDA Pro por ejemplo) para identificar los programas que está buscando.

Luego, puedes parchear el binario (usando IDA o algún editor hexadecimal) para omitir las comprobaciones o modificar las cadenas para que busque fileman o abcdefg en lugar de filemon .

    
respondido por el JayFromA 17.06.2014 - 12:07
fuente

Lea otras preguntas en las etiquetas