El Máster en Ciberseguridad y Análisis Forense: Creación de Herramientas con Python te prepara para enfrentar los desafíos más críticos del mundo digital actual. Con el auge de las amenazas cibernéticas, la demanda de expertos en ciberseguridad nunca ha sido tan alta. Este programa te equipa con las habilidades necesarias para detectar, analizar y mitigar ataques cibernéticos, utilizando Python como herramienta clave para crear soluciones efectivas. Aprenderás desde conceptos avanzados de ciberseguridad y análisis forense hasta el desarrollo de aplicaciones específicas para hacking y forensic, fortaleciendo tu capacidad para proteger sistemas y datos. El enfoque online del máster te ofrece flexibilidad y acceso a contenidos de vanguardia, permitiéndote estudiar desde cualquier lugar. Al finalizar, estarás preparado para destacar en un sector en constante expansión, convirtiéndote en un profesional altamente valorado y competitivo.
El Máster en Ciberseguridad y Análisis Forense: Creación de Herramientas con Python está diseñado para profesionales del sector tecnológico y titulados en informática o áreas afines. Este máster ofrece un enfoque avanzado en programación con Python, diseño web, y gestión de bases de datos. Es ideal para quienes buscan profundizar en la ciberseguridad y el desarrollo de aplicaciones forenses.
Objetivos
‘- Desarrollar habilidades en la creación de herramientas de hacking usando Python. – Implementar algoritmos básicos de Python para ciberseguridad. – Diseñar interfaces gráficas utilizando Python para análisis forense. – Integrar tecnologías web avanzadas con HTML5 y CSS3. – Aplicar técnicas de programación PHP para desarrollo seguro de sitios web. – Construir bases de datos SQL para gestionar información de manera eficaz. – Utilizar JavaScript para mejorar la interactividad en aplicaciones web.
Salidas Profesionales
‘- Analista de ciberseguridad – Desarrollador de herramientas de seguridad en Python – Consultor en análisis forense digital – Ingeniero de seguridad de redes – Especialista en seguridad de aplicaciones web – Administrador de bases de datos seguras – Auditor de seguridad informática – Investigador de amenazas cibernéticas – Desarrollador de soluciones de hacking ético
Lenguajes utilizados en la web: HTML, CSS y JavaScript
Resoluciones de pantalla y diseño adaptable
Creación y configuración de un sitio web
Sitio local y sitio remoto
Gestión de archivos y carpetas del proyecto
Panel Archivos
Sincronización con servidor remoto
Espacio de trabajo de Dreamweaver
Vistas del documento: Código y Vista en vivo
Edición de código HTML y CSS
Autocompletado, sugerencias y validación
Propiedades del documento
Estructura básica de un documento HTML5
Etiquetas semánticas
Inserción y edición de texto
Listas y elementos estructurales
Enlaces y anclajes
Buenas prácticas en marcado HTML
Formatos de imagen para la web
Inserción de imágenes
Optimización y tamaño de imágenes
Uso de SVG
Accesibilidad en imágenes
Uso adecuado de tablas en HTML
Creación y edición de tablas
Propiedades de filas y celdas
Aplicación de estilos CSS a tablas
Concepto de hojas de estilo en cascada
Creación y vinculación de archivos CSS
Selectores y propiedades básicas
Tipografía web y web fonts
Colores y fondos
Modelo de cajas
Posicionamiento de elementos
Flexbox
Introducción a CSS Grid
Diseño responsive mediante media queries
Principios del diseño adaptable
Estructuras fluidas
Imágenes responsive
Pruebas en distintos dispositivos desde Dreamweaver
Estructura de formularios HTML5
Tipos de campos y atributos
Validación nativa de formularios
Estilos CSS aplicados a formularios
Buenas prácticas de usabilidad
Conceptos básicos de JavaScript
Uso de JavaScript en páginas web
Interacción básica con el DOM
Separación de estructura, estilo y comportamiento
Concepto de plantillas en Dreamweaver
Creación y uso de plantillas
Regiones editables
Biblioteca de elementos
Actualización de páginas basadas en plantillas
Configuración de servidores remotos
FTP y SFTP
Subida y actualización de archivos
Comprobación de vínculos
Mantenimiento básico del sitio web
Introducción
Editor de texto
Navegadores
Introducción HTML
¿Cómo creamos documento HTML?
Características básicas
Textos en HTML
Enlaces
Listas en HTML
Imágenes y objetos
Tablas
Formularios
Estructuras y layout
Otras etiquetas importantes
¿Qué es la Metainformación?
Accesibilidad
Validación
Introducción CSS
Soporte de CSS en navegadores
Especificación oficial
Funcionamiento básico de CSS
¿Cómo incluir CSS en la Web?
Estilo básico
Medios CSS
Comentarios
Sintaxis de la definición
Selectores CSS
Unidades de medida
Colores
Modelo de cajas
Propiedades de las cajas
Margen, relleno, bordes y modelo de cajas
Posicionamiento y visualización
Posicionamiento
Visualización
Introducción a layout
¿Cómo centrar una página horizontalmente?
¿Cómo centrar una página verticalmente?
Estructura y layout
Altura/anchuras máximas y mínimas
Estilos avanzados
Textos en CSS
Enlaces
Imágenes
Listas
Tablas
Formulario
Versión para imprimir
Personalizar el cursor
Hacks y filtros
Prioridad en las declaraciones
Validar CSS
Recomendaciones Generales
Recursos útiles
¿Qué es Firebug?
¿Como se instala?
¿Como usamos Firebug?
¿Qué es HTML5?
¿Cuáles son las mejoras?
Etiquetas Obsoletas
Etiquetas modificadas
Lista de etiquetas HTML5
Atributos eliminados
Otros cambios
Estructura HTML5
Nueva estructuración del body
Otros elementos nuevos de estructuración
Introducción a atributos globales
Nuevos atributos
Introducción a los nuevos eventos.
Elemento bdi
Elemento command
Elemento data
Elementos details
Elemento mark
Elemento meter
Elemento progress
Elemento ruby
Elemento time
Elemento wbr
Nuevos elementos para los Formularios
Cambios en el atributo type (input)
Nuevos atributos para form
Nuevos atributos para fieldset
Nuevos atributos para input
Nuevos atributos para textarea
Introducción a los elementos multimedia
Etiqueta source
Etiqueta track
Elemento video
Elemento audio
Elemento embed
Elemento canvas
Introducción a MathML
Introducción a SVG
Introducción a Drag and Drop
Validador HTML5
Introducción
Unidades, colores y fuentes
Nuevos Selectores y pseudo-clases
Propiedades para la animación
Nuevas propiedades para los fondos
Nuevas propiedades para Bordes
Propiedades de las cajas
Propiedades de las cajas flexibles
Propiedades del color
Propiedades para las Fuentes
Propiedades para los hiperenlaces
Propiedades de las multi-columnas
Propiedades para texto
Propiedad 2D/3D Transform
Propiedades para las transiciones
Propiedades para la interfaz de usuario
Validación CSS3
Introducción
Programación del lado del cliente
Programación del lado del Servidor
¿Qué utilizaremos?
¿Qué necesita saber?
Nuestro primer ejemplo
La etiqueta SCRIPT
Contenido Alternativo
Variables
Tipos de Datos
Operadores
Cuadros de diálogo
Práctica 2
Introducción
Estructuras de decisión
Estructuras lógicas
Estructuras de repetición
Definir funciones
Llamadas a funciones
Ámbito de las variables
Práctica 3
Introducción
La jerarquía de objetos
Propiedades y Eventos
Métodos
Práctica 4
¿Qué es un URL?
El Objeto Location
Redirigir a otra página
El Objeto History
Práctica 5
Introducción
La propiedad Title
Los colores de la página
El método write
El conjunto images
Práctica 6
Formularios HTML
El conjunto forms
La propiedad elements
Validar la información
¿Cuándo realizar la validación?
Tipos de Validación
Práctica 7
El conjunto frames
El objeto navigator
El objeto screen
Práctica 8
MÓDULO 2. PHP
Introducción
Obtener el paquete XAMPP
Instalar el paquete XAMPP
Apache y MySQL como servicios
La directiva register_globals
Práctica 9
¿Cómo funcionan las páginas PHP?
Crear un alias en apache
La página principal
Práctica 10
Las etiquetas PHP
Variables
Tipos de datos
Constantes
Práctica 11
Arrays
Estructuras de repetición
Estructuras de decisión
Combinar estructuras
Arrays Asociativos
El bucle foreach
Arrays Multidimensionales
Práctica 12a
Práctica 12b
Introducción
Crear Funciones
Llamar a una función
Paso de parámetros
Parámetros por defecto
Práctica 13
Ámbito de las variables
Variables estáticas
Uso de include y require
Incluir solo una vez
Seguridad de los archivos incluidos
Práctica 14
Introducción
Clases
Propiedades
Métodos
Visibilidad
Crear Objetos
Destructores
Práctica 15a
Práctica 15b
Presentación
Crear subclases
Crear objetos de las subclases
Sobrescribir métodos
El acceso protected
Práctica 16
Introducción
El array $_GET
El array $_POST
Recogerlos en una página distinta
Recogerlos en la misma página
Entradas requeridas
Práctica 17a
Práctica 17b
Expresiones regulares
Limpiando la información
Comprobando el formulario de origen
Práctica 18
Introducción
Crear cookies
Caducidad de la cookies
Dependencia del navegador
Características de los cookies
¿Qué es una sesión?
El array $_SESSION
La función od_start() y od_clean()
Finalizar la sesión
El identificador de la sesiones
¿Dónde se almacena la información?
Práctica 19a
Práctica 19b
Introducción
Crear el archivo
Escribir en el archivo
Leer de un archivo
Práctica 20
Errores
Excepciones
Práctica 21a
Práctica 21b
MySql
Contraseña para el root
Extensión mysqli
PHPMyAdmin
Administración de usuarios
Práctica 22
Tipos de tablas en MySQL
Crear tablas
Relaciones uno a muchos
Relaciones muchos a muchos
SQL
Acceder a la base de datos
Establecer la conexión
Mostrar los datos en una tabla
Cerrar la conexión
Práctica 23a
Práctica 23b
Práctica 23c
Ordenar el resultado
Dividir el resultado en páginas
Consultas preparadas
Práctica 24
La página de login
La página de registro
Asegurar la confidencialidad
Práctica 25
Introducción
Modificar listaproductos.php
La página comprar.php
Identificar al cliente
La página carritocompra.php
Confirmar el pedido
La página de desconexión
Migrar el carrito de la compra
Práctica 26a
Práctica 26b
Introducción
¿Qué vamos a hacer?
Construir la estructura HTML
Introducción
Tipos de Formas de Pago
Contrareembolso
Transferencia Bancaria
Domiciliación Bancaria
Tarjetas Bancarias
Tarjetas de Comercio
Paypal
¿Qué Formas de Pago Utilizaremos?
Modificando la Interfaz de Nuestra Tienda
Modificando nuestra base de datos
Modificando el Código Anterior
Implementando el Contrareembolso
Implementando la transferencia
Implementando el Paypal
Introducción de Python avanzado
Comandos en Python
Métodosy funcionamiento para Python
Orden en Python
Uso de conjuntos en Python
Como crear un módulo para Python
Como crear variables con Path de Python
Uso de paquetes con Python
Unir MySQL en Python
Añadir datos en una base de datos MySQL con Python
Como leer datos de una base de datos MySQL con Python
Borrar datos MySQL
SQLite con Python
Insertar, leer y borrar datos en SQLite
wxPython con interfaz gráficas
Crear una ventana para una app Python
Estilo de una interfaz gráfica tamaño y utilización
Posición de una ventana y posición del menú en Python
Ventana de login en Python
urllib2 y BeautifulSoup en Python
Práctica de lectura en Python
Zen de Python y conclusiones de Python
Introducción a Python
Características y aplicaciones
Instalación de Python
Configuración de un entorno de desarrollo
Principios de escritura clara y mantenible
Estándares de estilo definidos por PEP 8 y PEP 257
Uso de anotaciones de tipo y documentación con PEP 484
Prácticas recomendadas de indentación, nombres y organización de archivos
Herramientas de análisis estático: flake8, black, pylint, mypy
Gestión de errores y depuración con técnicas modernas
Sintaxis básica de Python
Variables y tipos de datos
Operadores y expresiones
Uso de comentarios
Introducción al control de flujo
Estructuras condicionales (if, elif, else)
Bucles (for y while)
Control de bucles (break y continue)
Listas y tuplas
Conjuntos: colecciones únicas
Diccionarios: pares clave-valor
Pilas: concepto y operaciones
Colas: implementación y uso
Definición y llamada de funciones
Parámetros y argumentos
Retorno de valores
Ámbito de las variables
Módulos y organización del código
Principios de la orientación a objetos y su implementación en Python
Creación y uso de clases, métodos y atributos
Herencia, polimorfismo y encapsulamiento
Métodos mágicos y sobrecarga de operadores
Clases abstractas, metaclases y dataclasses
Aplicación de principios SOLID en proyectos Python
Introducción a ficheros
Lectura y escritura de archivos
Manejo de rutas de archivos
Entrada y salida estándar
Formateo de texto
Creación de scripts automatizados con Python
Interacción con el sistema operativo mediante os, sys y shutil
Ejecución de comandos externos con subprocess
Manipulación de archivos comprimidos y logs
Automatización de tareas con argparse, click y cron jobs
Integración con APIs y servicios externos para tareas repetitivas
Introducción a interfaces gráficas
Configuración de Tkinter
Creación de widgets y ventanas
Manejo de eventos y callbacks
Introducción a bases de datos SQLite
Creación y conexión a bases de datos
Consultas SQL básicas
Inserción, actualización y eliminación de datos
Importancia del testing y la documentación
Uso de pruebas unitarias
Documentación de código con docstrings
Generación de documentación automática
Hacking ético
Tipos de hacking ético
Perfil del hacker ético
Selección del sistema operativo adecuado
Python para hacking
Hacking ético
Tipos de hacking ético
Perfil del hacker ético
Selección del sistema operativo adecuado
Python para hacking
Variables y tipos de datos
Sintaxis y estructuras de control en Python
Funciones en Python
Cambio de MAC con Python
¿Qué son las redes?
Herramientas de escaneo de red populares
Scapy
Escaneo de puertos
Envío de paquetes personalizados
Trazar una ruta (traceroute)
Suplantación de identidad
Protección contra la suplantación de identidad
Propósito del ARP en las redes
Spoofer ARP
Tipos de paquetes
Definición de rastreador de paquetes
Crear un rastreador de paquetes en Python
Wireshark
Sistema de nombres de dominio (DNS)
Suplantación de DNS
Cómo programar en Python
Métodos de detección
Definición de interceptores de archivos
Técnicas de interceptación de archivos
Captura de archivos en memoria
Informe forense
¿Qué es un inyector de código?
Técnicas de inyección de código
Peligros y consideraciones de seguridad
Inyector de código en Python
HTTPS
Razones para omitir HTTPS
Requests
Cómo omitir HTTPS en Python
Ventajas e inconvenientes de las baes de datos
Conceptos generales
El modelo entidad-relación
El modelo entidad-relación extendido
Restricciones de integridad
Estructura del modelo relacional
Claves en el modelo relacional
Restricciones de integridad
Teoría de la normalización
Diseño de una base de datos relacional
Tipos de lenguajes relacionales
Caracterísiticas de SQL
Sistemas de Gestión de Bases de Datos con soporte SQL
Sintaxis en SQL
Especificación de restricciones de integridad
Caracterísiticas de MySQL
Tipos de datos
Sisntaxis SQL para MySQL
Posibles fallos en una base de datos
Elementos de recuperación
Tipos de soporte
RAID
Servidores remotos de salvaguarda de datos
Diseño de un plan de salvaguarda y protocolo de recuperación de datos
Tipos de salvaguardas de datos
RTO (Recovery Time Objective) y RPO (Recovery Point Objective)
Mecanismos de verificación de la integridad de las copias de seguridad
Definición de SGBD distribuido. Principales ventajas y desventajas
Características esperadas en un SGBD distribuido
Clasificación de los SGBD distribuidos
Enumeración y explicación de las reglas de DATE para SGBD distribuidos
Replicación de la información en bases de datos distribuidas
Procesamiento de consultas
Descomposición de consultas y localización de datos
Conceptos de seguridad de los datos: confidencialidad, integridad y disponibilidad
Normativa legal vigente sobre datos
Supuestos prácticos
Herramientas para importar y exportar datos
Clasificación de las herramientas
Ejemplo de ejecución de una exportación e importación de datos
Migración de datos entre diferentes SGBD
Inconvenientes al traspasar datos entre distintos SGBD
Titulación
Doble Titulación: – Titulación de Máster en Ciberseguridad y Análisis Forense: Creación de Herramientas con Python con 1500 horas expedida por EDUCA BUSINESS SCHOOL como Escuela de Negocios Acreditada para la Impartición de Formación Superior de Postgrado, con Validez Profesional a Nivel Internacional – Titulación Universitaria de Curso Universitario en Creación y Gestión de Base de Datos SQL con 200 horas y 8 ECTS expedida por UTAMED – Universidad Tecnológica Atlántico Mediterráneo.