0Pricing
Ethical Hacking Academy · Lección

Fundamentos del desensamblado

Ghidra e IDA

Fundamentos del desensamblado es una lección gratuita de Ethical Hacking Academy en CoddyKit. Esta es la lección 3 de 4. Puedes leer la lección completa abajo gratuitamente — luego la practicas en el navegador con un editor de código integrado y un tutor de IA 24/7. Forma parte de la ruta de aprendizaje de Ethical Hacking Academy, y tu progreso se sincroniza en la web y la app de CoddyKit. El curso de Ethical Hacking Academy incluye 4 lecciones en total.

¿Qué es el desensamblado?

El desensamblado convierte el código máquina de un binario en instrucciones de ensamblador legibles. Permite leer exactamente lo que ejecutará la CPU.

Es esencial cuando no se dispone del código fuente, como ocurre siempre con el malware.

Desensamblado frente a descompilación

El desensamblado produce ensamblador. La descompilación va más allá y reconstruye un pseudocódigo aproximado de alto nivel similar a C.

El pseudocódigo se lee más rápido; el ensamblador es preciso. Los analistas utilizan ambos y cambian de uno a otro según sea necesario.

Ghidra

Ghidra es una suite gratuita y de código abierto para ingeniería inversa, desarrollada por la NSA. Desensambla muchas arquitecturas e incluye un decompilador potente.

Su precio y sus capacidades la convierten en la herramienta de inicio preferida por la mayoría de los analistas.

IDA Pro

IDA Pro es el estándar comercial consolidado, conocido por su potente desensamblador y su descompilador (con el plugin Hex-Rays).

IDA Free y otras herramientas como Binary Ninja y radare2/Cutter son alternativas populares.

Carga del binario

Importe la muestra en la herramienta, que la analiza automáticamente: identifica funciones, referencias cruzadas y cadenas.

La herramienta crea un mapa del programa por el que puede navegar, empezando por el punto de entrada o por importaciones interesantes.

Lectura del ensamblador

Las instrucciones de ensamblador mueven y operan sobre datos. Algunas instrucciones x86 habituales son:

  • mov: copia datos.
  • push / pop: operaciones con la pila.
  • call / ret: llamada y retorno de funciones.
  • cmp / jmp / je: comparación y salto condicional.
mov eax, [ebp-4]
cmp eax, 0
je  short loc_401050

Referencias cruzadas

Las referencias cruzadas (xrefs) muestran dónde se utiliza una función o cadena. Encontrar xrefs a una API sospechosa como CreateRemoteThread le lleva directamente al código relevante.

Esto permite navegar por comportamiento en lugar de leer de principio a fin.

Seguimiento de llamadas a la API

Las llamadas a la API de Windows importadas revelan la intención. Ver VirtualAlloc, luego WriteProcessMemory y después CreateRemoteThread constituye una secuencia clásica de inyección de procesos.

Reconocer estos patrones es fundamental para aplicar ingeniería inversa al malware.

Vista de grafo

Los desensambladores ofrecen una vista de grafo que muestra los bloques básicos y las bifurcaciones entre ellos. Esto permite visualizar el flujo de control de una función, por lo que resulta fácil seguir los bucles y las condicionales.

Para lógicas complejas, es mucho más legible que una lista lineal de instrucciones.

Combinación con la depuración

El desensamblado estático combina bien con un depurador. Cuando el código está ofuscado o se modifica a sí mismo, puede establecer puntos de interrupción y recorrerlo paso a paso durante la ejecución para ver las instrucciones reales.

Este vínculo con el análisis dinámico es crucial para las muestras empaquetadas, que se tratarán en la siguiente lección.

Cambio de nombres y anotaciones

A medida que comprenda las funciones y las variables, cámbieles el nombre y añada comentarios en el desensamblador. Convertir sub_401000 en decrypt_config facilita mucho el resto del análisis.

Esta asignación gradual de etiquetas es la forma en que los analistas reconstruyen poco a poco toda la lógica de una muestra de malware.

Comprobación rápida

Recuerde la diferencia entre las dos salidas principales de Ghidra.

Resumen

Ahora comprende los conceptos básicos del desensamblado:

  • El desensamblado produce ensamblador; la descompilación produce pseudocódigo.
  • Ghidra (gratuito) e IDA Pro son las herramientas principales.
  • Use las referencias cruzadas y los patrones de llamadas a la API (como las secuencias de inyección) para orientarse según el comportamiento.
  • La vista de grafo visualiza el flujo de control; combínela con un depurador para analizar código ofuscado.

A continuación, neutralizará los packers mediante el desempaquetado.

Preguntas frecuentes

¿La lección «Fundamentos del desensamblado» es gratis?

Sí — el texto completo de «Fundamentos del desensamblado» es gratis para leer aquí en la web. Para practicarla de forma interactiva (editor de código integrado y tutor de IA 24/7) y desbloquear el resto del curso de Ethical Hacking Academy, actualiza a CoddyKit PRO. El curso de Ethical Hacking Academy incluye 4 lecciones en total.

¿Qué aprenderé en «Fundamentos del desensamblado»?

Ghidra e IDA Practicas Ethical Hacking Academy con código real que ejecutas directamente en el navegador, y un tutor de IA 24/7 responde tus preguntas mientras trabajas en la lección.

¿Necesito experiencia previa para empezar Ethical Hacking Academy?

No se requiere experiencia previa. Ethical Hacking Academy en CoddyKit está estructurado para principiantes hasta estudiantes avanzados, así que puedes empezar aquí o desde el inicio y avanzar a tu ritmo. Esta es la lección 3 de 4.

¿Cuánto tiempo toma la lección «Fundamentos del desensamblado»?

La mayoría de las lecciones de CoddyKit toman alrededor de 5–10 minutos. Cada una es compacta e interactiva, así que avanzas constantemente y retomas exactamente por donde dejaste en la web y la app.

¿Puedo escribir y ejecutar código en esta lección de Ethical Hacking Academy?

Sí. Cada lección de Ethical Hacking Academy incluye un editor de código integrado, así que escribes y ejecutas código real directamente en tu navegador y obtienes retroalimentación instantánea de IA — sin configuración local necesaria.

Todas las lecciones de este curso

  1. Análisis estático
  2. Análisis dinámico
  3. Fundamentos del desensamblado
  4. Desempaquetado
← Volver a Ethical Hacking Academy