Mayhem : vers une cyberdéfense automatisée

mayhem-darpa-1

C’est officiel depuis vingt quatre heures : le programme Mayhem développé par une équipe de For All Secure vient de remporter le très prestigieux Cyber Grand Challenge (CGC) à Las Vegas.

Mayhem remporte le Challenge Darpa CGC

Lancé par la Darpa en 2013, le Cyber Grand Challenge a mis en compétition des équipes de hackers et codeurs dans le développement de systèmes automatisés de détections et de correction de bugs. La phase finale ne comptait plus que 7 équipes dont celle de Mayhem. Ces équipes ont créé leur système de supervision et de défense de réseau, leur système d’évaluation des défenses et vulnérabilités des réseaux adversaires, leur système de détection de bugs et de déploiement de patchs correctifs. Les machines et les programmes des 7 équipes finalistes se sont opposés dans un tournoi intitulé « Capture the Flag » supervisé par le Darpa CGC. Un prix de deux millions de dollars vient récompenser les concepteurs de Mayhem et deux autres millions ont été attribués aux équipes finalistes. En tant que « proof of concept », Mayhem et ses solutions concurrentes du CGC démontrent qu’il est possible pour un programme de détecter et de patcher les bugs de codes spécifiques, en haute fréquence, et simultanément sur un très grand nombre de serveurs.

mayhem-darpa-2

Il industrialise, en quelque sorte, la cyberdéfense en la robotisant. Parmi les objectifs atteints du tournoi CGC, on trouve en particulier la baisse de la durée moyenne de détection et de correction d’une vulnérabilité dans un programme. Elle est aujourd’hui de l’ordre de l’heure ou de la journée pour un expert humain et devrait passer l’échelle de la seconde avec les futurs systèmes automatisés de détection. Le Directeur du programme Darpa s’est félicité des objectifs atteints par CGC permettant une évolution importante des techniques de cyberdéfense. A ce titre, la Darpa a annoncé qu’elle allait utiliser les codes développés durant le Challenge pour ses futures plate-formes de détections – corrections automatisées à grande échelle. Celles-ci auraient permis par exemple de détecter et de corriger la vulnérabilité logicielle Heartbleed exploitée en 2014 par des attaquants et qui avait impacté à l’époque plus de 500 000 serveurs sécurisés…

Les limites théoriques de la cyberdéfense automatisée

Il existe une limite théorique à la détection automatisée de vulnérabilités logicielles. C’est elle qui confirme le slogan bien connu affirmant que « la sécurité informatique absolue n’existe pas ». Derrière cette affirmation définitive se cache un résultat mathématique d’une grande profondeur, lié au problème de l’arrêt étudié par Alan Turing.

Si la sécurité informatique absolue existait, on pourrait alors créer un programme analyseur universel M capable de dire, sans jamais se tromper, pour tout programme P, si ce programme est sûr ou non. Ce programme analyseur appliqué à P donnerait 1 lorsqu’il jugerait P comme un programme sûr et 0 dans le cas contraire ( M(P) = 1 si P est jugé sûr par M et M(P) = 0 sinon). On montre facilement que le problème de la construction d’un tel analyseur universel M se ramène de manière équivalente au problème de l’arrêt et au résultat théorique démontré par Alan Turing : « Etant donné un programme arbitraire P (quelconque), il n’existe pas de moyen systématique de dire si ce programme va se terminer sur une entrée ou s’il va boucler et calculer indéfiniment sur cette entrée sans jamais s’arrêter ni donner un résultat ».

C’est donc le probléme de l’arrêt qui interdit l’existence d’un programme analyseur universel capable de décider si tout programme est sûr ou non. Cette impossibilité limite de fait le champ d’intervention des futurs systèmes automatisés de détection de vulnérabilités logicielles. Ils pourront certainement devenir très efficaces mais aucun d’entre eux ne sera en mesure de produire une activité de détection (et de correction) qui soit totalement exhaustive. Des vulnérabilités demeureront mathématiquement inaccesibles à l’analyseur quelles que soient son architecture et son degré de complexité.

mayhem-darpa-3
Visualisation graphique du tournoi opposant les 7 équipes finalistes du CGC

Mayhem, programme précurseur d’une cyberdéfense automatisée

Comme de nombreux secteurs, la cybersécurité opère une transition sous l’effet des apports de l’intelligence artificielle. Les solutions d’UBA (User Behavior Analytics) intègrent des technologies d’apprentissage non supervisé pour scruter le réseau et ses utilisateurs puis détecter très en amont les situations anormales annonçant une cyberattaque. Les systèmes UBA apprennent et améliorent leurs réponses de détection avec le temps et l’expérience acquise. L’approche UBA permet de détecter des attaques inédites et furtives (APT) qui échappaient jusqu’à présent aux systèmes classiques de supervision (SIEM pour Security Information Management System).

Les systèmes autonomes de détection-correction de bugs logiciels développés durant le CGC constituent certainement une seconde révolution dans l’évolution de la cyberdéfense. Ils vont permettre de sécuriser des serveurs à grande échelle et à haute fréquence tout en automatisant le déploiement de patchs correctifs.

A terme, ils devraient compléter efficacement les solutions d’UBA. Enfin, on imagine facilement que les programmes chasseurs de bugs pourront être utilisés de manière strictement offensive afin d’établir une cartographie détaillée des vulnérabilités informatiques des systèmes de l’ennemi dans le cadre d’un conflit armé. Détecter les vulnérabilités de façon industrielle permet de mener une cyberattaque à grande échelle, simultanément sur un grand nombre de cibles. Le volet offensif des démonstrateurs présentés durant le CGC n’a certainement pas échappé à la Darpa.

Conçus initialement comme des boucliers numériques, Mayhem et ses successeurs peuvent facilement devenir des épées !

Thierry Berthier
Chaire de Cybersécurité à Saint-Cyr, Thales – Sogeti, Thierry Berthier nous convie à une réflexion autour de l’art de la guerre 2.0.


Laisser un commentaire