Successfully reported this slideshow.
We use your LinkedIn profile and activity data to personalize ads and to show you more relevant ads. You can change your ad preferences anytime.
1
Autoencoders, GANS y otros chicos del montón Rooted CON 2019
Autoencoders, GANS y
otros chicos del montón:
La IA al serv...
2
Autoencoders, GANS y otros chicos del montón Rooted CON 2019
whoami $>
Pablo González
Ingeniero Informático & Máster Seg...
3
Autoencoders, GANS y otros chicos del montón Rooted CON 2019
whoami $>
Enrique Blanco
Licenciado en Ciencias Físicas (UC...
4
Autoencoders, GANS y otros chicos del montón Rooted CON 2019
¿De qué va esto?
1. Noticias (O Noticias Falsas)
2. IA apli...
5
Autoencoders, GANS y otros chicos del montón Rooted CON 2019
Noticias (O Noticias Falsas)
La Inteligencia Artificial (IA...
6
Autoencoders, GANS y otros chicos del montón Rooted CON 2019
Noticias (O noticias falsas)
El peligro de las Deep Fakes
P...
7
Autoencoders, GANS y otros chicos del montón Rooted CON 2019
Noticias (O noticias falsas)
¿Importa una Fake News?
8
Autoencoders, GANS y otros chicos del montón Rooted CON 2019
IA aplicada a la Ciberseguridad
¿Matrimonio condenado a
ent...
9
Autoencoders, GANS y otros chicos del montón Rooted CON 2019
Conceptos básicos (o no…)
¿Qué es el Machine Learning?
“La ...
10
Autoencoders, GANS y otros chicos del montón Rooted CON 2019
Conceptos básicos (o no…)
¿Qué es un modelo?
• Representac...
11
Autoencoders, GANS y otros chicos del montón Rooted CON 2019
Conceptos básicos (o no…)
¿Qué es un algoritmo?
• Conjunto...
12
Autoencoders, GANS y otros chicos del montón Rooted CON 2019
Conceptos básicos (o no…)
Paradigmas de aprendizaje
Difere...
13
Autoencoders, GANS y otros chicos del montón Rooted CON 2019
Conceptos básicos (o no…)
Aprendizaje supervisado
• Usuari...
14
Autoencoders, GANS y otros chicos del montón Rooted CON 2019
Conceptos básicos (o no…)
Aprendizaje no supervisado
• No ...
15
Autoencoders, GANS y otros chicos del montón Rooted CON 2019
Conceptos básicos (o no…)
¿Qué son las Redes Neuronales?
•...
16
Autoencoders, GANS y otros chicos del montón Rooted CON 2019
Conceptos básicos (o no…)
¿Qué son las Redes Neuronales?
•...
17
Autoencoders, GANS y otros chicos del montón Rooted CON 2019
Conceptos básicos (o no…)
Deep Learning
Conjunto de algori...
18
Autoencoders, GANS y otros chicos del montón Rooted CON 2019
Conceptos básicos (o no…)
Deep Learning
Conjunto de algori...
19
Autoencoders, GANS y otros chicos del montón Rooted CON 2019
Conceptos básicos (o no…)
Modelos generativos
• Aprenden t...
20
Autoencoders, GANS y otros chicos del montón Rooted CON 2019
Autoencoders
• Enfoque no supervisado para el aprendizaje ...
21
Autoencoders, GANS y otros chicos del montón Rooted CON 2019
Autoencoders
• Enfoque no supervisado para el aprendizaje ...
22
Autoencoders, GANS y otros chicos del montón Rooted CON 2019
• Enfoque no supervisado para el aprendizaje de una repres...
23
Autoencoders, GANS y otros chicos del montón Rooted CON 2019
• Enfoque no supervisado para el aprendizaje de una repres...
24
Autoencoders, GANS y otros chicos del montón Rooted CON 2019
Autoencoders
• Enfoque no supervisado para el aprendizaje ...
25
Autoencoders, GANS y otros chicos del montón Rooted CON 2019
Autoencoders
• Enfoque no supervisado para el aprendizaje ...
26
Autoencoders, GANS y otros chicos del montón Rooted CON 2019
Autoencoders
• Enfoque no supervisado para el aprendizaje ...
27
Autoencoders, GANS y otros chicos del montón Rooted CON 2019
Autoencoders
• Enfoque no supervisado para el aprendizaje ...
28
Autoencoders, GANS y otros chicos del montón Rooted CON 2019
Variational Autoencoders (VAEs)
Generando datos:
Muestreo ...
29
Autoencoders, GANS y otros chicos del montón Rooted CON 2019
Generative Adversarial Networks
(GANs)
• Red neuronal basa...
30
Autoencoders, GANS y otros chicos del montón Rooted CON 2019
Generative Adversarial Networks
(GANs)
• Entrenamiento de ...
31
Autoencoders, GANS y otros chicos del montón Rooted CON 2019
Generative Adversarial Networks
(GANs)
Riesgos en el entre...
32
Autoencoders, GANS y otros chicos del montón Rooted CON 2019
Generative Adversarial Networks
(GANs)
Riesgos en el entre...
33
Autoencoders, GANS y otros chicos del montón Rooted CON 2019
Autoencoder Attack
Caso 1: Pablo se mete a cómico
Técnica ...
34
Autoencoders, GANS y otros chicos del montón Rooted CON 2019
Técnica de FaceSwapping con VAEs
Faceswapping Pablo Gonzál...
35
Autoencoders, GANS y otros chicos del montón Rooted CON 2019
AutoencoderAttack
Caso 2: Enrique entrena a un equipo de
f...
36
Autoencoders, GANS y otros chicos del montón Rooted CON 2019
Autoencoder Attack
Pasos para realizar un faceswapping
1. ...
37
Autoencoders, GANS y otros chicos del montón Rooted CON 2019
Autoencoder Attack
Pasos para realizar un faceswapping
2. ...
38
Autoencoders, GANS y otros chicos del montón Rooted CON 2019
Vector
base A
Encoder A Decoder A
Vector
base B
Encoder B ...
39
Autoencoders, GANS y otros chicos del montón Rooted CON 2019
Autoencoder Attack
Pasos para realizar un faceswapping
2. ...
40
Autoencoders, GANS y otros chicos del montón Rooted CON 2019
Autoencoder Attack
Pasos para realizar un faceswapping
2. ...
41
Autoencoders, GANS y otros chicos del montón Rooted CON 2019
Autoencoder Attack
Pasos para realizar un faceswapping
2. ...
42
Autoencoders, GANS y otros chicos del montón Rooted CON 2019
Autoencoder Attack
Pasos para realizar un faceswapping
2. ...
43
Autoencoders, GANS y otros chicos del montón Rooted CON 2019
Autoencoder Attack
Pasos para realizar un faceswapping
2. ...
44
Autoencoders, GANS y otros chicos del montón Rooted CON 2019
Autoencoder Attack
Pasos para realizar un faceswapping
3. ...
45
Autoencoders, GANS y otros chicos del montón Rooted CON 2019
GANs Attack
¿Cómo convertirse en Chema Alonso?
Modelo gene...
46
Autoencoders, GANS y otros chicos del montón Rooted CON 2019
GANs Attack
¿Cómo convertirse en Chema Alonso?
1. Generaci...
47
Autoencoders, GANS y otros chicos del montón Rooted CON 2019
2. Entrenamiento del modelo generativo
Hace uso de pix2pix...
48
Autoencoders, GANS y otros chicos del montón Rooted CON 2019
2. Entrenamiento del modelo generativo
Hace uso de pix2pix...
49
Autoencoders, GANS y otros chicos del montón Rooted CON 2019
GANs Attack.
Audio – Estafa del CEO CDO
50
Autoencoders, GANS y otros chicos del montón Rooted CON 2019
Modelo personalizado de voz de la persona a suplantar.
Neu...
51
Autoencoders, GANS y otros chicos del montón Rooted CON 2019
Microsoft Custom Voice
Aislar muestras de audio (en inglés...
52
Autoencoders, GANS y otros chicos del montón Rooted CON 2019
Microsoft Custom Voice
Aislar muestras de audio (en inglés...
53
Autoencoders, GANS y otros chicos del montón Rooted CON 2019
Postprocesado digital de la voz generada como audio monofó...
54
Autoencoders, GANS y otros chicos del montón Rooted CON 2019
Postprocesado digital de la voz generada como audio monofó...
55
Autoencoders, GANS y otros chicos del montón Rooted CON 2019
Detección. La IA al servicio de lo bueno
Análisis de senti...
56
Autoencoders, GANS y otros chicos del montón Rooted CON 2019
Detección. La IA al servicio de lo bueno
Análisis de senti...
57
Autoencoders, GANS y otros chicos del montón Rooted CON 2019
Detección. La IA al servicio de lo bueno
Análisis de senti...
58
Autoencoders, GANS y otros chicos del montón Rooted CON 2019
Detección. La IA al servicio de lo bueno
Análisis de senti...
59
Autoencoders, GANS y otros chicos del montón Rooted CON 2019
Detección. La IA al servicio de lo bueno
Análisis de senti...
60
Autoencoders, GANS y otros chicos del montón Rooted CON 2019
Detección. La IA al servicio de lo bueno
Patrones biométri...
61
Autoencoders, GANS y otros chicos del montón Rooted CON 2019
Detección. La IA al servicio de lo bueno
Patrones biométri...
62
Autoencoders, GANS y otros chicos del montón Rooted CON 2019
Detección. La IA al servicio de lo bueno
Patrones biométri...
63
Autoencoders, GANS y otros chicos del montón Rooted CON 2019
Detección. La IA al servicio de lo bueno
Patrones biométri...
64
Autoencoders, GANS y otros chicos del montón Rooted CON 2019
Detección. La IA al servicio de lo bueno
Patrones biométri...
65
Autoencoders, GANS y otros chicos del montón Rooted CON 2019
Conclusiones
1. “ If everything seems to be the same and n...
66
Autoencoders, GANS y otros chicos del montón Rooted CON 2019
Muchas gracias@pablogonzalezpe
@eblanco_h
Upcoming SlideShare
Loading in …5
×

Enrique Blanco & Pablo González - Autoencoders, GANS y otros chicos del montón: La IA al servicio de la Ciberseguridad (en lo bueno y en lo malo) [rooted2019]

73 views

Published on

Enrique Blanco & Pablo González - Autoencoders, GANS y otros chicos del montón: La IA al servicio de la Ciberseguridad (en lo bueno y en lo malo) [rooted2019]

Published in: Technology
  • Be the first to comment

  • Be the first to like this

Enrique Blanco & Pablo González - Autoencoders, GANS y otros chicos del montón: La IA al servicio de la Ciberseguridad (en lo bueno y en lo malo) [rooted2019]

  1. 1. 1 Autoencoders, GANS y otros chicos del montón Rooted CON 2019 Autoencoders, GANS y otros chicos del montón: La IA al servicio de la Ciberseguridad (en lo bueno y en lo malo) /Rooted CON 2019 – Edición X Pablo González Enrique Blanco @pablogonzalezpe @eblanco_h
  2. 2. 2 Autoencoders, GANS y otros chicos del montón Rooted CON 2019 whoami $> Pablo González Ingeniero Informático & Máster Seguridad Informática 2009 – 2013 Informática 64 2013 - ?? Telefónica (Ideas Locas – CDO) Director Máster Seguridad de las TIC UEM MVP Microsoft 2017-2018-2019 Co-fundador de Flu Project & hackersClub Algunos libros (0xWord): – Metasploit para pentesters – Pentesting con Kali – Ethical Hacking – Got Root – Pentesting con Powershell
  3. 3. 3 Autoencoders, GANS y otros chicos del montón Rooted CON 2019 whoami $> Enrique Blanco Licenciado en Ciencias Físicas (UCM) Máster en Astrofísica (UCM) Investigador en Data Science y Smart Energy Grids en NEC Laboratories Europe GmbH Ingeniería de Sistemas en Indra Espacio Equipo de Ideas Locas CDO de Telefónica: Proyectos de investigación y divulgación de contenido relacionado con Inteligencia Artificial.
  4. 4. 4 Autoencoders, GANS y otros chicos del montón Rooted CON 2019 ¿De qué va esto? 1. Noticias (O Noticias Falsas) 2. IA aplicada a la Ciberseguridad ¿Matrimonio condenado a entenderse? 3. Técnicas para desarrollar ataques y defensas. Conceptos básicos (o no…) 4. How-To: ¿Qué se puede hacer con esto? Mode Low-Cost = ON 5. Evolución & Aplicabilidad. Estafa del CEO
  5. 5. 5 Autoencoders, GANS y otros chicos del montón Rooted CON 2019 Noticias (O Noticias Falsas) La Inteligencia Artificial (IA) como generadora de Fake News Fake Obama created using AI video tool - BBC News - Publicado el 19 jul. 2017 El peligro de las Deep Fakes
  6. 6. 6 Autoencoders, GANS y otros chicos del montón Rooted CON 2019 Noticias (O noticias falsas) El peligro de las Deep Fakes Pornografía como primera aplicación reseñable, ¡por supuesto!
  7. 7. 7 Autoencoders, GANS y otros chicos del montón Rooted CON 2019 Noticias (O noticias falsas) ¿Importa una Fake News?
  8. 8. 8 Autoencoders, GANS y otros chicos del montón Rooted CON 2019 IA aplicada a la Ciberseguridad ¿Matrimonio condenado a entenderse? Ciberserguridad y la IA están unidas Detección anomalías LUCA Talk 6: Redes más seguras con Machine Learning Detección de phishing (Phish.AI)
  9. 9. 9 Autoencoders, GANS y otros chicos del montón Rooted CON 2019 Conceptos básicos (o no…) ¿Qué es el Machine Learning? “La capacidad de una máquina de aprender de la experiencia” Fuente: https://www.xataka.com/robotica-e-ia/machine-learning-y-deep-learning- como-entender-las-claves-del-presente-y-futuro-de-la-inteligencia-artificial Rama de la Inteligencia Artificial (IA) que tiene como objetivo extraer la mayor cantidad de información y conocimiento posible de los datos.
  10. 10. 10 Autoencoders, GANS y otros chicos del montón Rooted CON 2019 Conceptos básicos (o no…) ¿Qué es un modelo? • Representación matemática de un proceso del mundo real • No es más que una función con la capacidad de dar una predicción • Generar un modelo de ML requiere proporcionar datos de entrenamiento a un algoritmo para que éste pueda “aprender” ¿A qué nos referimos con algoritmo en ML?
  11. 11. 11 Autoencoders, GANS y otros chicos del montón Rooted CON 2019 Conceptos básicos (o no…) ¿Qué es un algoritmo? • Conjunto de pasos realizados en orden • Motor subyacente en el código que ejecutamos • Definición: conjunto de pasos que se pasan a un modelo para que éste realice los cálculos o el procesamiento Fuente: https://www.ellucian.com/insights/machine- learning-can-change-way-institutions-operate feeds trains
  12. 12. 12 Autoencoders, GANS y otros chicos del montón Rooted CON 2019 Conceptos básicos (o no…) Paradigmas de aprendizaje Diferentes tipos de aprendizaje en ML englobados en los siguientes conjuntos: • Aprendizaje inductivo: ejemplos específicos para alcanzar conclusiones (hipótesis) generales. Diferenciamos: –Aprendizaje supervisado –Aprendizaje no supervisado –Aprendizaje semi-supervisado • Aprendizaje reforzado: realimentación proporcionada al final de una secuencia de pasos, mediante un refuerzo positivo o negativo
  13. 13. 13 Autoencoders, GANS y otros chicos del montón Rooted CON 2019 Conceptos básicos (o no…) Aprendizaje supervisado • Usuario facilita a algoritmo pares entrada-salida de ejemplo • El algoritmo encargado de aprender la relación entrada-salida • Se podrá dar una salida para una entrada jamás vista Fuente: http://jeremy.kiwi.nz/pythoncourse/2016/04/01/lesson07rd.html
  14. 14. 14 Autoencoders, GANS y otros chicos del montón Rooted CON 2019 Conceptos básicos (o no…) Aprendizaje no supervisado • No hay ningún tipo de supervisión. Sólo se cuenta con datos de entrada. • Misión: –describir la estructura de los datos, –encontrar algún tipo de organización para simplificar el análisis. • Carácter exploratorio Fuente: http://jeremy.kiwi.nz/pythoncourse/2016/04/01/lesson07rd.html
  15. 15. 15 Autoencoders, GANS y otros chicos del montón Rooted CON 2019 Conceptos básicos (o no…) ¿Qué son las Redes Neuronales? • Modelo computacional que comparte propiedades con el cerebro animal. Muchas unidades simples trabajan en paralelo sin una unidad de control centralizada. • Comportamiento de una red neuronal definido por la arquitectura de su red. • Arquitectura caracterizada por : –Número de neuronas –Profundidad o número de capas –Conexiones existentes entre capas
  16. 16. 16 Autoencoders, GANS y otros chicos del montón Rooted CON 2019 Conceptos básicos (o no…) ¿Qué son las Redes Neuronales? • Modelo computacional que comparte propiedades con el cerebro animal. Muchas unidades simples trabajan en paralelo sin una unidad de control centralizada. • Comportamiento de una red neuronal definido por la arquitectura de su red. • Arquitectura caracterizada por : –Número de neuronas –Profundidad o número de capas –Conexiones existentes entre capas Fuente: Multilayer neural network topology. Deep Learning, A practiotioner’s approach. O’Reilly. Fuente: Single-layer perceptron. Deep Learning, A practiotioner’s approach. O’Reilly.
  17. 17. 17 Autoencoders, GANS y otros chicos del montón Rooted CON 2019 Conceptos básicos (o no…) Deep Learning Conjunto de algoritmos de ML que modelan abstracciones de alto nivel en datos usando arquitecturas profundas • Arquitecturas de Deep Learning: • Redes Neuronales Profundas (DNN) • Redes Neuronales Convolucionales (CNN) • Redes Neuronales Recurrentes (RNN) • … • Aplicadas a Visión Artificial, Natural Language Processing… The activations of an example ConvNet architecture. Fuente: http://cs231n.github.io/convolutional-networks/
  18. 18. 18 Autoencoders, GANS y otros chicos del montón Rooted CON 2019 Conceptos básicos (o no…) Deep Learning Conjunto de algoritmos de ML que modelan abstracciones de alto nivel en datos usando arquitecturas profundas • Arquitecturas de Deep Learning: • Redes Neuronales Profundas (DNN) • Redes Neuronales Convolucionales (CNN) • Redes Neuronales Recurrentes (RNN) • … • Aplicadas a Visión Artificial, Natural Language Processing… The activations of an example ConvNet architecture. Fuente: http://cs231n.github.io/convolutional-networks/
  19. 19. 19 Autoencoders, GANS y otros chicos del montón Rooted CON 2019 Conceptos básicos (o no…) Modelos generativos • Aprenden tipo de distribución de datos a través de un aprendizaje no supervisado ¡Datos no etiquetados! • Meta: generar nuevas muestras con ligeras variaciones sobre esa distribución • Dos enfoques más utilizados: –Variational Autoencoders (VAEs) –Generative Adversarial Networks (GANs)
  20. 20. 20 Autoencoders, GANS y otros chicos del montón Rooted CON 2019 Autoencoders • Enfoque no supervisado para el aprendizaje de una representación de características en un espacio dimensional reducido Datos de entrada Reconstrucción
  21. 21. 21 Autoencoders, GANS y otros chicos del montón Rooted CON 2019 Autoencoders • Enfoque no supervisado para el aprendizaje de una representación de características en un espacio dimensional reducido • Se parte de datos sin etiquetar
  22. 22. 22 Autoencoders, GANS y otros chicos del montón Rooted CON 2019 • Enfoque no supervisado para el aprendizaje de una representación de características en un espacio dimensional reducido • Se parte de datos sin etiquetar Autoencoders Características del encoder: 1. Input procesado por ReLU CNN 2. Modelo denso para obtener z
  23. 23. 23 Autoencoders, GANS y otros chicos del montón Rooted CON 2019 • Enfoque no supervisado para el aprendizaje de una representación de características en un espacio dimensional reducido • Codificamos la info de entrada Autoencoders Características del encoder: 1. Input procesado por ReLU CNN 2. Modelo denso para obtener z Q: ¿Por qué queremos reducir las características?
  24. 24. 24 Autoencoders, GANS y otros chicos del montón Rooted CON 2019 Autoencoders • Enfoque no supervisado para el aprendizaje de una representación de características en un espacio dimensional reducido • Codificamos la info de entrada Características del encoder: 1. Input procesado por ReLU CNN 2. Modelo denso para obtener z Q: ¿Por qué queremos reducir las características? A: Para poder capturar variaciones significativas en los cambios en la entrada a la red
  25. 25. 25 Autoencoders, GANS y otros chicos del montón Rooted CON 2019 Autoencoders • Enfoque no supervisado para el aprendizaje de una representación de características en un espacio dimensional reducido • Reconstruimos las imágenes
  26. 26. 26 Autoencoders, GANS y otros chicos del montón Rooted CON 2019 Autoencoders • Enfoque no supervisado para el aprendizaje de una representación de características en un espacio dimensional reducido • Reconstruimos las imágenes Características del decoder: Se invierte la arquitectura del Encoder
  27. 27. 27 Autoencoders, GANS y otros chicos del montón Rooted CON 2019 Autoencoders • Enfoque no supervisado para el aprendizaje de una representación de características en un espacio dimensional reducido • Reconstruimos las imágenes Características del decoder: Se invierte la arquitectura del Encoder Datos de entrada Reconstrucción
  28. 28. 28 Autoencoders, GANS y otros chicos del montón Rooted CON 2019 Variational Autoencoders (VAEs) Generando datos: Muestreo aleatorio en z y usar la red decoder
  29. 29. 29 Autoencoders, GANS y otros chicos del montón Rooted CON 2019 Generative Adversarial Networks (GANs) • Red neuronal basada en un juego de suma cero • Dos jugadores – generador (G) y discriminador (D) – compiten el uno contra el otro Real Pablo Fake Pablo
  30. 30. 30 Autoencoders, GANS y otros chicos del montón Rooted CON 2019 Generative Adversarial Networks (GANs) • Entrenamiento de GANs: –G genera muestras y se las pasa a D (G intenta engañar a D) –D estima la probabilidad de que la muestra provenga de G (D intenta descubrir a G) • Entrenar D para desenmascarar a G maximizando la probabilidad de que D esté equivocado • Facilitar a G cómo de cerca ha estado de engañar a D Fuente: https://www.kdnuggets.com/2017/01/generative- adversarial-networks-hot-topic-machine-learning.html
  31. 31. 31 Autoencoders, GANS y otros chicos del montón Rooted CON 2019 Generative Adversarial Networks (GANs) Riesgos en el entrenamiento de GANs: –Largos tiempos de entrenamiento –El modelo puede no converger. Difícil elegir arquitectura idónea. Dificultad en la elección de hiperparámetros. –G se queda estancado y no genera muestras variadas –D se hace demasiado bueno y condena a G
  32. 32. 32 Autoencoders, GANS y otros chicos del montón Rooted CON 2019 Generative Adversarial Networks (GANs) Riesgos en el entrenamiento de GANs: –Largos tiempos de entrenamiento –El modelo puede no converger. Difícil elegir arquitectura idónea. Dificultad en la elección de hiperparámetros. –G se queda estancado y no genera muestras variadas –D se hace demasiado bueno y condena a G
  33. 33. 33 Autoencoders, GANS y otros chicos del montón Rooted CON 2019 Autoencoder Attack Caso 1: Pablo se mete a cómico Técnica de FaceSwapping con VAEs https://github.com/iperov/DeepFaceLab Características HW Modelo HP ZBook Studio G4 Procesador Intel® Core™ i7- 7700HQ CPU @ 2.80GHz RAM instalada 16,0 GB GPU NVIDIA Quadro M1200 4 GB Requisitos SW Pre-built Windows App CUDA 9.0 CUDNN 7.1 Drivers aplicables a la GPU
  34. 34. 34 Autoencoders, GANS y otros chicos del montón Rooted CON 2019 Técnica de FaceSwapping con VAEs Faceswapping Pablo González – Miguel Lago Autoencoder Attack Caso 1: Pablo se mete a cómico
  35. 35. 35 Autoencoders, GANS y otros chicos del montón Rooted CON 2019 AutoencoderAttack Caso 2: Enrique entrena a un equipo de fútbol Técnica de FaceSwapping con VAEs Faceswapping Enrique Blanco – Mourinho
  36. 36. 36 Autoencoders, GANS y otros chicos del montón Rooted CON 2019 Autoencoder Attack Pasos para realizar un faceswapping 1. Detección y extracción de rostros Duración recomendada: ∼ 2 min mínimo Condiciones similares de iluminación al vídeo de destino Orientación similar del rostro [ ! ] Extracción de 2,924 rostros Ejemplo de detección de marco facial [ ! ] Extracción de 3,605 rostros
  37. 37. 37 Autoencoders, GANS y otros chicos del montón Rooted CON 2019 Autoencoder Attack Pasos para realizar un faceswapping 2. Entrenar el VAE Imagen original Imagen reconstruida Vector base Encoder Decoder
  38. 38. 38 Autoencoders, GANS y otros chicos del montón Rooted CON 2019 Vector base A Encoder A Decoder A Vector base B Encoder B Decoder B Imagen original B Imagen original A Imagen reconstruida B Imagen reconstruida A Autoencoder Attack Pasos para realizar un faceswapping 2. Entrenar el VAE
  39. 39. 39 Autoencoders, GANS y otros chicos del montón Rooted CON 2019 Autoencoder Attack Pasos para realizar un faceswapping 2. Entrenar el VAE Vector base A Encoder A Decoder A Vector base B Encoder B Decoder B Imagen original B Imagen original A Imagen reconstruida B Imagen reconstruida A
  40. 40. 40 Autoencoders, GANS y otros chicos del montón Rooted CON 2019 Autoencoder Attack Pasos para realizar un faceswapping 2. Entrenar el VAE Vector base A Encoder Decoder A Vector base B Encoder Decoder B Imagen original B Imagen original A Imagen reconstruida B Imagen reconstruida A
  41. 41. 41 Autoencoders, GANS y otros chicos del montón Rooted CON 2019 Autoencoder Attack Pasos para realizar un faceswapping 2. Entrenar el VAE Vector base A Encoder Decoder A Vector base B Encoder Decoder B Imagen original B Imagen original A Imagen reconstruida B Imagen reconstruida A
  42. 42. 42 Autoencoders, GANS y otros chicos del montón Rooted CON 2019 Autoencoder Attack Pasos para realizar un faceswapping 2. Entrenar el VAE Imágenes originales (test dataset) [1, 3] Imágenes de A generadas tras Decoder A [2] Imágenes de B generadas tras Decoder B [4] Imágenes de A generadas tras Decoder B [5]
  43. 43. 43 Autoencoders, GANS y otros chicos del montón Rooted CON 2019 Autoencoder Attack Pasos para realizar un faceswapping 2. Entrenar el VAE Timelapse 70,000 épocas (∼ 1 día) Tiempo de entrenamiento extenso aprox. 3 días (∼200,000 épocas)
  44. 44. 44 Autoencoders, GANS y otros chicos del montón Rooted CON 2019 Autoencoder Attack Pasos para realizar un faceswapping 3. Testeo de la red neuronal y generación del vídeo Vector base A Decoder A Vector base B Encoder Decoder B Imagen original B Imagen reconstruida de B con las facciones de A Imagen original A Imagen reconstruida de A con las facciones de B Encoder
  45. 45. 45 Autoencoders, GANS y otros chicos del montón Rooted CON 2019 GANs Attack ¿Cómo convertirse en Chema Alonso? Modelo generativo para imitar las facciones detectadas por una cámara. face2face-demo: toma los facial landmarks para la generación de rostros haciendo uso de DCGAN. https://github.com/datitran/face2face-demo (*) Image-to-Image Translation with Conditional Adversarial Networks. Phillip Isola, Jun-Yan Zhu, Tinghui Zhou, Alexei A. Efros; Nov 2016 Requisitos SW Anaconda / Python 3.5 tensorflow-gpu 1.3 openCV 3.0 dlib 19.4 pix2pix-tensorflow (*) CUDA 8.0 CUDNN 6.0 Drivers aplicables a la GPU
  46. 46. 46 Autoencoders, GANS y otros chicos del montón Rooted CON 2019 GANs Attack ¿Cómo convertirse en Chema Alonso? 1. Generación de datos de entrenamiento a. Detección del rostro del vídeo fuente b. Detección de las facciones con dlib pose estimator – 68 face landmarks (*) (*) One Millisecond Face Alignment with an Ensemble of Regression Trees by Vahid Kazemi and Josephine Sullivan, CVPR 2014 728 frames del video original
  47. 47. 47 Autoencoders, GANS y otros chicos del montón Rooted CON 2019 2. Entrenamiento del modelo generativo Hace uso de pix2pix-tensorflow (implementación original en Torch) Tiempo estimado de entrenamiento: 3 días 3. Testeo del modelo a. Reducir el modelo entrenado (usar una imagen como tensor de input) b. Congelar el modelo a un único fichero c. Ejecutar el testeo facilitando como entrada imágenes de webcam GANs Attack ¿Cómo convertirse en Chema Alonso?
  48. 48. 48 Autoencoders, GANS y otros chicos del montón Rooted CON 2019 2. Entrenamiento del modelo generativo Hace uso de pix2pix-tensorflow (implementación original en Torch) Tiempo estimado de entrenamiento: 3 días 3. Testeo del modelo a. Reducir el modelo entrenado (usar una imagen como tensor de input) b. Congelar el modelo a un único fichero c. Ejecutar el testeo facilitando como entrada imágenes de webcam Demo de la cara de Chema con rostro aleatorio GANs Attack ¿Cómo convertirse en Chema Alonso?
  49. 49. 49 Autoencoders, GANS y otros chicos del montón Rooted CON 2019 GANs Attack. Audio – Estafa del CEO CDO
  50. 50. 50 Autoencoders, GANS y otros chicos del montón Rooted CON 2019 Modelo personalizado de voz de la persona a suplantar. Neural Text-to-Speech (TTS) Microsoft: Deep Neural Networks para mejorar pronunciación y entonación https://azure.microsoft.com/es-es/blog/microsoft-s-new-neural-text-to-speech-service- helps-machines-speak-like-people/ GANs Attack. Audio – Estafa del CEO CDO
  51. 51. 51 Autoencoders, GANS y otros chicos del montón Rooted CON 2019 Microsoft Custom Voice Aislar muestras de audio (en inglés) de la persona a suplantar [Lenguajes soportados: English, Chinese] 1. Descarga de audios (.wav) desde YouTube en Inglés 2. 314 utterances de s cada uno h GANs Attack. Audio – Estafa del CEO CDO
  52. 52. 52 Autoencoders, GANS y otros chicos del montón Rooted CON 2019 Microsoft Custom Voice Aislar muestras de audio (en inglés) de la persona a suplantar [Lenguajes soportados: English, Chinese] 3. Transcripciones: Speech-to-Text de cada audio en formato .txt; Google Cloud Speech-to-Text API 4. Subir audios y transcripciones para obtener modelo 5. Modelo satisfactoriamente construido → despliegue Tiempo aproximado de entrenamiento: 8 horas GANs Attack. Audio – Estafa del CEO CDO
  53. 53. 53 Autoencoders, GANS y otros chicos del montón Rooted CON 2019 Postprocesado digital de la voz generada como audio monofónico @lucferbux Se trataron características de la voz, tono, timbre, vibrato e inflexión Añadido filtro telefónico y ruido de fondo Resultado: timbre bien logrado pero entonación robótica Causas: –Grabaciones no realizadas en estudio –SNR bajas en algunos audios Estafa lista. Vídeo de Chema con el audio GANs Attack. Audio – Estafa del CEO CDO
  54. 54. 54 Autoencoders, GANS y otros chicos del montón Rooted CON 2019 Postprocesado digital de la voz generada como audio monofónico @lucferbux Se trataron características de la voz, tono, timbre, vibrato e inflexión Añadido filtro telefónico y ruido de fondo Resultado: timbre bien logrado pero entonación robótica Causas: –Grabaciones no realizadas en estudio –Tasa de pronunciación no óptimas –SNR bajas en algunos audios Estafa lista. Vídeo de Chema con el audio GANs Attack. Video+Audio – Estafa del CEO CDO
  55. 55. 55 Autoencoders, GANS y otros chicos del montón Rooted CON 2019 Detección. La IA al servicio de lo bueno Análisis de sentimientos Redes sociales, diarios digitales … • Fuentes muy importantes de información • Información fácilmente manipulable • Facilita la rápida difusión de información no contrastada
  56. 56. 56 Autoencoders, GANS y otros chicos del montón Rooted CON 2019 Detección. La IA al servicio de lo bueno Análisis de sentimientos Detección de Fake News: un problema sencillo de aplicación de ML • Aprendizaje supervisado – Dos clases • 0 – noticia verdadera • 1 – noticia falsa – Procesado de Lenguaje Natural (NLP) • Uso de Redes Neuronales Recurrentes (LSTM (*)) (*) A Survey on Natural Language Processing for Fake News Detection. Ray Oshikawa, Jing Qian, William Yang Wang; Nov 2018
  57. 57. 57 Autoencoders, GANS y otros chicos del montón Rooted CON 2019 Detección. La IA al servicio de lo bueno Análisis de sentimientos Detección de Fake News: un problema sencillo de aplicación de ML • Aprendizaje supervisado – Dos clases • 0 – noticia verdadera • 1 – noticia falsa – Procesado de Lenguaje Natural (NLP) • Uso de Redes Neuronales Recurrentes (LSTM (*)) – Dificultades: • Gran cantidad de información requerida • Enorme esfuerzo para etiquetado de muestras (*) A Survey on Natural Language Processing for Fake News Detection. Ray Oshikawa, Jing Qian, William Yang Wang; Nov 2018
  58. 58. 58 Autoencoders, GANS y otros chicos del montón Rooted CON 2019 Detección. La IA al servicio de lo bueno Análisis de sentimientos Detección de Fake News Extensiones y APIs para detección de noticias: • Legítimas • Fake News • Click Bait • Extremadamente sesgadas • Sátira https://github.com/fake- news-detector/fake-news- detector
  59. 59. 59 Autoencoders, GANS y otros chicos del montón Rooted CON 2019 Detección. La IA al servicio de lo bueno Análisis de sentimientos Detección de Fake News Extensiones y APIs para detección de noticias: • Verificación de dominios de origen como fuente verídica • Análisis de patrones en el contenido de la noticia • Búsqueda de keywords para mejorar la búsqueda, categorización y manejo de información https://machinebox.io/docs/ fakebox
  60. 60. 60 Autoencoders, GANS y otros chicos del montón Rooted CON 2019 Detección. La IA al servicio de lo bueno Patrones biométricos en vídeos WIFS2018_In_Ictu_Oculi: Exposing AI Generated Fake Face Videos by Detecting Eye Blinking Yuezun Li, Ming-Ching Chang and Siwei Lyu Computer Science Department, University at Albany, SUNY Uso de Redes Convolucionales Recurrentes para detectar vídeos falsos Figura 1: In Ictu Oculi paper
  61. 61. 61 Autoencoders, GANS y otros chicos del montón Rooted CON 2019 Detección. La IA al servicio de lo bueno Patrones biométricos en vídeos WIFS2018_In_Ictu_Oculi: Exposing AI Generated Fake Face Videos by Detecting Eye Blinking Yuezun Li, Ming-Ching Chang and Siwei Lyu Computer Science Department, University at Albany, SUNY Uso de Redes Convolucionales Recurrentes para detectar vídeos falsos Figura 2: In Ictu Oculi paper
  62. 62. 62 Autoencoders, GANS y otros chicos del montón Rooted CON 2019 Detección. La IA al servicio de lo bueno Patrones biométricos en vídeos Desenmascarando vídeos falsos con Machine Learning Irregularidades en el parpadeo del vídeo (*) Rutina que caracteriza: • Número de parpadeos • Velocidad de parpadeo [blink/s] • Duración del parpadeo y desviación típica [s] • Máxima y mínima separación entre parpadeos (*) Analysis of blink rate patterns in normal subjects. Bentivoglio AR, Bressman SB, Cassetta E, Carretta D, Tonali P, Albanese A. National Center for Biotechnology Information 1997 Nov;12(6):1028-34.
  63. 63. 63 Autoencoders, GANS y otros chicos del montón Rooted CON 2019 Detección. La IA al servicio de lo bueno Patrones biométricos en vídeos Desenmascarando vídeos falsos con Machine Learning Sencillo Clasificador Gaussiano • Velocidad de parpadeo [blink/s] • Duración del parpadeo [s] Muestras aleatorias para entrenamiento y testeo del modelo.
  64. 64. 64 Autoencoders, GANS y otros chicos del montón Rooted CON 2019 Detección. La IA al servicio de lo bueno Patrones biométricos en vídeos Desenmascarando vídeos falsos con Machine Learning Sencillo Clasificador Gaussiano Faceswapping Pablo → Miguel Lago Faceswapping S. Buscemi → J. Lawrence
  65. 65. 65 Autoencoders, GANS y otros chicos del montón Rooted CON 2019 Conclusiones 1. “ If everything seems to be the same and no distinctions are made, then we won’t know what to protect. We won’t know what to fight for. And we can lose so much of what we’ve gained in terms of the kind of democratic freedoms and market-based economies and prosperity that we’ve come to take for granted Barack Obama 2. Engañar a la gente sale ‘muy barato’ 3. La IA y la Ciberseguridad irán de la mano 4. Los límites de la IA no se han vislumbrado y la Ciberseguridad se verá fortalecida (y atacada) por ellos 5. El conocimiento y la concienciación son los pilares sobre los que nos apoyaremos (de nuevo) para protegernos
  66. 66. 66 Autoencoders, GANS y otros chicos del montón Rooted CON 2019 Muchas gracias@pablogonzalezpe @eblanco_h

×