Te lo puedo desarrollar en un formato más detallado, con objetivos claros y pasos prácticos, para que este plan de prácticas te sirva como una hoja de ruta paso a paso y no solo como un enunciado.
Plan de prácticas propuesto
Relacionado: Herramientas. 2025 02 20 Seguridad iOS memoria permisos y sandboxing. Acceso y analisis de memoria en Linux y Windows. Forense de memoria de sistema completo. Paradigma Concurrente Memoria Comun.
El objetivo es progresar desde interacciones controladas en modo usuario, pasando por depuración en vivo, hasta análisis forense offline y observabilidad con eBPF. Esto te permitirá reconocer un mismo artefacto (variable, buffer, mutex, etc.) en distintos niveles de acceso y con distintas herramientas.
Fase 1 – Acceso coordinado vía API
Objetivo: entender cómo leer/escribir memoria de otro proceso usando únicamente APIs documentadas.
-
Crea un programa target que contenga un buffer conocido (ej. un array con texto o números) y se mantenga en ejecución imprimiendo su PID.
-
Crea un programa inspector que:
-
Obtenga un
HANDLE(Windows) ofd/pid(Linux). -
Lea la memoria del target con
ReadProcessMemory(Windows) o/proc/<pid>/mem(Linux, con permisos).
-
-
Verifica que el valor leído desde el inspector coincide con el que imprime el target.
Fase 2 – Depuración en vivo
Objetivo: inspeccionar y modificar memoria en tiempo real.
-
Abre el target en un depurador (
WinDbgogdb). -
Detén la ejecución y localiza la variable/buffer (puedes usar el símbolo o dirección impresa).
-
Muestra el contenido (
dpsen WinDbg,x/en gdb). -
Modifica el valor desde el depurador y continúa la ejecución.
-
Observa que el cambio se refleja en el programa en ejecución.
Fase 3 – Análisis de minidump
Objetivo: confirmar que la información es consistente en un volcado parcial.
-
Genera un minidump del target:
-
Windows:
MiniDumpWriteDumpo Create Dump File en Task Manager. -
Linux: usa
gcorepara crear un core dump.
-
-
Ábrelo en WinDbg (Windows) o
gdb(Linux). -
Localiza la variable/buffer y verifica que su contenido coincide con el estado observado en vivo.
-
Documenta offsets y direcciones relativas para uso posterior.
Fase 4 – Análisis forense offline
Objetivo: localizar estructuras conocidas en un volcado completo.
-
Genera un volcado de toda la RAM de la VM:
-
Linux:
avmlo LiME. -
Windows: WinPMEM.
-
-
Abre el volcado en Volatility/Volatility3.
-
Localiza el proceso target (
pslist/linux.pslist). -
Examina regiones de memoria asignadas (
vadinfoen Windows,linux_proc_mapsen Linux). -
Busca el contenido del buffer/variable con
stringsoyarascan. -
Confirma que coincide con lo visto en fases anteriores.
Fase 5 – Observabilidad con eBPF
Objetivo: ver la actividad de memoria y E/S en vivo desde el kernel sin escribir drivers.
-
Instala
bccobpftraceen la VM Linux. -
Usa scripts predefinidos:
-
execsnoop→ para ver ejecuciones de procesos. -
opensnoop→ para ver apertura de archivos. -
sys_enter_readysys_exit_read→ para interceptar lecturas de memoria/E/S.
-
-
Ejecuta el target y el inspector.
-
Observa las llamadas al sistema que se generan y mapea esas syscalls con las operaciones vistas en vivo y en los volcados.
Resultado esperado
Al final de este plan:
-
Podrás seguir un mismo artefacto desde que se crea en un programa hasta que lo ves en un volcado forense.
-
Entenderás cómo API, depurador, minidump, volcado completo y eBPF se complementan para dar distintas perspectivas de la misma información.
-
Tendrás claro qué limitaciones y protecciones pueden alterar los resultados (ASLR, permisos, etc.).
Si quieres, puedo prepararte este mismo plan en un formato de checklist imprimible, con comandos exactos y huecos para anotar resultados, para que lo uses como guía en tu laboratorio.
¿Quieres que lo arme así?