Módulo 0. Entorno web, Servidor Apache, lenguajes de implementación y bases de datos
- 1. Teoría, Instalación y configuración de servidores Web (Apache)
- 1.1. Funcionamiento de Servidores Web
- 1.2. Arquitectura de Servidores Web
- 1.3. Tipos de Servidores Web
- 1.4. Seguridad y autentificación
- 1.5. Instalación y Configuración Servidor Web
- 1.5.1. Servidor HTTP Apache (Xampp)
- 1.5.2. Configuración del Servidor Web Apache
- 1.5.2.1. Directivas de Funcionamiento
- 1.5.2.2. Parámetros de Gestión de recursos
- 5.2.3. Directivas VirtualHost y NameVirtualHost
- 1.5.2.4. Directivas de Seguridad
- 1.5.3. Internet Informatión Services (IIS)
- 2. HTML
- 2.1. Hiperenlaces
- 2.2. Imágenes
- 2.3. Tablas
- 2.4. Formularios
- 2.5. Flash
- 2.6. Capas (DIV)
- 2.7. Lenguajes de Script
- 2.8. XML
- 2.9. HTML dinámico
- 3. Programación Web
- 4. BD MySQL
- 4.1. ¿Qué es una BD.?
- 4.2. Objetos de la BD
- 4.3. Definiciones y Conceptos de BD
- 4.4. Cliente MySQL (sqlyog)
- 4.5. Creación de BD, Tablas y campos
- 5. Lenguaje SQL
- 5.1. Introducción
- 5.2. Claúsulas
- 5.3. Operadores Lógicos
- 5.4. Operadores de comparación
- 5.5. Funciones de Agregado
- 5.6. Consultas de Selección
- 5.7. Criterios de Selección
- 5.8. Agrupamiento de Registros
- 5.9. Consultas de Acción
- 5.10. Consultas de Unión Internas
- 5.11. Consultas de Unión Externas
- 6. Php (introducción y acceso a bases de datos mediante SQL)
- 6.1. Introducción y conceptos básicos de programación.
- 6.1.1. ¿Qué es un programa?
- 6.1.2. Tipos de datos
- 6.1.3. Variables
- 6.1.4. Constantes
- 6.1.5. Estructuras de Control
- 6.1.5.1. Estructura Condicional
- 6.1.5.2. Estructura Condicional Múltiple
- 6.1.5.3. Estructura de Repetición (Bucles)
- 6.1.5.4. Estructuras Anidadas
- 6.2. Lenguaje PHP
- 6.2.1. Bases de la sintaxis
- 6.2.2. Tipos de Datos
- 6.2.3. Variables
- 6.2.4. Constantes
- 6.2.5. Estructuras de Control Condicional
- 6.2.5.1. IF ELSE
- 6.2.5.2. SWITCH
- 6.2.6. Estructuras de Repetición (Bucles)
- 6.2.6.1. WHILE
- 6.2.6.2. DO WHILE
- 6.2.6.3. FOR
- 6.2.7. Funciones
- 6.3. Acceso a bases de datos
- 6.3.1. Conexión a BD
- 6.3.2. Funciones de PHP y MYSQL
- 6.4. Ejemplos HTML + PHP + SQL
La duración de este módulo es de 1 (un) mes y tiene la opción de acreditarse mediante la presentación de un examen.
Módulo 1. Introducción Hacking Ético
- Introducción
- Definiciones y términos
- Adopción de pautas de seguridad informática
- Ataques y contramedidas en sistemas personales y servidores
- Seguridad en la red corporativa + Servidores de Acceso remoto
Módulo 2. Hacking Web
- Presentación general, Introducción y demostraciones reales
- Detección y explotación de vulnerabilidades Web (Protocolo HTTP, XSS,CSRF, RFI, LFI, LFD, Path transversal, SQL Injection, etc.)
- Software para evaluación y explotación de vulnerabilidades Web
- Metodología
- Práctica final. Encontrar vulnerabilidades en aplicaciones web de un entorno controlado y explotarlas.
Módulo 3. Hacking a nivel de red
1. Introducción al hacking a nivel de red
- Definiciones y términos
- Tipos
- Limitaciones
- Informes
2. Reconocimiento
- Pasivo
- Activo
- Técnicas
- Herramientas
3. Escaneo
- Introducción
- Trazas de Red
- Escaneo de Puertos
- Detección de servicios y sistemas
- Generación de Paquetes
- Escaneo de Vulenrabilidades
- Herramientas
4. Explotación
- Introducción
- Categorías
- Framework Explotación
- Herramientas
- Post- Explotación
5. Práctica final. Encontrar vulnerabilidades en servicios de un entorno controlado y explotarlas
Módulo 4. Desarrollo de exploits y búsqueda de vulnerabilidades en software
- Lenguaje Ensamblador
- Manejo de debuggers
- Buffer overflows
- SEH overflows
- Desarrollo de distintos tipos de exploits
- Soluciones a problemas en el desarrollo de exploits
- Teoría
- Fuzzing de Teoría
- Fuzzing de protocolos
- Fuzzing de file format
- Práctica final. Encontrar vulnerabilidades en una aplicación y desarrollar el exploit
Módulo 5. Análisis de vulnerabilidades en dispositivos móviles
- Introducción
- Infraestructura
- Desempaquetado de la aplicación
- Análisis Estático
- Técnicas y Herramientas
- Análisis Dinámico
- Técnicas y Herramientas
- Práctica final. Analizar aplicación Android
Módulo 6. Reversing malware
- Introducción
- Análisis Estático
- Técnicas y Herramientas
- Análisis Dinámico
- Técnicas y Herramientas
- Funcionalidades Malware
- Anti Ingeniería Inversa
- Práctica final. Crear Prueba de concepto de Málware. Analizar Prueba de concepto Malware desarrollada
Módulo 7. Redes Inhalámbricas
- Introducción
- Descubrimiento y esnifado de Redes
- Crypto-ataques
- Ataques a Cliente
Módulo 8. Legislación y normas sobre seguridad
- Legislación Nacional
- Legalidad vigente e implicación en las implantaciones tecnológicas
- Legislación Europea