(La entrada de hoy corre a cargo de Germán Sanchez, que pueden localizar vía @enelpc o en su página web http://www.enelpc.com/, que nos presenta la herramienta 4n4lDetector. Esperamos que les guste).
4n4lDetector v1.2 es una herramienta destinada a realizar un análisis rápido sobre binarios PE en busca de código malicioso, principalmente de forma estática, aunque también trabaja con ejecución de muestras y sobre sus “Memory Dumps”, aunque ésto último de forma opcional, para evitar comprometer la máquina utilizada en el análisis en el caso que no se desee poner en riesgo.
Detecta modificaciones en binarios mediante técnicas a bajo nivel de evasión antivirus, en busca de códigos y estructuras inusuales por parte de un compilador. Además, cuenta con la extracción y el análisis de las cadenas que el binario pueda contener. La siguiente imagen muestra de forma resumida la información que la herramienta comprueba antes de mostrar el resultado:
La manipulación de un binario, si no se hace de manera meticulosa, trae consigo el riesgo de dejar algún tipo de huella tras la verificación de su integridad, ya que los compiladores ajustan los valores de los punteros de sus estructuras de una forma lógica. Ésto puede revelar cierta información, como se muestra en la siguiente imagen, donde a la izquierda se encuentra el “stub” de 4n4lCrypter, junto a un binario cifrado.
Éste muestra el código agregado de forma externa con una detección “Dropper”, y la modificación del “Checksum”.
La siguiente imagen muestra la detección de la compresión de un binario con UPX. Esta rutina es útil para la detección de multitud de “Packers”. Además en este caso extrae información del compilador que se encuentra detrás del comprimido.
La firma “Rich” de Microsoft utiliza una estructura lógica basada en bloques de valores DWORD, con lo que también es analizada en busca de rastros susceptibles de haber sufrido alguna modificación.
Se utiliza la detección de técnicas “Call API By Name”, con la que los desarrolladores de malware evitan su declaración desde la “Import Table”.
El siguiente ejemplo muestra la extracción de nombres de binarios y ejecuciones que el malware realiza con la línea de comandos de “netsh”. Métodos Anti-Análisis utilizados y una URL.
Se analizan los primeros 25 Bytes tras el “Entry Point” de la aplicación en busca de algoritmos de cifrado, saltos poco comunes por parte de un compilador e incluso si la dirección de entrada ha sido desplazada fuera de la primera sección, como suele ser común siendo ésta ejecutable.
Para tener la herramienta más a mano, he incluido la creación de un archivo REG en la raíz de 4n4lDetector, que se crea la primera vez que este se ejecuta con la ruta actual como instalación.
Espero que os guste la herramienta, que podéis descargar desde el siguiente enlace:
Saludos 4n4les! ;)