Download Postgrado en Desarrollo de Aplicaciones con Python Especialidad

Document related concepts
no text concepts found
Transcript
Postgrado en Desarrollo de Aplicaciones con
Python Especialidad en Hacking & Forensic
titulación de formación continua bonificada expedida por el instituto europeo de estudios
empresariales
Postgrado en Desarrollo de Aplicaciones con Python Especialidad en Hacking & Forensic
Postgrado en Desarrollo de Aplicaciones con
Python Especialidad en Hacking & Forensic
duración total: 360 horas
horas teleformación:
180 horas
precio: 0 € *
modalidad:
Online
* hasta 100 % bonificable para trabajadores.
descripción
Debemos saber que Python es un lenguaje de programación interpretado, de propósito general y de
alto nivel, que en los últimos años ha experimentado un gran auge, gracias a que es fácil de
aprender, puede ejecutarse en diferentes sistemas operativos, y además, permite desarrollar
aplicaciones rápidamente sin renunciar a un código legible y fácil de mantener. Gracias a la
realización de este Postgrado en Desarrollo de Aplicaciones con Python Especialidad en Hacking &
Forensic conocerá los conceptos básicos sobre Python, además de aprender las técnicas de diseño
de herramientas para Hacking y análisis forense.
www.formacioncontinua.eu
información y matrículas: 958 050 240
fax: 958 050 245
Postgrado en Desarrollo de Aplicaciones con Python Especialidad en Hacking & Forensic
a quién va dirigido
Todos aquellos trabajadores y profesionales en activo que deseen adquirir o perfeccionar sus
conocimientos técnicos en este área.
objetivos
- Conocer y dominar el lenguaje de programación Python 3.
- Aprender las capacidades de Python 3 para responder a las necesidades de las empresas sea cual
sea el dominio de la informática en que se trabaje.
- Profundizar sobre los fundamentos del lenguaje: las distintas nociones se presentan de manera
progresiva, con ejemplos de código que ilustran cada apartado.
- Resolver problemáticas de negocio concretas y, por tanto, explica cómo utilizar todos los
complementos de Python 3 (protocolos, servidores, imágenes,…).
- Realizar una programación de red con Scapy.
- Conocer los puntos de parada (breakpoints).
- Analizar los puntos de acceso inalámbrico en base al registro.
para qué te prepara
Este Postgrado en Desarrollo de Aplicaciones con Python Especialidad en Hacking & Forensic le
prepara para conocer y dominar este lenguaje, muy extendido, especializándose en el diseño de
herramientas para el hacking y el análisis forense.
salidas laborales
Programación / Informática / Experto en Python / Hacking / Análisis forense.
www.formacioncontinua.eu
información y matrículas: 958 050 240
fax: 958 050 245
Postgrado en Desarrollo de Aplicaciones con Python Especialidad en Hacking & Forensic
titulación
Una vez finalizado el curso, el alumno recibirá por parte de INESEM vía correo postal, la Titulación
Oficial que acredita el haber superado con éxito todas las pruebas de conocimientos propuestas en
el mismo.
Esta titulación incluirá el nombre del curso/máster, la duración del mismo, el nombre y DNI del
alumno, el nivel de aprovechamiento que acredita que el alumno superó las pruebas propuestas, las
firmas del profesor y Director del centro, y los sellos de la instituciones que avalan la formación
recibida (Instituto Europeo de Estudios Empresariales).
forma de bonificación
- Mediante descuento directo en el TC1, a cargo de los seguros sociales que la empresa paga cada
mes a la Seguridad Social.
www.formacioncontinua.eu
información y matrículas: 958 050 240
fax: 958 050 245
Postgrado en Desarrollo de Aplicaciones con Python Especialidad en Hacking & Forensic
metodología
El alumno comienza su andadura en INESEM a través del Campus Virtual. Con nuestra
metodología de aprendizaje online, el alumno debe avanzar a lo largo de las unidades didácticas del
itinerario formativo, así como realizar las actividades y autoevaluaciones correspondientes. Al final
del itinerario, el alumno se encontrará con el examen final, debiendo contestar correctamente un
mínimo del 75% de las cuestiones planteadas para poder obtener el título.
Nuestro equipo docente y un tutor especializado harán un seguimiento exhaustivo, evaluando
todos los progresos del alumno así como estableciendo una línea abierta para la resolución de
consultas.
El alumno dispone de un espacio donde gestionar todos sus trámites administrativos, la
Secretaría Virtual, y de un lugar de encuentro, Comunidad INESEM, donde fomentar su proceso de
aprendizaje que enriquecerá su desarrollo profesional.
materiales didácticos
-
www.formacioncontinua.eu
información y matrículas: 958 050 240
fax: 958 050 245
Postgrado en Desarrollo de Aplicaciones con Python Especialidad en Hacking & Forensic
profesorado y servicio de tutorías
Nuestro equipo docente estará a su disposición para resolver cualquier consulta o ampliación de
contenido que pueda necesitar relacionado con el curso. Podrá ponerse en contacto con nosotros a
través de la propia plataforma o Chat, Email o Teléfono, en el horario que aparece en un
documento denominado “Guía del Alumno” entregado junto al resto de materiales de estudio .
Contamos con una extensa plantilla de profesores especializados en las distintas áreas formativas,
con una amplia experiencia en el ámbito docente.
El alumno podrá contactar con los profesores y formular todo tipo de dudas y consultas, así
como solicitar información complementaria, fuentes bibliográficas y asesoramiento profesional.
Podrá hacerlo de las siguientes formas:
- Por e-mail: El alumno podrá enviar sus dudas y consultas a cualquier hora y obtendrá
respuesta en un plazo máximo de 48 horas.
- Por teléfono: Existe un horario para las tutorías telefónicas, dentro del cual el alumno podrá
hablar directamente con su tutor.
- A través del Campus Virtual: El alumno/a puede contactar y enviar sus consultas a través
del mismo, pudiendo tener acceso a Secretaría, agilizando cualquier proceso administrativo así
como disponer de toda su documentación
www.formacioncontinua.eu
información y matrículas: 958 050 240
fax: 958 050 245
Postgrado en Desarrollo de Aplicaciones con Python Especialidad en Hacking & Forensic
plazo de finalización
El alumno cuenta con un período máximo de tiempo para la finalización del curso, que dependerá de la
misma duración del curso. Existe por tanto un calendario formativo con una fecha de inicio y una fecha
de fin.
campus virtual online
especialmente dirigido a los alumnos matriculados en cursos de modalidad online, el campus virtual
de inesem ofrece contenidos multimedia de alta calidad y ejercicios interactivos.
comunidad
servicio gratuito que permitirá al alumno formar parte de una extensa comunidad virtual que ya
disfruta de múltiples ventajas: becas, descuentos y promociones en formación, viajes al extranjero
para aprender idiomas...
revista digital
el alumno podrá descargar artículos sobre e-learning, publicaciones sobre formación a distancia,
artículos de opinión, noticias sobre convocatorias de oposiciones, concursos públicos de la
administración, ferias sobre formación, etc.
secretaría
Este sistema comunica al alumno directamente con nuestros asistentes, agilizando todo el proceso
de matriculación, envío de documentación y solución de cualquier incidencia.
Además, a través de nuestro gestor documental, el alumno puede disponer de todos
sus documentos, controlar las fechas de envío, finalización de sus acciones formativas y todo
lo relacionado con la parte administrativa de sus cursos, teniendo la posibilidad de realizar un
seguimiento personal de todos sus trámites con INESEM
www.formacioncontinua.eu
información y matrículas: 958 050 240
fax: 958 050 245
Postgrado en Desarrollo de Aplicaciones con Python Especialidad en Hacking & Forensic
programa formativo
PARTE 1. PYTHON 3
UNIDAD DIDÁCTICA 1. PYTHON EN EL PAISAJE INFORMÁTICO
Breve historia de los lenguajes informáticos
- Informática teórica
- Cronología de la informática
- Historia de Python
Tipología de los lenguajes de programación
- Paradigmas
- Interoperabilidad
- Niveles de programación
- Tipado
- Gramática
Ubicar Python en el paisaje informático
- Tipología de Python
- Posición estratégica del lenguaje Python
- Integración con otros lenguajes
UNIDAD DIDÁCTICA 2. PRESENTACIÓN DE PYTHON
Filosofía
- Python en pocas líneas
- Comparación con otros lenguajes
- Grandes principios
Gobierno
- Desarrollo
- Modo de gobierno
¿Qué contiene Python?
- Una gramática y una sintaxis
- Varias implementaciones
- Una librería estándar
- Librerías de terceros
- Frameworks
Fases de ejecución de un programa Python
- Carga de la máquina virtual
- Compilación
- Interpretación
UNIDAD DIDÁCTICA 3. POR QUÉ ESCOGER PYTHON
Cualidades del lenguaje
- Cobertura funcional
- Puerta de entrada
- Garantías
Difusión
- Empresas
- El mundo de la investigación
- El mundo de la educación
- Comunidad
Referencias
- Pesos pesados en la industria informática
- Empresas de innovación
- Editores de contenidos
- Fabricantes de software
www.formacioncontinua.eu
información y matrículas: 958 050 240
fax: 958 050 245
Postgrado en Desarrollo de Aplicaciones con Python Especialidad en Hacking & Forensic
Experiencia
- Impresiones
- Desarrollo en un contexto heterogéneo
- Desarrollo rápido
- Venta de desarrollos en Python
- Navegar por lo desconocido
UNIDAD DIDÁCTICA 4. INSTALAR EL ENTORNO DE DESARROLLO
Instalar Python
- Windows
- Mac OS
- UNIX/Linux
- Compilación
- Compilación de Python 3.4
Instalar librerías externas
- Instalador o administrador de paquetes
- PIP
- Entorno virtual
Instalar un IDE
- Consola y herramientas asociadas
- Eclipse + PyDev
- Aptana
- Eric
- PyCharm
- Otras soluciones
- StacklessPython
- Entorno heterogéneo
Uso de la consola
- Consola estándar
- iPython
Distribuir sus propias aplicaciones
- Herramienta de distribución
- Creación de paquetes distribuibles
- Distribución binaria para Windows
- Distribución binaria para Mac
- Distribución binaria multiplataforma
- Distribución específica para un entorno
UNIDAD DIDÁCTICA 5. ALGORITMOS BÁSICOS
Delimitadores
- Instrucción
- Una línea de código = una instrucción
- Comentario
- Una instrucción en varias líneas
- Palabras clave
- Palabras reservadas
- Indentación
- Símbolos
- Operadores
- Uso del carácter de subrayado
- PEP-8
- PEP-7
- PEP-257
Instrucciones
www.formacioncontinua.eu
información y matrículas: 958 050 240
fax: 958 050 245
Postgrado en Desarrollo de Aplicaciones con Python Especialidad en Hacking & Forensic
- Definiciones
- Instrucciones condicionales
- Iteraciones
- Construcciones funcionales
- Gestión de excepciones
- Otros
UNIDAD DIDÁCTICA 6. DECLARACIONES
Variable
- ¿Qué es una variable?
- Tipado dinámico
- Visibilidad
Función
- Declaración
- Parámetros
Clase
- Declaración
Módulo
- Declaración
- Instrucciones específicas
- ¿Cómo conocer el contenido de un módulo?
UNIDAD DIDÁCTICA 7. MODELO DE OBJETOS
Todo es un objeto
- Principios
- Clases
- Métodos
- Herencia
Otras herramientas de la programación orientada a objetos
- Principios
- Interfaces
- Atributos
- Propiedades
- Ubicaciones
- Metaclases
- Clases abstractas
- Zope Component Architecture
Funciones principales y primitivas asociadas
- Personalización
- Clases particulares
UNIDAD DIDÁCTICA 8. TIPOS DE DATOS Y ALGORITMOS APLICADOS
Números
- Tipos
- La consola Python, la calculadora por excelencia
- Representaciones de un número
- Conversiones
- Estadísticas
- Cálculo científico
Secuencias
- Presentación de los distintos tipos de secuencias
- Uso de índices y tramos
- Uso de operadores
- Métodos de modificación
- Uso avanzado de listas
www.formacioncontinua.eu
información y matrículas: 958 050 240
fax: 958 050 245
Postgrado en Desarrollo de Aplicaciones con Python Especialidad en Hacking & Forensic
- Adaptar las listas a necesidades específicas
- Otros tipos de datos
Conjuntos
- Presentación
- Operaciones sobre conjuntos
- Métodos de modificación de un conjunto
Cadenas de caracteres
- Presentación
- Dar formato a cadenas de caracteres
- Operaciones de conjunto
- Problemáticas relativas a la codificación
- Manipulaciones de bajo nivel avanzadas
- Representación en memoria
Diccionarios
- Presentación
- Manipular un diccionario
- Uso avanzado de diccionarios
Booleanos
- El tipo booleano
- Evaluación booleana
Datos temporales
- Gestionar una fecha del calendario
- Gestionar un horario o un momento de la jornada
- Gestionar un instante absoluto
- Gestionar una diferencia entre dos fechas o instantes
- Especificidades de los husos horarios
- Problemáticas de bajo nivel
- Uso del calendario
UNIDAD DIDÁCTICA 9. PATRONES DE DISEÑO
Definición
- Situación respecto a la noción de objeto
- Organización del capítulo
- Situación respecto a otros conceptos
Creación
- Singleton
- Fábrica
- Fábrica abstracta
- Constructor
- Prototipo
Estructuración
- Adaptador
- Puente
- Composite
- Decorador
- Fachada
- Peso mosca
- Proxy
Comportamiento
- Cadena de responsabilidad
- Solicitud
- Iterador
- Memento
www.formacioncontinua.eu
información y matrículas: 958 050 240
fax: 958 050 245
Postgrado en Desarrollo de Aplicaciones con Python Especialidad en Hacking & Forensic
- Visitante
- Observador
- Estrategia
- Retro llamada
ZCA
- Consideraciones
- Adaptador
- Utilidad
- Fábrica
- Para ir más allá
UNIDAD DIDÁCTICA 10. MANIPULACIÓN DE DATOS
Bases de datos
- Presentación
- Acceso a una base de datos relacional
- Uso de un ORM
- Otras bases de datos
LDAP
- Presentación
- Instalación
- Abrir una conexión a un servidor
- Realizar una búsqueda
- Síncrono vs asíncrono
- Conexiones seguras
XML
- XML y las tecnologías relacionadas
- Validar un documento XML
- DOM
- SAX
- XPath
- XSLT
- El caso concreto de los archivos HTML
Herramientas de manipulación de datos
- Encriptar un dato
- Generar números aleatorios
- Expresiones regulares
Trabajar con medios gráficos
- Imágenes
UNIDAD DIDÁCTICA 11. GENERACIÓN DE CONTENIDO
PDF
- Presentación
- Bajo nivel
- Alto nivel
OpenDocument
- Instalación
- OpenDocument Texto
- OpenDocument Hoja de cálculo
UNIDAD DIDÁCTICA 12. PROGRAMACIÓN PARALELA
Terminología
- Proceso
- Tarea
Uso de una tarea
- Gestión de una tarea
www.formacioncontinua.eu
información y matrículas: 958 050 240
fax: 958 050 245
Postgrado en Desarrollo de Aplicaciones con Python Especialidad en Hacking & Forensic
- Gestión de varias tareas
- Resolución de problemáticas asociadas
Uso de procesos
- Gestión de un proceso
- Gestión de varios procesos
- Resolución de problemáticas asociadas
- Oportunidad de utilizar los procesos
- Demonio
Ejecución asíncrona
- Introducción
- Presentación
- Programación asíncrona
UNIDAD DIDÁCTICA 13. PROGRAMACIÓN DE SISTEMA Y DE RED
Presentación
- Definición
- Objetivos del capítulo
Escribir scripts de sistema
- Conozca su sistema operativo
- Gestión de archivos
- Alternativas sencillas a los comandos bash habituales
- Herramientas
- Comprimir y descomprimir un archivo
Trabajar con argumentos
- Presentación
- Implementación
Programación de red
- Escribir un servidor y un cliente
- Utilizar un protocolo estándar
- Servicios web
Uso de hardware
- Wake-on-LAN
- Uso del puerto serie
Unidad didáctica
UNIDAD DIDÁCTICA 14. BUENAS PRÁCTICAS
Desarrollo guiado por pruebas
- Pruebas unitarias
- Pruebas de no regresión
- Pruebas funcionales
- Pruebas de rendimiento
- Integración continua
Programación dirigida por la documentación
- Documentación interna
Optimización
- Medir la calidad
- Herramientas de depuración
- Herramientas de perfilado
- Reglas de optimización
UNIDAD DIDÁCTICA 15. CREAR UNA APLICACIÓN WEB EN 30 MINUTOS
Descripción de la aplicación que se va a construir
Implementación
- Aislar el entorno
- Creación del proyecto
www.formacioncontinua.eu
información y matrículas: 958 050 240
fax: 958 050 245
Postgrado en Desarrollo de Aplicaciones con Python Especialidad en Hacking & Forensic
- Configuración
- Primeros ensayos
Realizar la aplicación
- Modelos
- Vistas
- Controladores
Para ir más allá
UNIDAD DIDÁCTICA 16. CREAR UNA APLICACIÓN DE CONSOLA EN 10 MINUTOS
Objetivo
Registrar el script
Creación de los datos
Parser de argumentos
UNIDAD DIDÁCTICA 17. CREAR UNA APLICACIÓN GRÁFICA EN 20 MINUTOS
Objetivo
- Funcional
- Técnica
Breve presentación de Gtk y algunos trucos
- Presentación
- Trucos
Iniciar el programa
Interfaz gráfica con Glade
Crear el componente gráfico
Controlador
Otras librerías gráficas
- TkInter
- wxPython
- PyQt
- PySide
- Otras
UNIDAD DIDÁCTICA 18. CREAR UN JUEGO EN 30 MINUTOS CON PYGAME
Presentación de PyGame
Construcción de un juego Tetris
- Presentación del juego
- Presentación de la problemática
- Creación de constantes
Tabla UNICODE
- Script
Bytes
- Script
- Resultado
PARTE 2. PYTHON: DESARROLLO DE APLICACIONES HACKING
UNIDAD DIDÁCTICA 1. PYTHON: LOS FUNDAMENTOS
Introducción
Historia
Características del lenguaje
Tipos de datos
Estructuras condicionales y repetitivas
Funciones, módulos y paquetes
Las clases
Manipulación de archivos
Las excepciones
www.formacioncontinua.eu
información y matrículas: 958 050 240
fax: 958 050 245
Postgrado en Desarrollo de Aplicaciones con Python Especialidad en Hacking & Forensic
Módulos útiles para la continuación del libro
Conclusión
UNIDAD DIDÁCTICA 2. RED: LA LIBRERÍA SCAPY
Introducción
Programación de red con Scapy
Scapy e IPv
Otros ejemplos
Conclusión
Puesta en práctica
UNIDAD DIDÁCTICA 3. DEPURACIÓN EN WINDOWS
Introducción
El módulo ctypes de Python
Primer enfoque
Estado de los registros
Los eventos del debugger
Los puntos de parada (breakpoints)
La librería PyDbg
Puesta en práctica: Hooking
UNIDAD DIDÁCTICA 4. EL FUZZING
Introducción
Fuzzing FTP
Fuzzing con Scapy
Fuzzing con PyDbg: Format string
Sulley
Puesta en práctica
UNIDAD DIDÁCTICA 5. TRATAMIENTO DE IMÁGENES
Introducción
Utilización
Ejemplos de uso
UNIDAD DIDÁCTICA 6. UN POCO MÁS SOBRE LA WEB
Introducción
Recordemos lo básico
Mapping de sitios web
Fuerza bruta de carpetas o de ubicación de archivos
Fuerza bruta autenticación HTML
Selenium
Conexión a un sitio web y navegación
Conclusión
UNIDAD DIDÁCTICA 7. ANÁLISIS FORENSE
Introducción
Criptografía y otros
Extracción de metadatos de los archivos
Archivos ZIP
Leer de un archivo OpenOffice o Word
E-mail
Esteganografía
Volatility
Análisis de puntos de acceso inalámbrico en base al registro
Recuperar los elementos eliminados (de la papelera)
Puesta en práctica
www.formacioncontinua.eu
información y matrículas: 958 050 240
fax: 958 050 245
Postgrado en Desarrollo de Aplicaciones con Python Especialidad en Hacking & Forensic
www.formacioncontinua.eu
información y matrículas: 958 050 240
fax: 958 050 245