🔒 Registro cerrado · Apertura oficial próximamente · Acceso exclusivo para alumnos activos
Iniciar SesiónHash de importaciones y sus trampas
4 tareas · 35 min · Principiante
Miércoles 9 de junio de 2027, Ediciones Caracucho. Fabián Chaparro propone agrupar la cola por el hash de importaciones, porque es rápido y lo da cualquier herramienta de análisis estático. En esta sala lees qué resume ese hash, cuándo une a dos muestras de verdad y cuándo une a medio mundo. Todo es lectura de tablas de importaciones ya extraídas; nada se ejecuta.
Objetivo de la sala
Miércoles 9 de junio de 2027, Ediciones Caracucho. Fabián Chaparro propone agrupar la cola por el hash de importaciones, porque es rápido y lo da cualquier herramienta de análisis estático. En esta sala lees qué resume ese hash, cuándo une a dos muestras de verdad y cuándo une a medio mundo. Todo es lectura de tablas de importaciones ya extraídas; nada se ejecuta.Un ejecutable de Windows declara qué funciones de qué bibliotecas del sistema va a usar: es su tabla de importaciones. El hash de importaciones (en muchas herramientas aparece como imphash) toma esa lista, la escribe como biblioteca.función en minúsculas y sin la extensión de la biblioteca, en el mismo orden en que aparece en el archivo, y calcula un MD5 del resultado.
Dos muestras con el mismo hash pidieron las mismas funciones en el mismo orden. Eso suele pasar cuando salen del mismo código compilado de la misma manera, y por eso sirve para buscar parientes aunque los bytes hayan cambiado. Pero el hash no sabe nada del código propio: solo de la lista.
Responde para continuar
¿Qué describe exactamente el hash de importaciones de una muestra?
Ver pista de ayuda
El hash se calcula sobre una sola parte del archivo.
Abre el laboratorio y ejecuta SELECT * FROM importaciones_resumen, SELECT * FROM importaciones_eca12 y SELECT * FROM hash_en_la_flota.
Un programa .NET no llama directamente a las bibliotecas del sistema: deja ese trabajo al entorno de ejecución, y su tabla de importaciones suele tener una única entrada. Todos los ejecutables .NET de ese tipo comparten, por tanto, el mismo hash de importaciones, sean maliciosos o no. Antes de usar un hash para unir dos muestras hay que mirar cuántos programas legítimos de la propia flota lo tienen.
Responde para continuar
¿Cuántos programas legítimos de la flota comparten el hash de importaciones de ECA-12?
Ver pista de ayuda
Busca el hash de ECA-12 en la tabla de la flota.
Ejecuta SELECT * FROM bloques_eca04_eca11.
ECA-04 y ECA-11 importan exactamente las mismas 57 funciones y, aun así, sus hashes son distintos. Como el hash se calcula sobre la lista en orden, basta con que el compilador o el autor coloquen un bloque de importaciones en otro sitio para que el valor cambie por completo. Un hash distinto no demuestra que dos muestras no sean parientes.
Responde para continuar
Escribe el nombre de la biblioteca cuyo bloque de importaciones cambió de lugar y quedó al final de la tabla de ECA-11.
Ver pista de ayuda
Compara las dos columnas de bibliotecas posición por posición.
Ejecuta SELECT * FROM importaciones_eca14.
ECA-14 y ECA-15 comparten hash, pero su lista tiene solo seis funciones: cargar una biblioteca, pedir la dirección de una función, reservar y proteger memoria, salir y mostrar un mensaje. Es la tabla típica de un archivo empaquetado, en el que el código real va comprimido o cifrado y se reconstruye al ejecutarse. Esa tabla la pone el empaquetador, no el autor de lo que va dentro, y la tabla de la flota dice que 37 instaladores legítimos tienen la misma.
Responde para continuar
¿Qué se anota sobre el hash compartido de ECA-14 y ECA-15?
Ver pista de ayuda
Piensa en quién escribió esa tabla de seis funciones.
Whoami-Labs Pro
Whoami-Labs Pro utiliza cookies
Utilizamos cookies y almacenamiento local para el funcionamiento del sitio, seguridad de sesión y, si lo autorizas, analítica y marketing. Puedes aceptar, rechazar o personalizar. Política de Privacidad
Preferencias
Configuraciones de cookies
Elige qué categorías permitir. Las esenciales siempre están activas. Consulta la Política de Privacidad.
Esenciales
Siempre activas · sesión, CSRF, tema y esta preferencia
Necesarias para iniciar sesión, proteger formularios (CSRF) y recordar tu elección de cookies y tema. Sin ellas la plataforma no funciona de forma segura.
Analíticos
Hoy no activos en la plataforma; listos para cuando se conecten
Nos ayudan a entender uso de cursos y páginas. Si los activas, se usarán cuando conectemos analítica; hasta entonces no se carga ningún tracker.
Marketing
Hoy no activos; campañas futuras solo con tu permiso
Comunicaciones o campañas. No activos hoy en la plataforma; quedarán listos si los conectamos y solo si los permites.