Reverse Engineering para todos
(0xinfection.github.io)Introducción
-
Curso de x86
- Parte 1: Objetivo
- Parte 2: Técnicas
- Parte 3: Tipos de malware
- Parte 4: Introducción al ensamblador x86
- Parte 5: Sistema binario
- Parte 6: Sistema hexadecimal
- Parte 7: Transistores y memoria
- Parte 8: Byte, word, double word, etc.
- Parte 9: Arquitectura básica de x86
- Parte 10: Registros de propósito general
- Parte 11: Registros de segmento
- Parte 12: Registro del puntero de instrucciones
- Parte 13: Registros de control
- Parte 14: Banderas
- Parte 15: Stack
- Parte 16: Heap
- Parte 17: Cómo instalar Linux
- Parte 18: Editor de texto vim
- Parte 19: Por qué aprender ensamblador
- Parte 20: Procesamiento de opcodes
- Parte 21: Cómo compilar programas
- Parte 22: Programa ASM 1 [mover datos inmediatos]
- Parte 23: Depuración de ASM 1 [mover datos inmediatos]
- Parte 24: Hacking de ASM 1 [mover datos inmediatos]
- Parte 25: Programa ASM 2 [mover datos entre registros]
- Parte 26: Depuración de ASM 2 [mover datos entre registros]
- Parte 27: Hacking de ASM 2 [mover datos entre registros]
- Parte 28: Programa ASM 3 [mover datos entre memoria y registros]
- Parte 29: Depuración de ASM 3 [mover datos entre memoria y registros]
- Parte 30: Hacking de ASM 3 [mover datos entre memoria y registros]
- Parte 31: Programa ASM 4 [mover datos entre registros y memoria]
- Parte 32: Depuración de ASM 4 [mover datos entre registros y memoria]
- Parte 33: Hacking de ASM 4 [mover datos entre registros y memoria]
- Parte 34: Programa ASM 5 [direccionamiento indirecto mediante registros]
- Parte 35: Depuración de ASM 5 [direccionamiento indirecto mediante registros]
- Parte 36: Hacking de ASM 5 [direccionamiento indirecto mediante registros]
- Parte 37: Programa ASM 6 [instrucción CMOV]
- Parte 38: Depuración de ASM 6 [instrucción CMOV]
- Parte 39: Hacking de ASM 6 [instrucción CMOV]
- Parte 40: Conclusión
-
Curso de ARM-32 1
- Parte 1: El significado de la vida
- Parte 2: Sistema numérico
- Parte 3: Suma binaria
- Parte 4: Resta binaria
- Parte 5: Longitud de palabra
- Parte 6: Registros
- Parte 7: Contador de programa
- Parte 8: CPSR
- Parte 9: Registro de enlace
- Parte 10: Puntero de pila
- Parte 11: Procedimiento de arranque del firmware ARM
- Parte 12: Arquitectura de von Neumann
- Parte 13: Pipeline de instrucciones
- Parte 14: ADD
- Parte 15: Depuración de ADD
- Parte 16: Hacking de ADD
- Parte 17: ADDS
- Parte 18: Depuración de ADDS
- Parte 19: Hacking de ADDS
- Parte 20: ADC
- Parte 21: Depuración de ADC
- Parte 22: Hacking de ADC
- Parte 23: SUB
- Parte 24: Depuración de SUB
- Parte 25: Hacking de SUB
-
Curso de ARM-32 2
- Parte 1: El significado de la vida Parte 2
- Parte 2: Sistema numérico
- Parte 3: Suma binaria
- Parte 4: Resta binaria
- Parte 5: Longitud de palabra
- Parte 6: Registros
- Parte 7: Contador de programa
- Parte 8: CPSR
- Parte 9: Registro de enlace
- Parte 10: Puntero de pila
- Parte 11: Procedimiento de arranque del firmware
- Parte 12: Arquitectura de von Neumann
- Parte 13: Pipeline de instrucciones
- Parte 14: Hola mundo
- Parte 15: Depuración de Hola mundo
- Parte 16: Hacking de Hola mundo
- Parte 17: Constantes
- Parte 18: Depuración de constantes
- Parte 19: Hacking de constantes
- Parte 20: Variable de carácter
- Parte 21: Depuración de variable de carácter
- Parte 22: Hacking de variable de carácter
- Parte 23: Variable booleana
- Parte 24: Depuración de variable booleana
- Parte 25: Hacking de variable booleana
- Parte 26: Variable entera
- Parte 27: Depuración de variable entera
- Parte 28: Hacking de variable entera
- Parte 29: Variable de punto flotante
- Parte 30: Depuración de variable de punto flotante
- Parte 31: Hacking de variable de punto flotante
- Parte 32: Variable double
- Parte 33: Depuración de variable double
- Parte 34: Hacking de variable double
- Parte 35: Operador SizeOf
- Parte 36: Depuración del operador SizeOf
- Parte 37: Hacking del operador SizeOf
- Parte 38: Operador de incremento prefijo
- Parte 39: Depuración del operador de incremento prefijo
- Parte 40: Hacking del operador de incremento prefijo
- Parte 41: Operador de incremento posfijo
- Parte 42: Depuración del operador de incremento posfijo
- Parte 43: Hacking del operador de incremento posfijo
- Parte 44: Operador de decremento prefijo
- Parte 45: Depuración del operador de decremento prefijo
- Parte 46: Hacking del operador de decremento prefijo
- Parte 47: Operador de decremento posfijo
- Parte 48: Depuración del operador de decremento posfijo
- Parte 49: Hacking del operador de decremento posfijo
-
Curso de x64
- Parte 1: Revolución cibernética
- Parte 2: Transistores
- Parte 3: Puertas lógicas
- Parte 4: Sistema numérico
- Parte 5: Suma binaria
- Parte 6: Resta binaria
- Parte 7: Longitud de palabra
- Parte 8: Arquitectura general
- Parte 9: Convención de llamadas
- Parte 10: Instrucciones booleanas
- Parte 11: Punteros
- Parte 12: Carga de dirección efectiva
- Parte 13: Segmento de datos
- Parte 14: Instrucción SHL
- Parte 15: Instrucción SHR
- Parte 16: Instrucción ROL
- Parte 17: Instrucción ROR
- Parte 18: Fundamentos del boot sector [Parte 1]
- Parte 19: Fundamentos del boot sector [Parte 2]
- Parte 20: Fundamentos del boot sector [Parte 3]
- Parte 21: Fundamentos del boot sector [Parte 4]
- Parte 22: Fundamentos del boot sector [Parte 5]
- Parte 23: Fundamentos del boot sector [Parte 6]
- Parte 24: Fundamentos del boot sector [Parte 7]
- Parte 25: Fundamentos del boot sector [Parte 8]
- Parte 26: Fundamentos del boot sector [Parte 9]
- Parte 27: Ensamblador x64 [Parte 1]
- Parte 28: Ensamblador x64 [Parte 2]
- Parte 29: Ensamblador x64 [Parte 3]
- Parte 30: Ensamblador x64 [Parte 4]
- Parte 31: Ensamblador x64 [Parte 5]
- Parte 32: Ensamblador x64 [Parte 6]
- Parte 33: Ensamblador x64 [Parte 7]
- Parte 34: Código x64 C++ 1 [Parte 1]
- Parte 35: Depuración x64 C++ 2 [Parte 2]
- Parte 36: Hacking x64 C++ 3 [Parte 3]
- Parte 37: x64 C y el origen de la vida
- Parte 38: Fundamentos de redes en x64
- Parte 39: ¿Por qué C?
- Parte 40: ¡Hacking de Hola mundo!
- Parte 41: ¡Hacking de variables!
- Parte 42: ¡Hacking de ramas!
- Parte 43: ¡Hacking de punteros!
-
Curso de ARM-64
- Parte 1: El significado de la vida
- Parte 2: Configuración del entorno de desarrollo
- Parte 3: "Hola mundo"
- Parte 4: Depuración de "Hola mundo"
- Parte 5: Hacking de "Hola mundo"
- Parte 6: I/O básico
- Parte 7: Depuración de I/O básico
- Parte 8: Hacking de I/O básico
- Parte 9: Tipo de dato primitivo char
- Parte 10: Depuración del tipo de dato primitivo char
- Parte 11: Hacking del tipo de dato primitivo char
- Parte 12: Tipo de dato primitivo booleano
- Parte 13: Depuración del tipo de dato primitivo booleano
- Parte 14: Hacking del tipo de dato primitivo booleano
- Parte 15: Tipo de dato primitivo de punto flotante
- Parte 16: Depuración del tipo de dato primitivo de punto flotante
- Parte 17: Hacking del tipo de dato primitivo de punto flotante
- Parte 18: Tipo de dato primitivo double
- Parte 19: Depuración del tipo de dato primitivo double
- Parte 20: Hacking del tipo de dato primitivo double
-
Curso de hacking de Pico
- Parte 1: Razones y métodos
- Parte 2: Hola mundo
- Parte 3: Depuración de Hola mundo
- Parte 4: Hacking de Hola mundo
- Parte 5: char
- Parte 6: Depuración de char
- Parte 7: Hacking de char
- Parte 8: int
- Parte 9: Depuración de int
- Parte 10: Hacking de int
- Parte 11: float
- Parte 12: Depuración de float
- Parte 13: Hacking de float
- Parte 14: double
- Parte 15: Depuración de double
- Parte 16: Hacking de double
- Parte 17: "¡El poder absoluto corrompe absolutamente!", la historia trágica de la entrada
- Parte 18: "¡Durante 800 años he entrenado Jedi!", el poder de la entrada
- Parte 19: Entrada
- Parte 20: Depuración de entrada
-
Reverse Engineering For Everyone!
- ¿Qué es la ingeniería inversa?
- Según Wikipedia, la ingeniería inversa es el proceso de desensamblar un objeto artificial para revelar su diseño, arquitectura, código, etc., o extraer conocimiento del objeto. Esto es similar a la investigación científica que estudia fenómenos naturales.
- Este conjunto de tutoriales existe para hacer que la ingeniería inversa sea lo más fácil posible.
- Este conjunto integral de tutoriales de ingeniería inversa cubre las arquitecturas x86, x64, ARM de 32 bits y ARM de 64 bits.
- Ayuda a los principiantes a aprender los conceptos básicos de la ingeniería inversa y también es útil para quienes quieren repasar conceptos.
- Se puede descargar el conjunto completo de tutoriales en formato PDF o MOBI.
- ¿Qué es la ingeniería inversa?
Resumen de GN⁺
- Este artículo cubre varios tutoriales de ingeniería inversa, incluidos cursos de hacking de x86, x64, ARM-32, ARM-64 y Pico.
- Es un recurso útil para quienes desean aprender técnicas de ingeniería inversa desde nivel principiante hasta intermedio.
- Las técnicas de ingeniería inversa son muy importantes en el campo de la ciberseguridad.
- Ofrece los tutoriales en formato PDF y MOBI para mejorar la accesibilidad.
- Proyectos con funciones similares incluyen "Practical Reverse Engineering" y "Reversing: Secrets of Reverse Engineering".
Aún no hay comentarios.