
Diploma avanzado in
Educación continua en ciberseguridad: Ingeniería inversa, Bac + 2 Graduate School of Engineering - ESIEA

becas
Introducción
La Ingeniería inversa BADGE (Evaluación de aptitud impartida por las Grandes Écoles) volverá a las nociones elementales relacionadas con las arquitecturas estudiadas durante la formación (x86, x86_64 y ARM principalmente). Los estudiantes se enfocarán en las principales aplicaciones de la ingeniería inversa: malware, protecciones, programas grandes, protocolos indocumentados y criptografía.
Al final de esta formación, los participantes podrán satisfacer todas las necesidades en ingeniería inversa y se han enfrentado a muchos casos prácticos. Entonces comprenderán el comportamiento de cualquier programa, protegido o no, y lo estudiarán en profundidad.
Conocimientos adquiridos al finalizar el BADGE:
Introducción a ASM x86 y ARM: este módulo es un componente básico sobre el que se basarán los proveedores de capacitación. Esto implica ver o revisar los conceptos relacionados con la ingeniería inversa y las particularidades de ASM y ARM. A través de los diferentes ejercicios prácticos, el alumno adquirirá la formación técnica suficiente para abordar las diferentes materias de la formación.
Criptografía: este curso tiene como objetivo introducir los conceptos fundamentales de la criptografía moderna y proporcionar una descripción general de las primitivas presentes en los protocolos criptográficos actuales. Al finalizar la formación, los alumnos dispondrán de los conocimientos y la metodología necesarios para identificar y realizar ingeniería inversa de algoritmos criptográficos.
Ingeniería inversa aplicada a lenguajes orientados a objetos: el análisis de binarios desarrollados en un lenguaje orientado a objetos requiere nociones específicas de este último. Mediante el estudio de las características relacionadas con C ++, esta intervención tiene como objetivo introducir los conceptos y la forma de analizar este ejecutable.
Compilación y ofuscación: este curso le presenta los diferentes pasos del proceso de compilación de un programa y proporciona una descripción general de las técnicas básicas de ofuscación. Estas nociones son útiles para comprender las optimizaciones del compilador e identificar los mecanismos específicos utilizados para contrarrestar el análisis binario.
Móvil inverso: el objetivo de este módulo es presentar los conceptos básicos asociados con la ingeniería inversa en dispositivos móviles. Al final de la formación, los estudiantes analizarán y depurarán aplicaciones IOS y Android. Tendrán un conocimiento general de la mecánica interna de estas dos plataformas.
Herramientas de análisis y marco: las aplicaciones de ingeniería real inversa pueden llevar mucho tiempo y ser tediosas. A veces es necesario desarrollar sus scripts para facilitar su análisis. Este módulo presenta diferentes herramientas como Metasm, Miasm y Triton, que ayudan a revertir al ofrecer un enfoque diferente. Al final de la formación, los estudiantes tendrán una idea de la utilidad de dichas herramientas y podrán utilizarlas de forma eficaz.
Formato de archivo ejecutable: este curso proporciona conocimiento de las estructuras internas de un archivo ejecutable y el proceso de carga de archivos binarios en el sistema operativo.
Al finalizar esta intervención, el alumno podrá estudiar y manipular este tipo de formatos y reconocer las diferentes estructuras que lo componen.
Integrado: la ingeniería inversa no se detiene en la capa de software. Son posibles cada vez más ataques a nivel de hardware. Este módulo tiene como objetivo demostrar, a través de la práctica, una metodología para analizar dispositivos integrados y proporcionar conocimientos básicos en ingeniería inversa de hardware.
Arquitecturas de sistemas operativos: este curso presenta la arquitectura de computadoras, capas físicas, kernel, espacio de usuario y las relaciones entre componentes de software y hardware. Esto implica comprender el funcionamiento interno de una computadora y los mecanismos que le permiten interactuar con un programa (paginación, segmentación, DMA, puntos de interrupción de software y hardware, gestión de fallas, etc.).
Explotación - Esta intervención tiene como objetivo presentar las diferentes clases de vulnerabilidad así como una metodología relacionada con la búsqueda de estas. En este módulo, se invita a los estudiantes a analizar fallas de software y desarrollar códigos de explotación funcionales.
Escaneo de malware: el malware es un binario particular que puede ser complicado de revertir: generalmente viene con muchos mecanismos de protección y su propia naturaleza puede dificultar el escaneo. El objetivo de este curso es enseñarle a estudiar estos programas de manera eficaz. Dado el número cada vez mayor de códigos de este tipo, es imposible examinar todo manualmente. Por lo tanto, revisaremos las herramientas y métodos de clasificación para optimizar los análisis.