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
Objetivo del curso: Dreamweaver es uno de los programas más potentes para la creación de páginas Web.
Dirigido a: Diseñadores gráficos o Web que desean aprender a crear páginas Web
¿Que es un dominio de un sitio Web?
¿Qué es un servidor Web? Clases de Alojamiento Web: Alojamiento Web gratis, Alojamiento compartido, Housing o colocation
Resolución de pantalla y sus diferentes tamaños: Absoluto y relativo
Lenguaje HTML: el lenguaje con el que se escriben las páginas Web
Diferentes tipografías y colores en la Web
Prácticas
Sitios en Dreamweaver, Presenta los pasos a seguir para crear y configurar un sitio Web en el programa Macromedia Dreamweaver. Explica las diferencias entre el sitio local y sitio remoto, cómo organizarlos para albergar el contenido creado y las distintas formas de ver los archivos en el sitio local
Configurar un sitio Web
Administrar y editar sitios Web
Crear y abrir documentos: Creación de una página en blanco, Creación de una plantilla en blanco, Creación de una página basada en un archivo de muestra de Dreamweaver CC, Cómo abrir y editar documentos existentes
Espacio de trabajo de Dreamweaver CC
Vistas del documento: Código, Código dividida, Diseño, en vivo
Propiedades de la página: CSS, HTML
Prácticas
Insertar Texto: Se indica cómo introducir texto en las páginas Web a través del programa Macromedia Dreamweaver CC. Se estudia el formato del texto (fuente, tamaño, color, alineación, sangría,...), los estilos CSS, la posibilidad de crear listas (numeradas, no numeradas o de definición) e incluso la revisión de la ortografía. Finalmente, también se describe la utilización de otros objetos en las páginas, como reglas horizontales, comentarios y la fecha de la última modificación de la página
Importar documentos de Microsoft Word
Propiedades del texto: Propiedades HTML, Propiedades CSS
Creación de listas: Creación de una lista nueva, de una lista usando texto existente, de una lista anidada. Configuración de las propiedades de toda una lista
Caracteres especiales en HTML
Corregir y sustituir texto, revisión ortográfica, búsqueda y sustitución de texto
Crear un estilo CSS y definición
Web fonts: La tipografía es una parte esencial del diseño de páginas Web
Prácticas
Introducción: Explica cómo insertar hipervínculos en las páginas Web a través del programa Macromedia Dreamweaver: vínculos a un lugar determinado de una página (a través de un anclaje con nombre), vínculos a otras páginas (del mismo sitio o a cualquier página de Internet) y vínculos en un menú de salto. Se indican las diferencias entre rutas absolutas y relativas, así como la administración y modificación de hipervínculos en Dreamweaver. Por último, se describe el uso de comportamientos en las páginas, para ejecutar comandos en respuesta a determinados sucesos o eventos
Crear un enlace: Rutas absolutas y relativas al documento. Rutas relativas a la raíz del sitio
Vínculo a un correo: Creación de un vínculo de correo electrónico utilizando el comando Insertar vínculo de correo electrónico, creación de un vínculo de correo electrónico mediante el inspector de propiedades.
Menú de salto
Widget de barra de menús: Adición de un elemento de menú principal, Adición de un elemento de submenú, Eliminación de un elemento de menú principal o submenú
Comprobar vínculos: Comprobación de vínculos del documento actual, Comprobación de vínculos en una parte de un sitio local, Comprobación de los vínculos de todo el sitio, Reparación de los vínculos en el panel Verificador de vínculos
Estilos en vínculos: Link, Visited, Active
Prácticas
Insertar una imagen: se describe el modo de incorporar imágenes en las páginas Web a través del programa Macromedia Dreamweaver. Se presentan los formatos gráficos que se pueden utilizar en una página Web y sus diferencias, así como la creación de imágenes de sustitución, mapas de imagen y barras de navegación
Propiedades de la imagen: El inspector de propiedades
Alinear y redimensionar una imagen
Rollover: una imagen al visualizarse en un navegador cambia
Mapas de imagen
Marcadores de posición
Objetos Inteligentes
Prácticas
Tablas: Explica la forma de distribuir o colocar los elementos en las páginas Web con el programa Macromedia Dreamweaver: la utilización de capas, tablas y la utilización del modo de diseño, asignación del formato, incluir el contenido, etc
Insertar tablas
Selección de elementos de la tabla
Propiedades de la tabla: inspector de propiedades
Propiedades de las celdas
Tamaño de tablas: Cambio del tamaño de tablas, columnas y filas
Copiar, pegar, combinar y anidar tablas
Formato CSS de tablas
Prácticas
Las capas: Explica que las capas por lo general se definen con las etiquetas div y span y pueden contener cualquier objeto, por ejemplo un formulario, un fragmento de texto o un plug-in
Posiciones de las cajas: Estática, Relativa, absoluta y fija
Insertar capas
Propiedades de las capas: inspector de propiedades
Panel Diseñador de CSS
Capas prediseñadas
Comportamientos: código JavaScript
Aplicar un comportamiento
Prácticas
Hojas de estilo: Reglas CSS. Explica que las hojas de estilos en cascada (CSS) son un conjunto de reglas de formato que determinan el aspecto del contenido de una página Web. La utilización de estilos CSS para aplicar formato a una página permite separar el contenido de la presentación
Panel estilos: permite supervisar las reglas y propiedades CSS que afectan al elemento de página seleccionado
Crear y adjuntar hojas de estilo
Propiedades de tipo: definición de la configuración básica de la fuente
Propiedades de fondo
Propiedades de bloque
Propiedades del cuadro
Propiedades del borde
Definir consulta de Medios
Definir selectores
Definir propiedades
Prácticas
Propiedades lista: Aprenderemos más reglas css para una Web atractiva
Propiedades de posición
Propiedades de extensiones
Transiciones
Trabajar con Hojas de estilo
Aplicar varias clases estilos
Hojas de estilos de muestra de Dreamweaver
Diseño de páginas con CSS
Prácticas
Incluir archivos swf: Presenta elementos multimedia dinámicos que podemos insertar en las páginas Web a través del programa Macromedia Dreamweaver: animaciones de Flash, vídeos de Flash, botones y textos Flash. También se describen varias posibilidades de trabajo conjunto entre Dreamweaver y Fireworks, como la creación de un álbum de fotos Web o la inserción de HTML procedente de Fireworks en una página Web diseñada con Dreamweaver
Elementos multimedia y jQuery
Insertar archivos FLV
Insertar sonido: Formatos de Audio, Incrustación de un archivo de sonido, Incrustación de un archivo de video
Inserción de un widget de jQuery UI
Widget de acordeón: Personalización del widget de acordeón
Widget de Autocompletar
Prácticas
Plantillas: Tipos de regiones de plantillas. Aprenderemos que una plantilla es un tipo especial de documento que sirve para crear un diseño de página fijo, es muy útil
Creación de plantillas: Creación de una plantilla a partir de un documento existente, Utilización del panel Activos para crear una plantilla nueva
Crear regiones editables
Crear regiones repetidas: Inserción de una tabla repetida
Regiones opcionales de una plantilla: Inserción de una región opcional no editable, Inserción de una región opcional editable
Basar páginas en una plantilla
Edición y actualización de plantillas
Panel activos: Adición de un activo a un documento
Biblioteca: Creación de un elemento de biblioteca basado en una selección, Creación de un elemento de biblioteca vacío, Actualizar documento
Prácticas
Formularios: Describe lo que son, cómo se crean y cómo se configuran los formularios en Macromedia Dreamweaver, para que el visitante del sitio Web envíe información al servidor Web. Se explica el trabajo con los distintos campos que se pueden crear, viendo para qué se usa cada uno y sus propiedades
Creación de un formulario HTML: Objetos de formulario
Propiedades de objetos I
Propiedades de objetos II
Validar un formulario con JavaScript
Sitios remotos
Panel archivos: sitio local y remoto
Prácticas
Diseño de cuadrícula fluida: Nos permite crear un diseño que se adaptará la pantalla del dispositivo que se utilice para visualizarlo, sea este un móvil, una tablet o la pantalla de un ordenador
Sincronizar FTP
FTP Multicanal
jQuery Mobile
Temas
Panel muestras
Agregar Contenidos
Prácticas
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.