Ce diaporama a bien été signalé.
Nous utilisons votre profil LinkedIn et vos données d’activité pour vous proposer des publicités personnalisées et pertinentes. Vous pouvez changer vos préférences de publicités à tout moment.

Cours Conférence INHESJ - IA et cybersécurité

1 246 vues

Publié le

Cours conférence de l'INHESJ dans le cadre de la session 2017 "Sécurité numérique", organisée à l'Ecole Militaire, le 19 juin 2017. Titre du cours : Les apports de l'intelligence artificielle en cybersécurité - cyberdéfense.
Durée : 3 heures

Publié dans : Technologie
  • You have to choose carefully. ⇒ www.HelpWriting.net ⇐ offers a professional writing service. I highly recommend them. The papers are delivered on time and customers are their first priority. This is their website: ⇒ www.HelpWriting.net ⇐
       Répondre 
    Voulez-vous vraiment ?  Oui  Non
    Votre message apparaîtra ici
  • You might get some help from ⇒ www.WritePaper.info ⇐ Success and best regards!
       Répondre 
    Voulez-vous vraiment ?  Oui  Non
    Votre message apparaîtra ici
  • Überprüfen Sie die Quelle ⇒ www.WritersHilfe.com ⇐ . Diese Seite hat mir geholfen, eine Diplomarbeit zu schreiben.
       Répondre 
    Voulez-vous vraiment ?  Oui  Non
    Votre message apparaîtra ici

