Prepárate para convertirte en un verdadero detective del código, explorando las entrañas de los programas y descubriendo cómo funcionan realmente. Este taller está diseñado para aquellos que recién empiezan y tienen ganas de aprender y descubrir lo que nos susurran los programas.
¡No te pierdas esta oportunidad de adentrarte en el mundo de la ingeniería inversa de la manera más práctica y divertida posible! ¡Nos vemos en Albacete, listos para darle la vuelta al código!
Contenidos del Taller:
• Historia de la computación: Un recorrido por la evolución de las arquitecturas y la importancia de la ingeniería inversa en este contexto.
• Objetivos del taller: Definir los conocimientos que los participantes adquirirán y el enfoque práctico del curso.
• Proceso de Ingeniería del software: Comprensión de las fases del desarrollo de software y cómo esto se relaciona con la ingeniería inversa.
• Proceso de Ingería inversa del software
• Ingeniería Inversa:
◦ Requisitos y Motivaciones
◦ Aprendizaje con ejemplos de binarios no nativos (Ej1, Ej2, Ej3)
◦ Aprendizaje con ejemplos de binarios nativos
▪ Arquitectura de procesadores x86, x64:
• Registros de la CPU: Propósito general y especializado
• El Modo Protegido: Conceptos de segmentación, paginación, memoria virtual y Anillos de privilegio.
• Juego de instrucciones
• La Pila: Gestión del Stack y Stack Frames.
▪ SO Windows:
• PE COFF: Formato de archivos ejecutables en Windows
▪ Compiladores:
• Calling Convection: Convenciones de llamada y su uso
▪ Puntos de interrupción (BPS, BPH, BPM y BPC)
▪ Ej.4
▪ Reto final: Análisis, modificación y generación de claves para la activación del juego Naja Negra.
Metodología:
El taller combinará sesiones teóricas con prácticas intensivas, donde cada participante podrá aplicar los conceptos aprendidos en ejemplos reales y ejercicios cuidadosamente diseñados para consolidar los conocimientos adquiridos. Se fomentará un ambiente de colaboración activa, en el que los asistentes puedan intercambiar ideas, compartir experiencias y aprender unos de otros. El objetivo es no solo entender los fundamentos, sino también experimentar de primera mano el proceso de ingeniería inversa.
Dirigido a:
Este taller está diseñado para profesionales de la ciberseguridad, desarrolladores de software y cualquier persona sin experiencia previa que quiera iniciarse en el fascinante mundo de la ingeniería inversa de software en sistemas Windows bajo arquitecturas x86 y x64. El enfoque no será cubrir una gran cantidad de temas, sino profundizar en los conceptos clave y esenciales, asegurando que cada participante adquiera una base sólida que le inspire a seguir explorando y aprendiendo por su cuenta. Con puntos bien comprendidos, sentaremos las bases para que cada uno continúe su propio camino en este apasionante campo.
Requisitos Previos:
• Conocimientos básicos de programación y sistemas operativos.
• Familiaridad con conceptos básicos de seguridad informática.
Materiales Incluidos:
• Acceso a software y herramientas utilizadas durante el taller.
• Documentación y guías de referencia.
• Certificado de participación
octubre 4 @ 16:00
16:00
– 20:00
(4h)
Sala SIA
Carlos Ramos Mellado