Connect the dots #1: CELIO

Connect the dots #1: CELIO

Vous vous souvenez des jeux de notre enfance où il s'agissait de retrouver une forme en reliant les points entre eux: Le but était de découvrir une forme précise, un "pattern" à partir d'un nuage de points apparemment sans signification:

La principale qualité d'un manager aujourd'hui est justement de tirer des conclusions logiques en reliant des éléments d'information pour révéler quelque chose de précédemment caché ou inconnu. Ce qui conduit à des décisions d'orientations en avance sur les concurrents ou les autres, ou bien de détecter une cyber-attaque alors qu'il est encore temps de réagir.

Comment alors "connecter les points" ? Il s'agit déjà de distinguer des points significatifs dans une avalanche d'informations disponibles. Pour cela j'utilise la méthode "CELIO". Chaque lettre correspond à une méthode d'analyse distincte permettant d'extraire des points significatifs puis de les relier entre eux.

Consoles et indicateurs.

C comme "Console" (ou dashboard de KPI). Pour le domaine suivi on dispose d'un certain nombre d'indicateurs agrégés issus de mesurages de base ou dérivés (un seul nombre par lui-même ne permet pas d'obtenir un indicateur). La plupart de ces indicateurs arrivent sous forme tricolore RAG (Red, Amber, Green), c'est à dire qu'ils ont été traités avec un effet de seuil, Rouge étant mauvais, Orange étant à surveiller et Vert étant simplement ok.

Voici un exemple de console de cybersécurité, et on distingue facilement ici la notion de RAG.     

(c) Stellar Cyber 

Ici, le vert à laissé la place au blanc de manière à indiquer que l'évènement est neutre ou informatif, au lieu de "bon" ce qui n'est pas intéressant en cybersécurité.

Mais s'appuyer uniquement sur des consoles pour décider est insuffisant. En effet, si les seuils ont été mal définis, on obtiendra trop de "rouge" (si on dit qu'il y a le feu tout le temps plus personne n'y croit), ou trop de "vert" (tout va très bien Madame la Marquise). Il faut donc ajouter à notre système de console et d'indicateurs un autre dispositif.

Echantillons.

Si on a plusieurs giga-octets d'évènements chaque jour, ou des milliards de données à traiter, il s'agit d'en extraire un "échantillon significatif", c'est à dire un groupe de données cohérentes qui reproduisent le modèle global. C'est ce que pratiquent les instituts de sondage. Avec 1000 personnes choisies suivant certains critères ils reproduisent les comportements de la société en fonction des critères d'âge, de lieu de vie, de sexe, de revenus, etc. Si l'échantillon est correct, il permettra de prédire un résultat sur des millions de personnes…ou pas. 

(c) Stellar Cyber 

Voici un exemple d'échantillon de 2500 évènements de sécurité disposés sur un plan de fiabilité et de sévérité. Les plus dangereux et, donc les plus urgents à traiter seront ceux en haut à droite. Si on change la taille de l'échantillon, on risque de passer à côté de certains évènements à risque, mais a-t-on les moyens de traiter 2500 évènements par jour ou simplement 50 ?

  (c) Stellar Cyber 

On peut voir ici que l'on a "perdu" l'évènement qui était fiable à 100% mais critique à 75%. Les échantillons sont ainsi un élément important d'analyse mais on peut ajouter d'autres éléments qui vont nous permettre de relier les points entre eux.

Logs.

Il s'agit de l'historique des évènements. Cette base de données non structurée (on l'appelle souvent un "data lake"), va nous servir à condition de pouvoir mener des recherches grâce à un moteur. Voici un exemple avec l'une des données critiques repérées par l'échantillonnage:

 (c) Stellar Cyber 

Les logs (journalisation d'évènements) n'ont aucun intérêt s'ils restent à l'état brut. Ils doivent être traités sous forme graphique et aussi sous forme de scenario. C'est la notion de "scenario", l'histoire de ce qui a pu se passer, qui devient la première étape de "connect the dots" . Dans ce cas précis, une commande système a été exécutée un nombre anormal de fois par un utilisateur. Est-ce que cet utilisateur est un administrateur système dont c'est le métier d'exécuter ce type de commande de manière récurrente ? S'est-il fait voler ses identifiants ? Est-ce que son emplacement géographique (d'après son adresse IP disponible) est cohérent avec son lieu de travail habituel ? On commence à se poser les bonnes questions grâce aux logs structurés.

Interview.

Et si on demandait à l'utilisateur en question ? "Jean-Paul t'es tu connecté depuis les USA pour exécuter une commande système le 14 Novembre à 7h16 EST ?)

– oui j'ai du changer la référence NTP et rebooter le firewall. 

– pourquoi n'as tu pas ouvert un ticket ? 

-c'était dans l'urgence, je n'ai pas eu le temps, mais promis la prochaine fois…"

"Go and talk to the people" est encore le meilleur moyen de lever un doute et de continuer à connecter les points du scenario entre eux. Si par exemple Jean-Paul avait répondu: "Non pas du tout, je dormais à cette heure-là. Au fait, j'ai eu un email bizarre hier qui m'a annoncé avoir gagné un iPhone 12 et quand j'ai cliqué… rien." Cette réponse change complètement le scenario !

Outils.

Pour terminer de connecter les points entre eux et comprendre le scenario d'attaque, rien de tel qu'un outil dédié. Celui-ci va analyser tous les éléments disponibles et les corréler pour fournir un scenario plausible de la cyberattaque. J'ajouterai qu'aucun humain n'est capable de faire cela en un temps très court et que seule une intelligence artificielle (dédiée) aura la vitesse nécessaire pour donner l'alerte et procéder à la remédiation.

 (c) Stellar Cyber 

En conclusion, ma méthode "CELIO", que j'ai déjà utilisée dans plusieurs centaines d'analyses IT, peut s'appliquer à toute activité humaine à condition de disposer des ressources et de l'organisation permettant de la mettre en œuvre.  Dans le cas de la cybersécurité, cela nécessite la mise en place d'un SOC (Security Operation Center) avec une équipe "d'urgentistes" dédiés à cette tache. Dans tous les cas de figure, seule une "task force" spécialisée, indépendante des organisations existantes et reliée directement aux dirigeants de l'entreprise permettra d'obtenir des résultats rapides et cohérents.

Au fait "What do you see ?" 😉