Educación continua en ciberseguridad: Ingeniería inversa, Bac + 2
Graduate School of Engineering - ESIEA
Información clave
Seleccionar ubicación
ubicación del campus
Laval, Francia
Idiomas
Francés
formato de estudio
En el campus
Duración
Solicitar información
Ritmo
Tiempo completo
Tasas de matrícula
Solicitar información
Plazo de solicitud
Solicitar información
Fecha de inicio más temprana
Sep 2023
becas
Explore oportunidades de becas para ayudar a financiar sus estudios
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.