Reverse Engineering: Lee Software del Que Nunca Tuviste el Código Fuente
La ingeniería inversa es la disciplina de analizar software compilado para entender cómo funciona — sin acceso al código fuente original. Los investigadores de seguridad la utilizan para encontrar vulnerabilidades, los analistas de malware la usan para diseccionar código hostil, e ingenieros de firmware la emplean para entender sistemas embebidos. Este track cubre el stack completo: desde formatos binarios sin procesar y Assembly, pasando por análisis estático y dinámico, hasta desarrollo de exploits y técnicas avanzadas anti-RE.
Qué Aprenderás
Comenzarás con fundamentos binarios — formatos ejecutables, layout de memoria, y cómo el código de alto nivel se mapea a instrucciones máquina. Desde allí leerás y razonarás sobre Assembly x86/x64 tal como aparece en salida real de disassembly. Usarás herramientas de análisis estático para examinar binarios sin ejecutarlos, luego cambiarás a análisis dinámico y debugging para observar ejecución en vivo. Cursos posteriores cubren análisis de malware, optimizaciones de compilador y cómo oscurecen la intención, scripting para análisis estático automatizado, y trucos anti-reverse-engineering usados en la naturaleza. El track cierra con RE de firmware y sistemas embebidos, investigación de vulnerabilidades, desarrollo de exploits, y una visión general del rumbo del campo.
La Ruta de Aprendizaje
Doce cursos abarcan A1 hasta C2. El curso de apertura introduce conceptos centrales en nivel A1 con una primera mirada gratuita; los dos siguientes cursos (A2–B2) construyen alfabetismo binario y habilidades de lectura de Assembly. Cuatro cursos B2/C1 luego cubren los workflows principales de análisis: herramientas estáticas, debugging dinámico, fundamentos de malware, y scripting. Los últimos cuatro cursos operan en C1–C2 y abordan el material más difícil: optimizaciones de compilador y su efecto en disassembly, targets de firmware y embebidos, investigación de vulnerabilidades y desarrollo de exploits, y tópicos avanzados incluyendo tendencias actuales del campo.
Cómo Funciona
Cada curso está dividido en lecciones cortas y enfocadas con ejercicios prácticos en el editor integrado — lees Assembly, anotas binarios, y trabajas a través de tareas de análisis reales con feedback en tiempo real. Un tutor AI está disponible en cada paso cuando te atascas en una secuencia de instrucciones, una bandera de herramienta, o una estructura binaria desconocida.