Ensamblador para Análisis de Malware: Guía Completa

x86, x64, ARM para análisis de malware

13 artículos
~171 min lectura total

Sobre esta serie

El ensamblador es el lenguaje que separa a los analistas de malware avanzados del resto. Cuando Ghidra o IDA Pro descompilan una función, es el conocimiento de ensamblador lo que permite distinguir un bucle de cifrado de una rutina benigna. Esta serie enseña las arquitecturas x86, x64 y ARM con enfoque directo en patrones que aparecen en malware real.

Para quién es

Estructura

Bloque 1: Fundamentos x86/x64 (artículos 1-5) Registros, stack, calling conventions, instrucciones aritméticas y lógicas, control de flujo y patrones comunes en malware.

Bloque 2: Patrones maliciosos (artículos 6-9) Shellcode, inyección de procesos, API hashing, cifrado y ofuscación en ensamblador, anti-debugging y anti-VM.

Bloque 3: ARM y técnicas avanzadas (artículos 10-13) Arquitectura ARM para malware móvil e IoT, diferencias Thumb vs ARM, análisis de firmware ARM, y técnicas avanzadas de ofuscación (control flow flattening, opaque predicates).

Nivel

Intermedio. No se requiere experiencia previa en ensamblador, pero sí conocimientos de programación en C y conceptos básicos de sistemas operativos. Los artículos progresan gradualmente desde instrucciones básicas hasta análisis de samples reales.

01
Principiante12 min

Introduccion al Ensamblador para Analisis de Malware

Guia introductoria al lenguaje ensamblador orientada al analisis de malware. Registros, modelo de memoria, formato de instrucciones y por que todo analista debe dominar ASM para entender que hace realmente un binario malicioso.

02
Principiante15 min

Registros x86 y x64: Proposito General, Segmento y Flags

Guia completa de registros en arquitecturas x86 y x64. Registros de proposito general (EAX-ESP, RAX-RSP), registros de segmento, EFLAGS/RFLAGS y su papel en el analisis de malware y reverse engineering.

03
Principiante16 min

Instrucciones Basicas: MOV, ADD, SUB, CMP, JMP y Variantes

Referencia practica de las instrucciones x86/x64 mas frecuentes en malware: movimiento de datos (MOV, LEA, XCHG), aritmetica (ADD, SUB, MUL, DIV), comparacion (CMP, TEST) y saltos (JMP, JE, JNE, JG, JL). Ejemplos reales de malware.

04
Intermedio15 min

La Pila: Stack Frames, Convenciones de Llamada y Buffer Overflows

Anatomia del stack en x86/x64: stack frames, prologo y epilogo de funciones, convenciones de llamada (cdecl, stdcall, fastcall, x64), y como los buffer overflows explotan la estructura de la pila para redirigir la ejecucion.

05
Intermedio12 min

Flujo de Control: Loops, Condicionales y Switch en Ensamblador

Como los compiladores traducen if/else, for, while, do-while y switch/case a ensamblador x86/x64. Patrones de reconocimiento, jump tables, y como el malware ofusca el flujo de control para dificultar el analisis.

06
Intermedio13 min

API Calls de Windows en Ensamblador: Lo que el Malware Ejecuta

Referencia de las APIs de Windows mas usadas por malware vistas desde ensamblador. Operaciones de archivos, memoria, procesos, red y registro. Como leer los parametros en x86 y x64, y como el malware resuelve APIs dinamicamente.

07
Intermedio13 min

Patrones de Malware en Ensamblador: Lo que Debes Reconocer

Catalogo de patrones de ensamblador comunes en malware real: loops de descifrado XOR, hashing de APIs, inyeccion de procesos, anti-debug, evasion de sandbox, strings ofuscadas y tecnicas de persistencia. Con ejemplos de codigo ASM de cada patron.

08
Intermedio13 min

x64 vs x86: Diferencias Clave para Analisis de Malware

Diferencias fundamentales entre x86 y x64 que afectan al analisis de malware: registros extendidos, convencion de llamada Windows x64, RIP-relative addressing, WoW64, y como adaptar el analisis cuando el sample es de 64 bits.

09
Intermedio13 min

ARM Assembly: Fundamentos para Malware Movil e IoT

Guia de arquitectura ARM para analistas de malware. Diferencias con x86, registros, modos de ejecucion, instrucciones Thumb, y como se manifiesta el malware en plataformas moviles Android/iOS y dispositivos IoT.

10
Intermedio12 min

Leer Ensamblador en Ghidra: Del Disassembly al Decompiler

Guia practica para leer y analizar ensamblador en Ghidra. Navegacion por las vistas de desensamblado, uso del decompilador, cross-references, renombrado de funciones y variables, y flujo de trabajo para analisis de malware.

11
Avanzado11 min

IDA Pro: Analisis Avanzado de Ensamblador

Guia avanzada de IDA Pro para analisis de malware. Navegacion de vistas, grafo de funciones, scripts IDAPython, FLIRT signatures, plugins esenciales y tecnicas para desensamblado complejo.

12
Intermedio13 min

Cifrado en Ensamblador: XOR, RC4, AES y Deteccion

Como identificar y analizar algoritmos de cifrado en ensamblador durante el analisis de malware. Patrones de XOR loops, implementacion de RC4, deteccion de AES por S-box, uso de FindCrypt y tecnicas para extraer claves.

13
Intermedio13 min

Ejercicios Practicos: Crackmes y Samples para Aprender ASM

Guia de ejercicios practicos para aprender ensamblador aplicado a malware analysis. Crackmes progresivos, muestras seguras, plataformas de practica y metodologia para desarrollar habilidades de reverse engineering.