Cours-Conférence - INHESJ - Session Sécurité Numérique 2018.
Les apports de l'intelligence artificielle à la cybersécurité et la sécurité de l'IA. Conférence du 02 mai 2018
Conférence Sécurité et Intelligence Artificielle - INHESJ 2018
1. Intelligence Artificielle :
Quels usages et quels apports en
matière de cybersécurité ?
Cycle Sécurité numérique – INHESJ
Thierry Berthier - 02 mai 2018
Chaire de Cyberdéfense & Cybersécurité Saint-Cyr
1
2. Plan
1 - L’intelligence Artificielle
Définitions (tentatives)
Historique de l’IA
Fondements de l’IA
2 - Apprentissage & réseaux de neurones artificiels
Principes et construction d’un RNA
Apprentissage supervisé et non supervisé
Capacités, cas d’usage, grands exemples
3 - L’IA comme moteur de la cybersécurité
Les tendances de la cybersécurité en 2018
Les apports de l’IA en cybersécurité
L’UBA - User Behavior Analytics , une tendance lourde
Quelques solutions du marché
Perspectives & prospective
2
4. Ce que déclarait Alan Turing en 1950…
“ Instead of trying to produce a program to simulate the adult mind, why
not rather try to produce one which simulates the child‘s? If this were
then subjected to an appropriate course of education one would obtain
the adult brain.
Presumably, the child brain is something like a notebook […]. Rather
little mechanism, and lots of blank sheets. […]. Our hope is that there is
so little mechanism in the child brain that something like it can be easily
programmed. The amount of work in the education we can assume, as
a first approximation, to be much the same as for the human child.
Computing machinery and intelligence
(Alan Turing, 1950, Mind, philosophy journal).”
4
6. Des tentatives pour définir l’IA …
L’expression IA apparaît en 1956 durant la conférence de Dartmouth
dans une première définition (qui s’avère très insuffisante
aujourd’hui) :
Définition de Marvin Minsky (1927 – 2016)
« L’intelligence artificielle est la science qui consiste à faire faire à
des machines ce que l’homme fait moyennant une certaine
intelligence ».
Critique : Cette définition présente une forte récursivité… La
« complexité » mentale est-elle comparable à la complexité
informatique ?
La définition de Minsky exclut des domaines majeurs de l’IA : la
perception (vision et parole), la robotique, la compréhension du
langage naturel, le sens commun.
6
7. Des tentatives pour définir l’IA …
L’IA est-elle le contraire de la « bêtise naturelle » ??
Une définition plus opérationnelle :
« L’IA est le domaine de l’informatique qui étudie comment faire
faire à l’ordinateur des tâches pour lesquelles l’homme est
aujourd’hui encore le meilleur. »
(Elaine Rich & Knight – Artificial Intelligence)
Les grandes dichotomies de l’IA subsistent :
- IA forte vs IA faible,
- Niveau de compétence vs niveau de performance,
- Algorithmique vs non algorithmique,
- Vision analytique vs vision émergente de la résolution de
problèmes,
- Sciences du naturel vs sciences de l’Artificiel. 7
8. Des tentatives pour définir l’IA …
IA forte : une machine produisant un comportement intelligent ,
capable d’avoir conscience d’elle-même en éprouvant des
« sentiments » et une compréhension de ses propres
raisonnements.
IA faible : Machine simulant ces comportements sans conscience
d’elle-même. Impossibilité liée au support « biologique » de la
conscience.
La question centrale : une « conscience » peut-elle émerger de
manipulations purement syntaxiques ?
C’est l’expérience de la Chambre chinoise imaginée par John Searle
en 1981. C’est aussi l’hypothèse (forte) de la pensée singulariste /
transhumaniste.
8
10. Compétence vs performance :
On doit tenir compte de la distinction introduite par Noam
Chomsky (MIT) : faire « comme » ou faire « aussi bien que ».
L’oiseau et l ’avion volent mais pas de la même façon…
Jeux d ’échecs : les grands champions réfléchissent différemment
de Deep Blue.
Jeu de Go : AlphaGo n’a pas la même approche que celle du
champion du monde .
Vision analytique vs vision émergente de la résolution de
problèmes :
D’un côté on procède par décomposition de problèmes en sous-
problèmes plus simples à résoudre (analyse procédurale, système
experts basés sur la logique des prédicats) et de l’autre, on réalise
une distribution des tâches à un ensemble d ’agents qui
interagissent (exemple : Ant Algorithm).
10
11.
12.
13. Les Hivers de l’IA - Source Rapport IA - Olivier Ezratty
14. L’histoire de l’IA est très récente… (60 ans)
Acte de naissance : 1956, Darmouth College (New Hampshire,USA)
John McCarthy (tenant de la logique) et Marvin Minsky (tenant
d’une approche par schémas).
Genèse autour de la notion de « machines à penser »
Comparaison du cerveau avec les premiers ordinateurs
Les grands acteurs de l’IA
Mc Culloch et Pitts : réseaux neuronaux artificiels (approche
physiologique),
Wiener : cybernétique,
Shannon : théorie de l’information,
Von Neumann : architecture d’un calculateur,
Alan Turing : théorisation des fonctions calculables par machine,
Kurt Gödel : théorème d’incomplétude (1931). 14
16. Les premiers programmes et systèmes de l’IA
Newell, Simon et Shaw proposent un premier programme de
démonstration de théorèmes en logique (1956!). Ils généralisent en
proposant le General Problem Solver qui progresse dans la
résolution en évaluant la différence entre la situation du solveur et
le but à atteindre.
Les programmes capables de jouer aux échecs : les premières idées
apparaissent en 1950 avec Shannon. La première victoire sur un
Maître en 1997 Deep Blue bat Kasparov.
Jeu de Go: AlphaGo remporte 4 victoires sur 5 au jeu de Go en 2016
Le test « d’intelligence » (Evans 1963) : trouver la suite « logique »
(analogique en fait) d’une série de figures.
Résolution de problèmes par propagation de contraintes ( Waltz
1975 ).
Dialogue en « langage naturel » : Eliza, Weizenbaum en 1965
Système SHRDLU Winograd en 1971. 16
17. L’époque des systèmes experts (1970-1980)
Les systèmes experts apparaissent au début des années 1970 et se
développent jusqu’à la fin des années 1980 :
DENDRAL en chimie, MYCIN en médecine, Hersay II en
compréhension de la parole, Prospector en géologie.
Apparaissent également les premiers générateurs de systèmes
Experts : NEXPERT System, CLIPS, …
Les langages de programmation pour l’IA
LISP (usa), PROLOG (France - Colmerauer),
SmallTalk (langage objet), YAFOOL et KL-ONE (langages de Frame),
langages de logique de description.
17
18. Période 70-80 : Systèmes Experts
• Chainage avant (Rules) ou arrière (Prolog)
• Dendral (1965), Mycin (1974); Prospector(1983)
Base de connaissance (BC)
mémoire à long terme
Base de faits (BF)
mémoire de travail
Moteur d’inférence
(MI)
18
20. Les années 1980 :
La période des espoirs déçus de l’IA
Recul de l’approche symbolique de l’IA :
Après des espoirs déçus : en particulier avec l’échec de la
généralisation de la théorie des micromondes et le constat du
manque de souplesse des systèmes experts (on parlerait aujourd’hui
de manque d’agilité). Ils ont pourtant enregistré des succès dans des
domaines bien spécifiques en particulier en informatique de gestion.
Renaissance de l’approche connexionniste :
- Systèmes multi-agents, concept de « vie artificielle »,
- Hopfield, mémoire autoassociative, 1982
- Rumelhart & McClelland, Parallel Distributed Processes, MIT Press,
1985
- Réseaux de neurones artficiel (RNA)
20
21. Les défis actuels de l’IA
- Attente d’une IA généraliste (?), autonome (?), auto-apprenante
- Elle doit devenir performante et adaptative sur des situations
dynamiques, changeantes, singulières.
- Elle doit être capable d’assister l’apprentissage humain.
- Elle doit être en mesure de gérer des dialogues entre « agents »
très hétérogènes.
Pour cela, il faut traiter la cognition comme une émergence dans
l’interaction avec l’environnement.
Ceci implique la conception d’une nouvelle génération de systèmes
informatiques qui vont privilégier une cognition située, distribuée,
émergente (prolifération d’agents intelligents et auto-apprentissage).
21
28. L’agent intelligent comme concept
fondamental de l’IA
- Le terme « action » est à comprendre au sens large. Cela peut
signifier « fournir un diagnostic ».
- La boucle systémique Agent/Environnement n’est pas
nécessairement fermée.
?
senseurs
"actionneurs "
AGENT
perception
ENVIRONNEMENT
"action"
Source – Mines ParisTech
28
30. Définition de l’apprentissage artificiel :
« Capacité d’un système à améliorer ses performances
via des interactions avec son environnement » .
Spécificité de l’apprentissage :
Conception et adaptation de l’agent « intelligent » par
analyse automatisée (statistique) de son environnement
et de son action dans cet environnement.
Exemple typique d’apprentissage artificiel :
L’agent « prédicteur »
30
31. Historique
Données
externes
PrédictionAGENT
PREDICTEUR
Modèle de l’agent prédicteur
Performance espérée : minimiser l’erreur de prédiction
Méthode : utiliser des données expérimentales pour déterminer
le modèle le plus correct du type :
Prédiction = F ( historique, données externes )
Source – Mines ParisTech
31
32. Définir précisément le type d’apprentissage
recherché
En particulier , il faut choisir le modèle de fonctions
mathématiques sous-jacent : splines, arbre de décision, réseau
de neurones, arbre d’expression, machine à noyau…
Il faut définir le type d’interactions avec l’environnement :
- apprentissage « hors-ligne » v.s. « en-ligne »
- apprentissage « supervisé » ou non, « par renforcement »
Il faut définir la mesure de performance du système : fonction
de coût, objectif, critère implicite, …
Et la façon de l’améliorer : famille d’algorithmes utilisés
gradient, résolution exacte, problème quadratique, heuristique.
32
38. Un système d’apprentissage est en général
composé :
- d’un modèle paramétrique,
- d’une façon d’interagir avec l’environnement,
- d’une « fonction de coût » à minimiser,
- d’un algorithme destiné à adapter le modèle, en
utilisant les données issues de l’environnement, avec
l’objectif d’optimiser la fonction de coût
38
40. APPRENTISSAGE SUPERVISÉ :
régression et classification
Régression Classification
(approximation) (yi = « étiquettes »)
?AGENT
Entrée = perception
Sortie adéquate (attendue)
entrée
sortie
points = exemples courbe = régression
entrée =
position point
sortie désirée =
classe ( =-1,+=+1)
Fonction
étiquette=f(x)
(et frontière de
séparation)
Source – Mines ParisTech
40
41. APPRENTISSAGE NON SUPERVISÉ
Deux situations sont possibles :
Ou bien on ne dispose que d’exemples de type « entrée », et on cherche à
obtenir un agent dont la « sortie » vérifie une certaine propriété (par exemple,
sortie obtenue identique ou « proche » pour des entrées « voisines »).
Ou bien on ne dispose que d’un environnement (réel ou simulé) dans lequel on
peut placer l’agent pour « évaluer » son comportement de façon à l’améliorer.
?AGENT
Entrée = perception
Sortie voulue INCONNUE
ENVIRONNEMENT
Source – Mines ParisTech
41
42. Apprentissage NON supervisé
à partir de données
Base d’exemples
de type « entrée seule» :
X= {x1, x2, … , xn}
(xid, souvent avec d « grand »)
H famille de
modèles mathématiques
[ chaque hH agent
avec comportement y=h(x) ]
Hyper-paramètres pour
l’algorithme d’apprentissage
ALGORITHME
D’APPRENTISSAGE
hH telle que
critère J(h,X)
soit vérifié ou
optimisé
Source – Mines ParisTech
42
45. Utilisation des RNA
En classification et catégorisation :
Pour répartir en plusieurs classes des objets,
Pour transformer des données quantitatives en informations qualitatives,
Pour la reconnaissance de formes, d’images, de sons, de textes.
En Recherche Opérationnelle :
Pour résoudre des problèmes dont on ne connaît pas la solution,
En apprentissage profond.
En Mémoire Associative :
Pour restituer ou reconstituer une donnée à partir d’informations
incomplètes et/ou bruitées.
45
46. Bref historique des RNA
James [1890] :
L’introduction du concept de mémoire associative
McCulloch & Pitts [1943]
A logical calculus of the ideas immanent in nervous activities
Introduction du concept de neurone formel
Les ordinateurs à codage binaire (Von Neumann)
L ’intelligence artificielle (calcul symbolique)
Les réseaux de neurones
Hebb [1949]
Organisation of behavior
le conditionnement comme propriété des neurones artificiels.
Les premières lois d’apprentissage.
46
47. Bref historique des RNA
Rosenblatt [1957] :
Présentation du perceptron comme premier modèle opérationnel
Capacité de reconnaissance d ’une configuration apprise
Utilisation pour traiter la tolérance aux bruits
Widrow [1960] :
Réseau Adaline, adaptive linear element
Minsky & Papert [1969] :
Une limite : impossibilité de classer des configurations non
linéairement séparables.
Abandon (financier) des recherches sur les RNA durant presque
une décennie…
47
48. Bref historique des RNA
[1967 - 1982] :
Mise en sommeil des recherches sur les RNA. Elles continuent
sous le couvert de domaines divers. Grossberg, Kohonen,
Anderson, ...
Hopfield [1982] :
Introduction du modèle des verres de spins
Boltzmann [1983] :
première réponse à la limite de Minsky et Papert
[1985] :
la rétro-propagation du gradient et le perceptron multicouche
Rumelhart, McClelland, … [1985] :
le groupe Parallel Distributed Processing
48
50. Le modèle mathématique d'un neurone artificiel
Un neurone est constitué d'un intégrateur qui effectue la somme
pondérée de ses entrées. Le résultat de cette somme est ensuite
transformé par une fonction de transfert f qui produit la sortie a du
neurone.
Les R entrées du neurone correspondent au vecteur P noté
traditionnellement en ligne. On utilise aussi la transposée.
W représente le vecteur des poids du neurone.
La sortie n de l'intégrateur est alors définie par une égalité écrite
sous forme matricielle. b désigne le « biais du neurone », c’est-à-
dire un facteur correctif décidé par tâtonnement. La sortie du
neurone est donnée par a = f(WtP-b)
50
51. Sortie n de l’intégrateur :
Sous forme matricielle :
b = biais du neurone
Sortie a du neurone :
Principe de
fonctionnement du
neurone
51
53. Les plus courantes
Les plus utilisées
fonction seuil
(ou "hard limit")
fonction sigmoïdefonction linéaire
Fonctions de transfert usuelles
53
54. Fonctions de transfert usuelles
Le modèle de RNA utilise une fonction d'activation
a = f(n) qui peut être définie de plusieurs manières
(souvent empiriques) en fonction des situations.
Les plus usuelles sont la fonction "seuil" ou "hard limit" en
anglais, la fonction "linéaire", et la fonction "sigmoïde".
54
56. Construction du réseau de neurones
Un réseau de neurones est un maillage constitué de plusieurs
neurones organisés généralement par couches.
wi,j désigne le poids de la connexion qui relie le neurone i à son
entrée j.
L'ensemble est représenté par une matrice des poids de connexion
W de dimension SxR et les S neurones sont représentés par un
vecteur de neurones.
56
57. Construction du réseau de neurones
Un réseau de neurones est constitué de plusieurs couches de
neurones qui sont connectées entre elles (Perceptron Multi-
Couches).
Les réseaux multicouches sont beaucoup plus puissants que les
réseaux simples à une seule couche. Les réseaux de neurones
exploitent en général deux ou trois couches mais parfois plus
(DeepFace de Facebook RN à 9 couches).
En utilisant deux couches et en employant une fonction
d'activation sigmoïde sur la couche cachée, il est possible d'
"entraîner" un réseau à produire une approximation de la plupart
des fonctions, avec une précision arbitraire.
57
60. La phase d'apprentissage d'un réseau de neurones se
décompose en cinq étapes :
Etape 1 - Présenter au réseau un couple entrée-cible.
Etape 2 - Calculer les prévisions du réseau pour les cibles.
Etape 3 - Utiliser la fonction d'erreur pour calculer la différence entre les prévisions
(sorties) du réseau et les valeurs cible. Reprendre les étapes 1 et 2 jusqu'à ce que
tous les couples entrée-cible aient été présentés au réseau.
Etape 4 - Utiliser l'algorithme d'apprentissage afin d'ajuster les poids du réseau de
telle sorte qu'il produise de meilleures prévisions à chaque couple entrée-cible.
Remarque : les étapes 1 à 5 constituent un seul cycle d'apprentissage ou itération.
Le nombre de cycles nécessaire pour entraîner un modèle de réseaux de neurones
n'est pas connu a priori mais peut être défini dans le cadre du processus
d'apprentissage.
Etape 5 - Répéter à nouveau les étapes 1 à 5 pendant un certain nombre de cycles
d'apprentissage ou d'itérations jusqu'à ce que le réseau commence à produire des
résultats suffisamment fiables (c'est-à-dire des sorties qui se trouvent assez
proches des cibles compte tenu des valeurs d'entrée). Un processus
d'apprentissage type pour les réseaux de neurones est constitué de plusieurs
centaines de cycles.
60
61. Les réseaux de neurones sont performants dans les
taches suivantes :
Traitement du signal,
Maîtrise des processus,
Robotique,
Classification,
Pré-traitement des données
Reconnaissance de formes,
Analyse de l'image et synthèse vocale,
Diagnostics et suivi médical,
Marché boursier et prévisions,
Demande de crédits ou de prêts immobiliers.
61
63. Deep Learning et Réseaux de Neurones
On enregistre les premiers succès du Deep Learning (apprentissage
profond) en 2006. Les réseaux de neurones accompagnent les
avancées du Deep Learning .
Ces réseaux sont multicouches. Ils effectuent une série de
traitements hiérarchisés dans le but de classer des objets en
catégories, sans critères prédéfinis. Il s'agit d'un apprentissage non
supervisé.
Google, Facebook, IBM les utilisent partout aujourd’hui…
Donnons quelques exemples :
63
64. DeepFace de Facebook
Facebook a développé DeepFace, une
application de reconnaissance de visages qui
atteint des taux de réussite de plus de 97 %.
DeepFace utilise un réseau de neurones à 9
couches.
64
66. Le champion Sud Coréen Lee Sedol affrontant l’IA AlphaGo au jeu de GO en 2016
67. En 2016, AlphaGo, l’intelligence artificielle développée par Google
DeepMind a battu à 4 reprises le champion du monde de jeu de Go,
Lee Sedol (5 manches à 0 en janvier contre le champion européen
et 4 manches à une en mars contre Lee Sedol).
Avec ses 10 puissance 600 combinaisons possibles, le jeu de Go
reste beaucoup plus complexe que le jeu d’échecs.
AlphaGo a utilisé les techniques du Deep Learning pour réaliser cet
exploit.
86. En 2016, l’Intelligence Artificielle a surpassé
l’homme dans plusieurs domaines.
Ces domaines étaient jusque là réservés à la
seule expertise humaine.
88. Pour la première fois, un robot chirurgien a opéré de manière
totalement autonome . Il est intervenu pour recoudre deux parties
d’un intestin de cochon.
Les chercheurs responsables de ce programme ont publié leurs
résultats en mai 2016 dans la revue Translational Medecine.
Le robot autonome a opéré avec plus de précision et d’habileté
que les chirurgiens humains et que les robots pilotés
manuellement par l’homme sur le même type d’intervention.
Des technologies d’imagerie intelligente et des marqueurs
fluorescents ont permis au robot de s’adapter aux tissus mous et
de réaliser des sutures et des connexions optimales.
La phase de test va se poursuivre durant deux ans avant une
intervention humaine.
89. Le « nouveau Rembrandt » peint par une Intelligence Artificielle
90. Le 5 avril 2016, un nouveau Rembrandt a été dévoilé…
Ce tableau « à la manière de Rembrandt » a été entièrement
réalisé par une IA créée par Microsoft, la banque ING, l’Université
de Delft et deux musées néerlandais .
L’IA a d’abord analysé des centaines de tableaux de Rembrandt
puis a déterminé les caractéristiques dominantes du Maître. Elle a
ensuite piloté une imprimante 3D pour réaliser cette œuvre inédite
en respectant parfaitement le style de Rembrandt.
92. SeaHunter, navire autonome de 45 mètres, transocéanique, dédié à
la lutte anti-sous-marine – En phase de test depuis 2016 -
Programme Darpa sur l’autonomie.
97. La Course à l’IA
Google, IBM, Twitter, Intel, Apple, Yahoo, Salesforce, Samsung, sont
en concurrence depuis 2011 pour racheter les startups d’IA les plus
innovantes.
Depuis 2011, 140 startups et entreprises travaillant dans le secteur
de l’intelligence artificielle avancée ont été rachetées , dont 40
acquisitions en 2016 !
98.
99. Les leaders de la recherche en Machine Learning
La Chine et les Etats-Unis sont leaders dans la recherche en Machine
Learning / Deep Learning.
La Chine vient de prendre la tête du classement des pays en terme
de publications de recherche en Machine Learning / Deep Learning
et des citations de ces articles.
Barack Obama a fait plusieurs interventions rappelant l’importance
stratégique de l’IA dans la future croissance américaine. Plusieurs
études prospectives sur l’IA ont été lancées par son gouvernement.
https://www.whitehouse.gov/sites/default/files/whitehouse_files/microsites/ostp/NSTC/n
ational_ai_rd_strategic_plan.pdf
100.
101.
102. Le rapport France IA N°1 (2016)
La Mission Villani sur l’IA (2017 – 2018)
Le Hub National France IA (2018)
L’IA en France
103.
104. Les grandes lignes du rapport VILLANI sur l’IA
-Une IA écologique au service d’une économie durable
-Une recherche agile et diffusante
-Une politique économique de l’IA ambitieuse
-Une politique des données adaptée
-Anticiper et maitriser les impacts de l’IA sur le travail et
l’emploi.
-Quelle éthique de l’IA ? Développer une IA éthique
- Mixité, diversité et IA : agir en faveur de l’égalité
105. Les grandes lignes du rapport VILLANI sur l’IA
-Créer un grand instrument de l’IA, label fédérateur, lieu
de rencontre, réseau interdisciplinaire en lien étroit avec
le monde industriel et le monde académique.
-Donner des moyens de calculs à la recherche publique
-Rendre plus attractives les carrières académiques
-Fluidifier les échanges académie / industrie
-Utiliser l’IA pour la prévention des risques, l’agriculture,
la biodiversité.
- Utiliser l’IA pour réduire la dépense énergétique, pour
optimiser la production, la distribution, les transports, le
logement.
106. -En France, l’IA est souvent confrontée aux peurs
irrationnelles, aux technophobies, aux collapsologues, à
une écologie radicale, aux idéologies
technoconservatrices, aux barrières religieuses.
L’IA est parfois fantasmée :
- pas d’IA forte, pas de succès au test de Turing
-Technoprophéties sans fondement rationnel
-Tromperies (Chatbots, robot humanoïde sans IA)
- BRUIT BUZZIATIQUE
107. 3 - L’IA comme moteur de la
cybersécurité
107
118. Pour détecter les menaces, les mécanismes de sécurité
« traditionnels» se basent aujourd’hui sur des signatures
ou sur des scénarios de malveillance pré-établis, donc
rigides et peu ou pas adaptés aux menaces en évolution
permanente.
Les solutions de cybersécurité classiques sont créées
autour de règles utilisées pour détecter les vulnérabilités
et les activités suspectes. Elles sont en général insensibles
aux APT.
Ces systèmes ont atteint leurs limites fonctionnelles !
L’IA permet de dépasser ces limites.
118
124. Fonctionnement d’une solution UBA
Une solution utilisant l’UBA apprend, sans pré-requis de modèle, à
partir de « l’historique de vie » d’un système puis catégorise et
sépare les comportements « anormaux » de ceux qui sont
conformes aux standards de sécurité.
L’UBA est ainsi en mesure de produire des alertes sur des
événements susceptibles de créer un contexte de vulnérabilité.
Le fonctionnement de l’UBA repose sur l’apprentissage statistique.
Celui-ci exploite les données massives qui demeuraient jusqu’à
présent sous-employées ou seulement partiellement utilisées
comme les bases de logs des systèmes connectés.
124
125. Fonctionnement d’une solution UBA
Les outils UBA exploitent massivement les rapports d’activité, les
fichiers de logs et le SIEM (Security Information Management
System) en tant que base d’apprentissage.
Ils définissent des motifs typiques correspondant statistiquement à
des comportements à risque.
Les solutions UBA contiennent souvent plusieurs moteurs de
détection d’anomalies, complémentaires, qui collaborent pour
couvrir un large spectre de menaces. On y trouve en général un
moteur de détection de signal faible, un moteur de corrélation
métier issu de l’expertise d’ingénieurs en cybersécurité complétés
par une base de connaissance globale régulièrement mise à jour à
partir des retours d’expériences-clients.
125
126. Fonctionnement d’une solution UBA
Ces moteurs travaillent sur une base (big data) souvent
externalisée qui contient les données d’entrées utilisées ensuite
lors de la phase d’apprentissage.
Ces données proviennent de sources diverses : SIEM et logs via les
connecteurs SIEM, des messages AMQP (Advanced Message
Queuing Protocol) et des requêtes JSON (JavaScript Object
Notation).
Après analyse, le système UBA renvoie les alertes, les seuils et les
sources d’anomalies par logs, Syslogs, AMQP et XML/JSON. Les
règles métiers peuvent être implémentées et suivies dans le
corrélateur métier (cf; Technologie Reveelium développée par
ITrust).
126
127. Ce que détecte une solution UBA
L’IHM des moteurs UBA permet d’afficher les corrélations, de suivre
les déviances et d’instaurer un dialogue entre l’utilisateur et son
système de détection. Les anomalies affichées peuvent être des
virus connus, des malwares furtifs, des comportements à risque, de
la fraude, une fuite de données, une malveillance numérique…
Les solutions UBA offrent un spectre de détection beaucoup plus
large qu’un système de supervision classique ou qu’un antivirus.
Elles permettent ,entre autres, l’analyse forensique et l’investigation
après une compromission. Elles identifient l’attaque et son
cheminement.
Elles sont en mesure de détecter une utilisation frauduleuse du
système d’information et notamment l’usurpation de droits.
127
128. Elles réagissent à la perte et au vol de données et se montrent
efficaces face à des attaques de type APT.
Elles peuvent prédire certains crashs entraînant une indisponibilité
de la production et sont utiles pour respecter la conformité aux
réglementations et aux meilleures pratiques.
Elles détectent les pertes et fraudes financières ainsi que les
attaques sur l’image de marque. L’apprentissage statistique permet
souvent de diviser par 50 les temps d’analyse des données par les
superviseurs !
Pour finir, on notera que lorsque la solution UBA est développée en
Europe, sa technologie n’est pas soumise au Patriot Act et les
données des clients restent confidentielles, conformément aux
réglementations européennes.
128
129. Ce que l’UBA (2016) aurait pu éviter …
Une solution UBA aurait été en mesure de détecter les
agissements de Snowden avant qu’il ne réalise ses vols de
données.
Cette solution UBA aurait également été capable de
détecter la propagation des virus et APT récents (Target,
Sony,…) avant les extractions de données confidentielles
des entreprises concernées.
129
131. Les points d’intérêts relatifs aux apports de l’IA en
cybersécurité :
détection automatique des menaces, SIEM UBA (User
Behavior Analytics), détection automatique de
vulnérabilités, cybersécurité cognitive, automatisation de
la réponse à incidents, cyber-résilience, cyber threat
intelligence, security by design, preuve de code.
Cette thématique adresse les technologies en production
ou en phase de R&D faisant appel à des techniques de
l’IA (Machine Learning, Traitement automatique du
langage naturel, moteurs de règles, catégorisation de
malwares).
132. S1
Cyber-résilience - Grâce à l’IA, peut-on aller vers des systèmes auto-adaptatifs capables de se reconfigurer automatiquement face à des
attaques de plus en plus sophistiquées ?
S2
Détection et analyse des malwares – Les antivirus existants ne sont pas assez robustes pour détecter de nouveaux virus. Les techniques
d’analyse sémantique du code des malwares via l’IA, ouvrent la voie à une détection plus dynamique et plus efficace.
S3
Ransomware – Vers une future montée en puissance grâce à l’IA ? 2017 a été l’année de propagation de ransomwares à l’échelle
mondiale (Wannacry, NotPetya,…). Comment l’IA peut aider à la fois l’attaquant et le défenseur ?
S4
Cybersécurité cognitive – Comment l’IA révolutionne la détection de la menace et peut automatiser la réponse à incidents ? IBM
Watson Cybersecurity, précurseur en cybersécurité cognitive.
S5
Le facteur humain et l’IA – "Le maillon faible de la chaîne de sécurité du système d’information se situe entre la chaise et le clavier".
Comment l’IA peut être utilisée pour réduire le risque associé au facteur humain ? Ingénierie sociale, formation des collaborateurs, prise
de conscience de la menace et des biais cognitifs qui poussent au clic destructeur.
S6
SOC, gestion de crise et IA – Le SOC (centre d'opérations de sécurité) est chargé de la surveillance du réseau, de la gestion des
vulnérabilités de la détection et de la classification des évènements de sécurité. Le CSIRT (centre l'alerte et de réaction aux attaques
informatiques) gère la réponse à incidents, la veille et la gestion de crise. Comment l’IA transforme-t-elle les activités du SOC et du CSIRT
?
S7
Automatisation de la détection de la menace – Les succès de l’UBA (User Behavior Analytics) dans la détection des APT (Advanced
Persistent Threat), des attaques furtives et des menaces internes.
133. S8
PCA Plan de Continuité d’activité et PRA Plans de reprise d’activité : les apports de l’IA dans le rétablissement ou le maintien de l’activité
de l’entreprise.
S9
Cyber Threat Intelligence et IA : Analyse et caractérisation des attaques passée, surveillance directe des attaquants potentiels, veille
proactive, comment l’IA transforme l’activité et la gouvernance SSI ?
S10
Security by Design et IA – Le rôle que l’IA va jouer dans la construction de systèmes plus robustes. L’avantage compétitif du « security by
design ».
S11
Le « Hack Back » ou « Reverse Hacking » l’autodéfense automatisable grâce à l’IA – Vers une escalade ? Vers une limitation légale ?
S12
La protection du périmètre intérieur via l’IA – l’analyse comportementale et le contrôle d’accès géré par une IA.
S13
Simulation d’attaques et d’infractions via l’IA – Lorsque l’IA transforme les Pentest classiques.
S14
Bots malveillants et « Credential Abuse » - rôle de l’IA pour le construction et la catégorisation bot malveillant/bot bienveillant
S15
IOT, IA et sécurité des systèmes – En 2020, on comptera plus de 20 Milliards de systèmes physiques, virtuels ou cloud connectés dont
certains dotés d’IA. Quelle sécurité pour ces systèmes ?
S16
L’attribution des attaques – Quels sont les apports de l’IA dans l’analyse du mode opératoire de l’attaquant ?
S17
Cyber Kill Chain - jusqu’où peut-on aller grâce à l’IA ?
S18
Botnets et attaques DDoS – Comment l’IA va augmenter leur puissance.
S19
Machine learning pour combattre la fraude et les abus – détection de spams et de phishing.
S20
Systèmes immunitaires et IA – agir en amont des menaces. Quels apports de l'IA ?
136. La sécurité (ou l’insécurité) des plateformes et des systèmes
s’appuyant sur des processus d’apprentissage automatique
appliqués aux images, sur du NLP (Natural Language Processing)
et sur tout moteur de règles embarquant de l’IA. Ce domaine
nouveau et récent de l’(in)sécurité de l’IA s’étend également à
l’intégrité, à la traçabilité des données et à leur certification. Les
récentes recherches sur les attaques par « Adversarial
Examples » ont montré qu’il était possible de leurrer un système
d’apprentissage automatique (le célèbre cas Panda – Gibbon).
https://arxiv.org/abs/1712.07107
https://www.kaggle.com/c/nips-2017-targeted-adversarial-attack
La question de la sureté des données d’apprentissage devient
centrale. Symétriquement, les possibilités nouvelles de
construction d’architectures de données fictives à haut niveau de
vraisemblance remettent en cause la sécurité de l’information.
137. Sujets et centres d’intérêt
S1
La confiance de l'utilisateur face aux systèmes autonomes civils et la cybersécurité (voiture, navire, avions autonomes)
S2
La défiance de l'utilisateur face aux systèmes autonomes civils et la cybersécurité.
S3
Les attaques par exemples contradictoires - Leurrer une classification automatique d'images.
S4
Les architectures de données fictives produites par l'IA et pour l'entrainement de l'IA
(profils fictifs, images fictives produites par une IA, vidéo fictive produite par une IA contextes fictifs, utilisation en phase initiale de
cyberattaque de type APT.
S5
Détecter le faux, certifier un document, une image, une vidéo sans modification ou traitement via une IA ? "image bio", "vidéo bio", "texte
bio" : des problématiques qui engagent la sécurité.
S6
Les données d'apprentissage : comment mesurer leur qualité, leur traçabilité, comment les certifier ?
S7
Vulnérabilité des agents conversationnels, détournements des Chatbots
S8
IA et Défense
Sécurité des systèmes d'armes embarquant de l'IA
S9
IA et Défense
Sécurité des systèmes semi-autonomes et autonomes, problématiques spécifiques des SALA. Dronification des matériels.
138. S10
IA et Défense
Robots armés autonomes : Security by Design, Ethical by Design ?
S11
IA et Défense
Sur le risque de détournement de systèmes armés semi autonomes et autonomes.
S12
IA et Défense
Sur le risque d'influence de systèmes d'aides à la décision militaires
139. Les attaques FDIA sur des
composantes de Machine Learning
(False Data Injection Attacks)
140.
141. Exemple 1 : FDIA sur des composantes ML de Smart Grids
142. Exemple 2 : FDIA sur des composantes ML de contrôle aérien
ADS-B
144. Les réseaux orientés « Contenus » ouvrent de nouvelles
perspectives de sécurisation by design, sans apport
d’une composante de supervision centralisée, souvent
coûteuse en ressources.
La sécurité est distribuée via des agents et des
composants ML sur les composants du réseau sans
ajout d’un contrôleur centralisé.
Cette approche sera utile pour les réseaux IoT, les
réseaux très mobiles, les réseaux disposant de peu de
connexion ou de puissances de calculs, les réseaux
tactiques militaires ,…
152. Quelques exemples de solutions
proposant l’approche User Behavior
Analytics (UBA)
SPLUNK – solution UBA
ITRUST - solution Reveelium
DARKTRACE
SENTRYO – solution ICS Cybervision
THALES – Sonde Cybels Sensor
CISCO TALOS
BALABIT – BLINDSPOTTER
Les succès d’IBM en cybersécurité
152
153. Splunk – solution UBA
Société américaine (San Francisco) développe une solution appelée
UBA (User Behavior Analytics) qui se veut « clé en main ». Elle
permet de détecter des menaces connues, inconnues et
dissimulées via l’apprentissage automatisé.
Avant l’UBA, les solutions travaillaient sur la base de règles et de
codification de tous les scénarios qui pouvaient aboutir à une
anormalité. Les limites sont atteintes : impossible de tout codifier
et un taux extrêmement élevé de faux positifs d’autre part. L’UBA
fournit aujourd’hui une approche complémentaire qui permet de
détecter les comportements déviants.
Splunk vient de racheter la start-up Caspida spécialisée dans les
technologies de machine learning.
153
166. Darktrace
Start-up britannique fondée en 2013, valorisée à 100 millions de
dollars, utilise des technologies d’UBA issues de recherches menées
à l’Université de Cambridge. Les solutions Darktrace construisent
un modèle comportemental à partir du flux généré par les
machines et les usages des employés. Ce modèle apprend tout au
long de la durée de vie du projet. Il fonctionne comme un système
immunitaire biologique qui devient performant pour détecter les
APT.
La solution Darktrace utilise environ 300 paramètres (heures, IP de
connexion des utilisateurs,…) pour établir un modèle
comportemental dont la première phase d’apprentissage dure
environ une semaine. Le réseau est visualisable en 3D, en temps
réel. Des solutions existent pour la bureautique et pour les
systèmes industriels.
166
172. Sentryo ICS Cybervision (startup française)
La start-up lyonnaise Sentryo développe la solution ICS CyberVision
dédiée à la sécurisation « UBA » des sites industriels critiques
SCADA. Sentryo rapproche IT et OT. Ses solutions permettent de
dépasser le périmètre classique d’un système, avec une approche
plus globale de sa cybersécurité.
https://www.sentryo.net/fr/
172
174. Thales –
Sonde de détection Cybels Sensor
Le groupe Thales développe sa sonde de détection
d’intrusion Cybels Sensor qui intègre l’UBA pour détecter
les évènements anormaux en complément des signatures
d’attaques classiques.
https://www.thalesgroup.com/sites/default/files/asset/document/cybels_white_p
aper_uk_08042013.pdf
174
183. Les succès d’IBM en matière de cybersécurité
IBM QRADAR : la solution SIEM
IBM RESILIENT :
la solution de réponse automatisée à incidents et aux
cyberattaques
IBM Watson bientôt au service de la cybersécurité
183
195. Les programmes DARPA en cybersécurité & UBA
http://www.darpa.mil/program/space-time-analysis-for-cybersecurity
http://www.darpa.mil/program/cyber-grand-challenge
Open Catalog : http://opencatalog.darpa.mil/ADAMS.html
195
200. Eléments de prospective
Organisée par la DARPA (l'Agence pour les projets de recherche avancés de
défense supervisée par le département de la Défense des Etats-Unis), la phase
finale du Cyber Grand Challenge vient de se dérouler, les 6 et 7 août 2016, à Las
Végas. Le CGC a opposé sept systèmes robotisés développés durant trois années
par sept équipes finalistes dans la détection automatique de vulnérabilités
logicielles et réseaux présentes dans le système adverse et la protection de son
propre environnement numérique. Conçu avant tout comme un démonstrateur,
le tournoi CGC a prouvé qu'il était désormais possible de concevoir des agents
logiciels capables de scanner de façon automatique des codes adaptés puis de
détecter certaines de leurs vulnérabilités. La compétition a eu lieu dans un
environnement numérique spécifique dans lequel se sont affrontés quinze
supercalculateurs détecteurs de vulnérabilités informatiques devant un comité
d'arbitrage qui a finalement désigné l'équipe ForAllSecure comme gagnante du
Challenge CGC.
201. Eléments de prospective
La Darpa souhaite désormais développer des agents logiciels "chasseurs de
bugs" ouvrant ainsi la voie à une cybersécurité automatisée, industrialisée,
exploitant massivement les techniques de l'intelligence artificielle. Les
démonstrateurs finalistes du CGC doivent évoluer à très court terme vers la
production d'agents "Bug-Hunting Bots" qui seront déployés sur l'ensemble des
réseaux sensibles. Ces futurs agents autonomes pourront être utilisés autant en
mode défensif qu'en version offensive afin de détecter certaines des
vulnérabilités d'un système adverse. Cette évolution vers une cyberdéfense
"robotisée" se trouve toutefois limitée par un résultat mathématique lié au
problème de l'arrêt (Turing) qui prouve qu' il n'existe pas d'analyseur universel
capable de décider sans jamais se tromper, pour tout programme, si ce
programme est sûr ou non. Cette limite théorique permet d'affirmer que la
cybersécurité absolue n'existe pas... Cela dit, une telle borne n'interdit pas le
développement de systèmes de détections dont la performance pourrait
atteindre 90 ou 95% de l'ensemble des vulnérabilités.
206. Eléments de prospective
Lorsque deux IA installent un protocole cryptographique ….
Article (octobre 2016) de Google Brain
https://arxiv.org/pdf/1610.06918v1.pdf
208. Eléments de prospective
" Alice devait envoyer un message à Bob, qui devait réussir à le déchiffrer sans
qu’Eve ne parvienne à écouter le message. L’expérience a dépassé toutes les
attentes, : les IA « ne sont en général pas destinées à être bonnes en chiffrement
» expliquent les chercheurs de Google. Et les deux I.A. n’avaient appris d’aucun
algorithme de chiffrement spécifique. Les deux IA ont mis du temps avant de
parler le même langage. Alice a ainsi envoyé plusieurs messages chiffrés de 16
bits à Bob qui devait les déchiffrer (tout comme Eve). Seul Bob détenait la clé de
déchiffrement. Il aura fallu pas moins de 10 000 messages avant que Bob ne
réussisse à reconstruire le message en clair. Dans le même temps, Eve, qui faisait
de moins en moins d’erreurs, a vu son sort se compliquer à mesure que les IA
réussissaient à communiquer entre elles. Au bout de 15 000 messages, c’était
chose faite et Eve n’était plus en mesure d’écouter la conversation. Reste à
comprendre comment l’algorithme de chiffrement s’est constitué. »
(journaldugeek.com)
211. Eléments de prospective
(Article Wikipedia) : Coq est un assistant de preuve utilisant le langage
Gallina, développé par l'équipe PI.R2 d'Inria au sein du laboratoire PPS du
CNRS et en partenariat avec l'École polytechnique, le CNAM, l'Université
Paris Diderot et l'Université Paris-Sud (et antérieurement l'École normale
supérieure de Lyon).Le nom du logiciel (initialement CoC) est
particulièrement adéquat car : il est français ; il est fondé sur le calcul des
constructions (CoC abrégé en anglais) introduit par Thierry Coquand. Dans la
même veine, son langage est Gallina et Coq possède un wiki dédié, baptisé
Cocorico!. Coq a été récompensé du ACM SIGPLAN Programming Languages
Software 2013 Award. Coq est fondé sur le calcul des constructions, une
théorie des types d'ordre supérieur, et son langage de spécification est une
forme de lambda-calcul typé. Le calcul des constructions utilisé dans Coq
comprend directement les constructions inductives, d'où son nom de calcul
des constructions inductives (CIC).
212. Eléments de prospective
(Article Wikipedia) : Coq a été récemment doté de fonctionnalités
d'automatisation croissantes. Citons notamment la tactique Omega qui
décide l'arithmétique de Presburger. Plus particulièrement, Coq permet de
manipuler des assertions du calcul ; de vérifier mécaniquement des preuves
de ces assertions ; d'aider à la recherche de preuves formelles ; de
synthétiser des programmes certifiés à partir de preuves constructives de
leurs spécifications. C'est un logiciel libre distribué selon les termes de la
licence GNU LGPL.Parmi les grands succès de Coq, on peut citer le
théorème des quatre couleurs : la démonstration complètement mécanisée
a été terminée en 2004 par Georges Gonthier et Benjamin Werner ; le
théorème de Feit et Thompson : la preuve du théorème a été terminée par
Georges Gonthier et son équipe en septembre 2012 ; le compilateur
CompCert C : un compilateur optimisant le C qui est en grande partie
programmé et prouvé en Coq.
213. Formons des Data scientist !
La montée en puissance de l’IA dans les solutions
de cybersécurité fait appel à de nouvelles
expertises croisant les compétences :
Mathématiciens , statisticiens, scientifiques des
données…
La pénurie de data scientist sur le marché de
l’emploi en Europe est aujourd’hui une réalité …
213
215. Bibliographie - Intelligence Artificielle
Harry Henderson, Artificial Intelligence, Mirrors for the Mind, 2007, Milestones
in Discovery and invention.
Fundamentals of the New Artificial Intelligence , Neural, Evolutionary, Fuzzy and
More, Toshinori Munakata, Second Edition, 2008, Springer.
Max Lungarella, Fumiya Iida, Josh Bongard, Rolf Pfeiffer, 50 Years of Artificial
Intelligence.
Da Duan, Paolo F Fantoni, Martine De Cock, Mike Nachtegael Etienne E Kerre,
Applied Artificial Intelligence, 2006.
Keith Frankish, William M. Ramsey, The Cambridge Handbook of Artificial
Intelligence.
Hsinchun Chen, Christopher CN Yang, Intelligence and Security Informatics,
Studies in Computational Intelligence.
215
216. Bibliographie - Réseaux de neurones artificiels
Xingui He, Shaohua Xu, Process Neural Networks : Theory and Applications,
2010.
Haykin S, Neural Networks, 2ed, 1999.
Robert A. Dunne, A statistical approach to neural networks for pattern
recognition, 2007.
Dreyfus G. , Neural Networks : Methodology and Applications, Springer,
2005.
Picton P. , Neural Networks, 2002.
Fyfe C. , Artificial Neural Networks and Information Theory, 2000.
Bishop, C. (1995). Neural Networks for Pattern Recognition. Oxford:
University Press.
Carling, A. (1992). Introducing Neural Networks. Wilmslow, UK: Sigma
Press.
216
217. Bibliographie - Réseaux de neurones artificiels
Fausett, L. (1994). Fundamentals of Neural Networks. New York: Prentice
Hall.
Haykin, S. (1994). Neural Networks: A Comprehensive Foundation. New
York: Macmillan Publishing.
Kohonen, T. (1982). Self-organized formation of topologically correct
feature maps. Biological Cybernetics, 43:59-69.
Patterson, D. (1996). Artificial Neural Networks. Singapore: Prentice Hall.
Ripley, B.D. (1996). Pattern Recognition and Neural Networks. Cambridge
University Press.
Rumelhart, D.E., and J.L. McClelland (1986), Parallel Distributed Processing,
Volume 1. The MIT Press. Foundations.
Tryon, R. C. (1939). Cluster analysis. New York: McGraw-Hill.
217
218. Bibliographie - Machine Learning & Cybersecurity
Yihong Gong, Wei Xu, Machine Learning for Multimedia Content Analysis
(Multimedia Systems and Applications), 2007.
John D. Kelleher , Brian Mac Namee , Aoiff D’Arcy , Fundamentals of Machine
Learning for Predictive Data Analytics : Algorithms, Worked Examples, and Cases
Studies.
Sumeet Dua, Xian Du, Data Mining and Machine Learning in Cybersecurity, 2011.
Drew Conway, John Miles White, Machine Learning for Email : Spam filtering and
Priority Inbox , 2011.
Drew Conway, John Miles White, Machine Learning for Hackers, 2012.
Dehmer Matthias, Subhash C. Basak, Statistical and Machine Learning
Approaches for Network Analysis, Wiley, 2012.
218