Importer des documents dans OpenCTI avec Ariane AI : Boostez vos capacités d'extraction d'entités
Chez Filigran, nous sommes convaincus que l'IA n'est pas là pour remplacer, mais pour assister l'analyste. Toutes nos fonctionnalités IA sont développées pour réduire la fatigue des analystes, accélérer la qualification et enrichir l'intelligence analytique. C'est l'objectif d'Ariane AI, l'intelligence artificielle que nous développons en back-end pour alimenter toutes les fonctionnalités IA de nos produits.
La version 6.6 d'OpenCTI a apporté de nombreuses nouvelles fonctionnalités à Ariane AI, dont un nouveau connecteur sobrement nommé import-document-ai. Un utilisateur expérimenté d'OpenCTI remarquera rapidement que le nom provient d'un connecteur existant, import-document. Quelle est donc la relation entre ces deux connecteurs ? Comment fonctionne-t-il et comment est-il utilisé dans OpenCTI ?
Version courte
- Ce nouveau connecteur import-document-ai étend
import-documenten permettant d'extraire des STIX Domain Objects (SDO) supplémentaires :Malwares,Intrusion Sets,Countries. - Contrairement au connecteur
import-document, il ne s'appuie pas sur les données existantes de la plateforme. En d'autres termes, c'est une fonctionnalité agnostique de la plateforme, qui fonctionne immédiatement. - Il exploite les capacités d'extraction en Natural Language Programming (NLP) de l'IA et chaque entité extraite est effectivement présente dans le texte.
- Comme Ariane AI est disponible uniquement dans le cadre d'OpenCTI Enterprise Edition (EE), cela s'applique également à cette nouvelle fonctionnalité.
Version longue
Comment fonctionne la fonctionnalité Import-Document ?
En tant que base de connaissances CTI, OpenCTI est une plateforme qui collecte de nombreuses informations provenant de sources variées, pour les transposer en format STIX, permettant ensuite aux utilisateurs de structurer l'intelligence dont ils ont besoin. Une partie importante de ces informations d'entrée se présente sous forme de rapports ou d'articles, et l'extraction manuelle des SDO et des STIX Cyber Observables (SCO) est une tâche fastidieuse et sujette aux erreurs pour les analystes. Un premier connecteur a été implémenté fin 2021, import-document, dans une tentative d'alléger cette tâche d'extraction en s'appuyant sur deux capacités d'extraction :
- extraction par expression régulière (RegExp) de motifs connus (adresses IP, URL, noms de domaine, vulnérabilités, etc.)
- extraction par correspondance de plateforme : la configuration permet à l'utilisateur de définir les entités qu'il souhaite extraire (par exemple
Malware), puis pour chaque exécution, il y a une requête de tous les noms d'entitésMalwaresur la plateforme, avec une recherche en texte intégral dans le document.
Cette approche, bien qu'efficace, repose sur une plateforme bien entretenue et peut s'avérer coûteuse à exécuter par rapport à la quantité d'informations déjà disponibles sur la plateforme. De plus, elle ne peut pas se généraliser à l'extraction de nouvelles entités si celles-ci n'ont pas de motif clair pour les RegExp – par exemple les noms de malwares et les noms d'intrusion sets.
Comment l'IA peut-elle aider ?
Prenons l'exemple suivant, tiré de Wikipedia : « En septembre 2020, il a été signalé que Kimsuky a tenté de pirater 11 responsables du Conseil de sécurité des Nations Unies. » Même si nous ne savons pas réellement ce qu'est Kimsuky, nous avons tendance à comprendre qu'il s'agit d'un groupe d'acteurs cyber malveillants, c'est-à-dire un Intrusion Set dans le cadre STIX 2.1. Il semble donc qu'il soit possible de deviner quelle catégorie pourrait être attribuée à un mot particulier en se basant uniquement sur le petit contexte de la phrase ou du paragraphe environnant.
Cette tâche est un domaine bien connu du Natural Language Processing (NLP), appelé Named Entity Recognition (NER). Il a été largement utilisé et étudié au cours des quinze dernières années, mais les premiers modèles avaient besoin de beaucoup de données bien annotées – ensemble d'entraînement – pour prendre exemple afin d'être performants. Dans le cas du NER pour les Intrusion Set, cela signifie que nous aurions besoin de beaucoup de phrases différentes avec une occurrence d'une telle entité, en connaissant sa position exacte ; définitivement une tâche manuelle longue et coûteuse. Heureusement, la technologie derrière les Large Language Models (LLM), à savoir les transformers, a largement bénéficié aux tâches NLP, et au NER en particulier : il est désormais possible de concevoir et d'utiliser de nouveaux modèles qui peuvent être compétents avec peu, voire aucun exemple ! De plus, ces modèles peuvent être petits et peuvent fonctionner sur du matériel standard, alors que les LLM nécessitent souvent des cartes GPU pour être utilisés.
Quelle est l'implémentation d'un tel connecteur ?
Chez Filigran, nous sommes fermement convaincus que l'IA devrait être une capacité complémentaire qui profite au produit et à ses utilisateurs, afin d'automatiser les tâches et de faire gagner du temps aux analystes. Par conséquent, une fonctionnalité IA doit s'intégrer aux workflows existants pour les améliorer ; ce n'est pas au produit de s'adapter aux capacités de l'IA, mais plutôt l'inverse. Par conséquent, il semblait naturel d'intégrer le modèle susmentionné dans un connecteur, avec les mêmes déclencheurs que import-document. Si le connecteur est correctement configuré et déployé sur la plateforme, il devient disponible dans le menu déroulant.

Lors de la sélection de ImportDocumentAI, voici ce qui se passe :

- La plateforme lance un job sur le connecteur.
- Le connecteur récupère le fichier duquel extraire les informations (les fichiers txt, pdf, markdown, html sont pris en charge). Il analyse le texte du fichier.
- Ce texte est envoyé à un webservice déployé dans l'environnement Filigran. C'est par cette requête que la validité de la licence est vérifiée.
- Le webservice effectue l'extraction d'entités en exploitant un modèle NLP-AI et renvoie les entités détectées au connecteur.
- À partir des entités extraites et du contexte, le connecteur génère un bundle STIX qui est affiché sous forme de workbench d'analyse ou de brouillon.
L'utilisateur peut alors voir le résultat de l'extraction et le modifier si nécessaire, avant d'enregistrer les résultats sur la plateforme.
Conclusion
L'ensemble des fonctionnalités Ariane AI de Filigran compte un nouveau membre : import-document-ai. Ce nouveau connecteur, disponible pour les plateformes Enterprise Edition, étend le connecteur traditionnel import-document en permettant d'extraire trois SDO : Malwares, Intrusion Sets, Countries. Contrairement à son prédécesseur, import-document-ai ne dépend pas de l'état de la plateforme sur laquelle il s'exécute, ce qui permet à l'extraction de fonctionner rapidement et immédiatement !
Ce n'est que le début de l'automatisation de l'extraction d'informations. Les prochaines étapes incluront (mais ne se limiteront pas à) : davantage de SDO extraits (Tools, Organizations, Sectors,…), des relations (targets et uses en priorité) et l'amélioration continue du modèle existant !
Rejoignez-nous sur notre canal communautaire Slack pour nous dire ce que vous en pensez !
Lire la suite
Explorez des sujets et analyses associés
Votre SOC n'a pas de problème de données. Il a un problème de coordination.

Workflows d'approbation de l'intelligence : garantir la qualité des données et rationaliser les processus
