# CIBERSEGURIDAD .blog > ciberseguridad.blog es un medio independiente en español sobre seguridad informática, nacido en 2017 y cocinado a fuego lento por profesionales que trabajan en el sector. Publicamos artículos de fondo, guías prácticas y noticias sobre vulnerabilidades, ataques, malware, privacidad y herramientas, pensados para quien se dedica a la ciberseguridad y para quien quiere entrar en ella. Texto completo del contenido publicado en https://ciberseguridad.blog/ (218 artículos, 6 páginas). Idioma: es (español, es-ES). Índice: https://ciberseguridad.blog/llms.txt --- # Del binario al comportamiento: priorización automática de funciones mediante heurísticas estructurales URL: https://ciberseguridad.blog/del-binario-al-comportamiento-priorizacion-automatica-de-funciones-mediante-heuristicas-estructurales/ Tipo: Artículo Autor: Rafa.Pedrero Publicado: 2026-07-17 Actualizado: 2026-10-08 Tema: Aplicaciones y Herramientas > Análisis de malware guiado por heurísticas: prioriza funciones, detecta capacidades y renombra código automáticamente. Herramienta en Python (Flask + radare2) incluida. Cuando se analiza un binario desconocido, lo primero que uno intenta hacer es entender por dónde empezar. Un ejecutable puede tener cientos o miles de funciones, y la mayoría no dicen nada interesante a simple vista. Muchas son rutinas auxiliares, llamadas a librerías o pequeñas piezas de código que solo sirven para tareas repetitivas. El problema real es cómo encontrar, dentro de todo ese ruido, las partes que realmente importan. Hay dos caminos clásicos para empezar ese análisis. El primero es ir al punto de entrada del programa, la función inicial que se ejecuta cuando el binario arranca. Desde ahí se intenta seguir el flujo del programa paso a paso, como si se leyera una historia desde el principio. El segundo camino es más directo: buscar pistas dentro del propio binario, como cadenas de texto o llamadas a funciones del sistema. Las cadenas de texto suelen ser un buen punto de partida. En muchos casos, un programa deja rastros claros: direcciones IP, nombres de archivos, rutas del sistema o mensajes de error. Esas cadenas pueden llevarnos directamente a zonas del código donde ocurre algo importante. Por ejemplo, si aparece una dirección de servidor, es probable que el código relacionado tenga que ver con comunicación de red. Si aparece el nombre de un programa o un servicio concreto, puede indicar integración con ese sistema. Algo parecido ocurre con las funciones importadas. Muchos programas dependen de funciones del sistema operativo para realizar tareas como escribir en disco, capturar pantalla o manejar memoria. Si se observan las importaciones, se pueden identificar comportamientos típicos. Por ejemplo, ciertas funciones de captura de pantalla o de red suelen aparecer en malware o en herramientas de monitorización. El problema de este enfoque es que no siempre funciona. Cada vez es más común encontrar binarios donde las cadenas están cifradas o construidas en tiempo de ejecución. También hay programas que resuelven sus funciones dinámicamente, lo que significa que no aparecen en la lista de importaciones. En esos casos, tanto las cadenas como las importaciones dejan de ser útiles como guía. Además, hay tipos de código que no se detectan fácilmente con este método. Funciones relacionadas con protocolos de red, sistemas de cifrado, lógica interna compleja o mecanismos de control suelen estar ocultos entre muchas otras funciones sin importancia aparente. No hay una etiqueta clara que diga “esto es interesante”. Por eso, depender solo de cadenas e importaciones es insuficiente. La pregunta entonces es cómo encontrar código relevante sin depender de pistas evidentes. Es decir, cómo identificar automáticamente qué partes de un binario merecen atención cuando no hay información directa. La respuesta está en el uso de heurísticas. Una heurística no es una regla exacta, sino una forma de estimar qué es probable que sea interesante. En lugar de buscar una firma concreta, se buscan patrones generales que suelen aparecer en código relevante. Estos patrones no garantizan resultados perfectos, pero reducen mucho el espacio de búsqueda. ## Código 15. Presentación de hallazgos ```
Se identificaron y renombraron funciones de forma automática.
| Función Original | CC | Capacidades Identificadas (Tags) |
|---|