Cours Conférence INHESJ - IA et cybersécurité

  1. 1. Intelligence Artificielle : Quels usages et quels apports en matière de cybersécurité ? Cycle Sécurité numérique – INHESJ Thierry Berthier - 19 juin 2017 Chaire de Cyberdéfense & Cybersécurité Saint-Cyr 1
  2. 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 chiffres de la cybersécurité en 2016 Les apports de l’IA en cybersécurité L’UBA - User Behavior Analytics , une tendance lourde Quelques solutions du marché Perspectives & prospective 2
  3. 3. 1 - L’intelligence artificielle 3
  4. 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
  5. 5. 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. 5
  6. 6. 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. 6
  7. 7. 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. 7
  8. 8. Le Test de Turing (1950) 8
  9. 9. 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). 9
  10. 10. 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). 12
  11. 11. La machine de Turing universelle (1936) 13
  12. 12. 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. 14
  13. 13. 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. 15
  14. 14. 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) 16
  15. 15. Dès 1970, apparaît le concept de Réseaux sémantiques 17
  16. 16. 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) 18
  17. 17. 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). 19
  18. 18. 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 20
  19. 19. Source – Mines ParisTech 21
  20. 20. 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 » 22
  21. 21. 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 23
  22. 22. 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. 24
  23. 23. 2 - Apprentissage & Réseaux de Neurones Artificiels (RNA) 25
  24. 24. 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 26
  25. 25. Apprentissage supervisé Exemples entrée-sortie (x1,y1), (x2,y2), … , (xn, yn) H famille de modèles mathématiques Paramètres pour l’algorithme d’apprentissage ALGORITHME D’APPRENTISSAGE hH Source – Mines ParisTech 27
  26. 26. 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 28
  27. 27. 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 29
  28. 28. Apprentissage NON supervisé à partir de données Base d’exemples de type « entrée seule» : X= {x1, x2, … , xn} (xid, souvent avec d « grand ») H famille de modèles mathématiques [ chaque hH  agent avec comportement y=h(x) ] Hyper-paramètres pour l’algorithme d’apprentissage ALGORITHME D’APPRENTISSAGE hH telle que critère J(h,X) soit vérifié ou optimisé Source – Mines ParisTech 30
  29. 29. axone corps cellulaire dendrite synapse Réseaux de neurones artificiels (RNA) Le modèle du neurone biologique 31
  30. 30. Neurones biologiques 32
  31. 31. 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. 33
  32. 32. 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. 34
  33. 33. 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… 35
  34. 34. 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 36
  35. 35. Le modèle mathématique d'un neurone artificiel Entrées du neurone Poids du neurone 37
  36. 36. 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) 38
  37. 37. Sortie n de l’intégrateur : Sous forme matricielle : b = biais du neurone Sortie a du neurone : Principe de fonctionnement du neurone 39
  38. 38. Représentation formelle du neurone 40
  39. 39. Les plus courantes Les plus utilisées fonction seuil (ou "hard limit") fonction sigmoïdefonction linéaire Fonctions de transfert usuelles 41
  40. 40. 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". 42
  41. 41. Construction du réseau de neurones 43
  42. 42. 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. 44
  43. 43. 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. 45
  44. 44. Représentation du réseau 46
  45. 45. Le perceptron multi-couches 47
  46. 46. 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. 48
  47. 47. 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. 49
  48. 48. 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 : 50
  49. 49. 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. 51
  50. 50. 52
  51. 51. Le champion Sud Coréen Lee Sedol affrontant l’IA AlphaGo au jeu de GO en 2016
  52. 52. 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.
  53. 53. AlphaGo – DeepMind Google 55
  54. 54. AlphaGo – DeepMind Google 56
  55. 55. 57
  56. 56. Google Car & Deep Learning 58
  57. 57. Dans les rêves des couches profondes des réseaux de neurones de Google… 59
  58. 58. Dans les rêves des couches profondes des réseaux de neurones de Google… 60
  59. 59. TensorFlow, la bibliothèque « Machine Learning » de Google https://www.tensorflow.org/ 61
  60. 60. Watson – IBM 62
  61. 61. Watson – IBM 63
  62. 62. Les dérives de TAY, l’IA de Microsoft qui apprenait trop bien … 64
  63. 63. Les dérives de TAY, l’IA de Microsoft qui apprenait trop bien … 65
  64. 64. Un exemple issu de la convergence bio-informatique (convergence NBIC) Le processeur neuromorphique TrueNorth IBM issu du programme DARPA SyNAPSE
  65. 65. En 2016, l’Intelligence Artificielle a surpassé l’homme dans plusieurs domaines. Ces domaines étaient jusque là réservés à la seule expertise humaine.
  66. 66. Robot chirurgien autonome STAR (Smart Tissue Autonomous Robot)
  67. 67. 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.
  68. 68. Le « nouveau Rembrandt » peint par une Intelligence Artificielle
  69. 69. 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.
  70. 70. Defense Advanced Research Projects Agency
  71. 71. 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.
  72. 72. La course à l’IA est lancée …
  73. 73. La Course à l’IA
  74. 74. La Course à l’IA
  75. 75. 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 !
  76. 76. 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
  77. 77. 3 - L’IA comme moteur de la cybersécurité 87
  78. 78. Quelques chiffres de cybersécurité Période 2016 - 2017 88
  79. 79. 89 Cartographie des vulnérabilités et des cyberattaques (2016 – 2017)
  80. 80. 90
  81. 81. 91
  82. 82. 92
  83. 83. 93
  84. 84. 94
  85. 85. 95
  86. 86. 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. 96
  87. 87. Security Information and Event Management 97
  88. 88. UBA : User Behavior Analytics 98
  89. 89. 99
  90. 90. 100
  91. 91. 101
  92. 92. 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. 102
  93. 93. 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. 103
  94. 94. 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). 104
  95. 95. 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. 105
  96. 96. 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. 106
  97. 97. 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. 107
  98. 98. 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é 108
  99. 99. 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. 109
  100. 100. 110
  101. 101. 111
  102. 102. 112
  103. 103. 113
  104. 104. 114
  105. 105. 115
  106. 106. 116
  107. 107. 117
  108. 108. Solution Itrust Reveelium 118
  109. 109. 119
  110. 110. 120
  111. 111. 121
  112. 112. 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. 122
  113. 113. 123
  114. 114. 124
  115. 115. 125
  116. 116. 126
  117. 117. 127
  118. 118. 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/ 128
  119. 119. Solution Sentryo surveillant un réseau industriel SCADA 129
  120. 120. 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 130
  121. 121. Thales – Cybels Sensor 131
  122. 122. Cisco – Talos Talos, division sécurité de Cisco développe une solution dédiée aux sites industriels qui embarque des technologies d’UBA. 132
  123. 123. BALABIT – Blindspotter 133
  124. 124. BALABIT – Blindspotter 134
  125. 125. BALABIT – Blindspotter 135
  126. 126. BALABIT – Blindspotter 136
  127. 127. BALABIT – Blindspotter 137
  128. 128. BALABIT – Blindspotter 138
  129. 129. 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é 139
  130. 130. 140
  131. 131. 141
  132. 132. 142 Produits de cybersécurité IBM connexes QRADAR
  133. 133. 143
  134. 134. 144
  135. 135. 145 IBM développe via Watson la cybersécurité cognitive
  136. 136. 146
  137. 137. 147
  138. 138. 148
  139. 139. 149
  140. 140. Perspectives & Prospectives 150
  141. 141. 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 151
  142. 142. 152
  143. 143. 153
  144. 144. 154
  145. 145. Eléments de prospective
  146. 146. 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.
  147. 147. 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.
  148. 148. Eléments de prospective
  149. 149. Eléments de prospective
  150. 150. Eléments de prospective
  151. 151. Eléments de prospective
  152. 152. Eléments de prospective Lorsque deux IA installent un protocole cryptographique …. Article (octobre 2016) de Google Brain https://arxiv.org/pdf/1610.06918v1.pdf
  153. 153. Eléments de prospective
  154. 154. 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)
  155. 155. Eléments de prospective
  156. 156. Eléments de prospective Prouver les futurs programmes et compilateurs Avec un assistant de preuve comme COQ
  157. 157. 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).
  158. 158. 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.
  159. 159. 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é … 169
  160. 160. 170
  161. 161. 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. 171
  162. 162. 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. 172
  163. 163. 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. 173
  164. 164. 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. 174
  165. 165. http://cyberland.centerblog.net/ http://echoradar.eu/ http://www.chaire-cyber.fr/ 175

×