En los últimos años, Rust ha brillado como un lenguaje eficiente, seguro y con gran rendimiento. Sin embargo, su sólida gestión de memoria y su seguridad de tipos lo han convertido también en un objetivo para los creadores de malware más sofisticados. ¿El resultado? Cada vez más muestras maliciosas aprovechan Rust, y los analistas de malware se encuentran con binarios cuyas características únicas complican el trabajo de desensamblado y análisis estático.
Para colmar esta demanda creciente de soluciones específicas, el Microsoft Threat Intelligence Center presenta RIFT: una herramienta open source que automatiza la identificación del código malicioso dentro de los binarios compilados en Rust. En este artículo descubrirás por qué Rust seduce a los atacantes, qué retos plantea su arquitectura y cómo RIFT puede convertir un análisis complejo en un proceso mucho más ágil y fiable.

Rust, el nuevo favorito de los actores de amenazas
Rust nació para resolver problemas de concurrencia y seguridad en sistemas críticos. Pero esas mismas fortalezas son atractivas para grupos motivados por beneficios económicos y por entidades estatales que buscan herramientas más difíciles de detectar y desarmar:
- Eficiencia nativa: ejecutables ligeros y rápidos.
- Abstracciones seguras: menos vulnerabilidades de memoria útiles para los analistas.
- Ecosistema moderno: bibliotecas enfocadas a redes, criptografía y obfuscación.
El resultado es un malware en Rust que evade muchas técnicas clásicas de ingeniería inversa y firma digital. Para los equipos de respuesta a incidentes, extraer “el código atacante” de esos binarios puede convertirse en una tarea ardua y propensa a errores.
Desafíos del análisis de malware en Rust
Antes de RIFT, los analistas encontraban:
- Símbolos mangled: Rust ofusca nombres de funciones y estructuras.
- Múltiples crates: dependencias externas que fragmentan el flujo de ejecución.
- Estrategias de empacado: “packers” y técnicas de compresión integradas en el binario.
- Módulos generados: código auto-generado que diluye lo relevante para el atacante.
Estas características rompen muchos flujos de trabajo de las herramientas de análisis estático convencionales, obligando a procesos manuales largos y complejos.
¿Qué es RIFT y cómo funciona?
RIFT (Rust Identification and Function Tagger) es una herramienta de línea de comandos que:
- Desmanglea automáticamente nombres de funciones y símbolos Rust.
- Clasifica bloques de código según patrones comunes de malware (carga dinámica, cifrado, comunicación de red).
- Extrae las funciones escritas por el atacante, separándolas de las rutinas de librerías estándar.
- Genera un informe en JSON que puede integrarse en tu SIEM o en pipelines de análisis.
Características clave
- Open source bajo licencia MIT.
- Compatible con binarios x86_64 y ARM compilados con
rustc
. - Plugins para ampliar detección (por ejemplo, trazas de
tokio
oasync-std
). - Integración con frameworks como Ghidra o Binary Ninja vía API.
¿Cómo empezar y contribuir?
RIFT está disponible en GitHub:
👉 https://github.com/MSTIC-RIFT/RIFT
Allí encontrarás:
- Guía de instalación paso a paso.
- Documentación de la API para integrarlo en tu flujo de trabajo.
- Issues abiertos para sugerir nuevas detecciones o reportar bugs.
- Sección de “contribuidores” donde el equipo de Microsoft acepta Pull Requests.