AI générative – Détection de logiciels malveillants et de vulnérabilité

L’IA générative, en particulier les modèles de langues (LLM), trouvent des applications importantes dans de nombreuses industries, y compris la cybersécurité. Les organisations utilisent efficacement LLMS et d’autres modèles d’IA génératifs pour la détection de logiciels malveillants et de vulnérabilités logicielles.
L’IA générative peut être utilisée de différentes manières pour les logiciels malveillants et la détection de vulnérabilité. Les organisations les utilisent pour générer des fonctionnalités très puissantes pour les méthodes de détection basées sur l’apprentissage automatique existantes (ML). L’utilisation de LLMS pour l’analyse du code et la découverte d’intention ou de vulnérabilités malveillantes dans le code est une autre approche. Enfin, les modèles d’IA génératifs, capables de générer de nouveaux ensembles de données, sont effectivement utilisés pour générer des ensembles de données synthétiques pour s’entraîner et rendre les modèles de détection plus robustes contre les attaques adversaires. Nous nous attarderons dans chacun de ces scénarios dans la partie restante de l’article.
Méthodes de détection traditionnelles
Les méthodes de pointe pour détecter les logiciels malveillants et les vulnérabilités logicielles utilisent principalement une analyse de code statique et dynamique. Dans l’analyse statique, les développeurs et autres examinent un code sans l’exécuter. En analysant sa structure syntaxique, son flux de données et son flux de contrôle, ils peuvent découvrir des modèles ou des instructions indiquant une intention malveillante. Dans l’analyse dynamique, le code est exécuté dans un environnement contrôlé et son comportement est analysé pour les actions malveillantes.
Ces deux méthodes souffrent d’un faible rappel (incapable de détecter tout le mauvais code) et sont facilement éludées par des adversaires qualifiés.
Ingénierie des fonctionnalités basées sur un modèle grand langage (LLM)
En raison des limites susmentionnées des méthodes d’analyse statique et dynamique, les chercheurs avaient commencé à utiliser des méthodes de détection basées sur l’apprentissage automatique pour la détection de logiciels malveillants et de vulnérabilité. Les tentatives initiales étaient d’utiliser des fonctionnalités artisanales qui étaient longues et moins efficaces. Les LLM offrent une alternative puissante en raison de leurs capacités uniques:
- Les LLMS excellent à comprendre le contexte et les relations entre les différentes parties d’un code source. Cela leur permet d’extraire automatiquement des fonctionnalités significatives qui pourraient être manquées par l’ingénierie des fonctionnalités manuelles.
- Les LLM peuvent traiter divers types de données, y compris le code source, le code d’assemblage et même les journaux comportementaux, tels que les séquences d’appels API ou les journaux d’appels système. Cela en fait des outils polyvalents pour l’ingénierie des caractéristiques dans différentes tâches de cybersécurité.
Les LLM plus petits, comme Bert et ses variantes, s’avèrent très utiles pour les modèles ML d’ingénierie des fonctionnalités conçus pour les logiciels malveillants et la détection de vulnérabilité. Quelques exemples spécifiques sont:
- Bertroid: Ce modèle de détection de logiciels malveillants Android utilise Bert pour générer des intégres à partir de séquences d’autorisations demandées par les applications. Ces intérêts sont ensuite utilisés pour former un classificateur qui peut faire la distinction entre les applications malveillantes et bénignes. Bertroid a montré des résultats prometteurs dans la détection et la classification des logiciels malveillants Android [1].
- Bert-Cuckoo15: Ce modèle exploite Bert pour analyser les relations entre 15 types de fonctionnalités différents dérivés de l’analyse dynamique des échantillons de logiciels malveillants dans le sable de coucou. En capturant les interdépendances complexes entre ces fonctionnalités, Bert-Cuckoo15 atteint une grande précision dans la détection de logiciels malveillants [2].
- Vuldebert: Cet outil de détection de vulnérabilité utilise Bert pour analyser le code source C et C ++ et identifier les modèles de code vulnérables. Il extrait les fragments de code abstraits et utilise Bert pour apprendre des représentations qui peuvent détecter efficacement les vulnérabilités [3].
- XGV-BERT: Ce cadre combine Bert avec un réseau neuronal graphique (GCN) pour détecter les vulnérabilités logicielles. Il exploite à la fois la sémantique de code, capturée par Bert, et les structures graphiques, capturées par GCN, pour atteindre une plus grande précision dans la détection de vulnérabilité [4].
Ces LLM plus petits offrent les avantages d’une réduction du coût de calcul, de l’inférence plus rapide, de l’hébergement inhouse pour la protection IP et de la possibilité de s’adapter avec des données personnalisées pour de meilleures performances.
Rejoignez-nous au RSAC 2025!
28 avril-1er 1 au Moscone Center, San Francisco. Visitez-nous au stand N-4535 pour voir des démos en direct ou parler à nos experts.
Analyse de code utilisant de grands modèles de langue
Les LLM sont formées à l’aide de données contenant des échantillons de code dans divers langages de programmation. Pour cette raison, ils sont intrinsèquement capables d’analyser les extraits de code et de découvrir des fonctionnalités cachées, une intention malveillante et des vecteurs d’attaque potentiels. Cependant, une limitation est la limite de jeton d’entrée de LLMS. Pour cette raison, les analystes de cybersécurité doivent fragmenter le code en extraits avant d’envoyer à LLMS. Cela pourrait entraîner une détection manquante de la fonctionnalité globale et du comportement du code. Cela est particulièrement vrai dans l’analyse des fichiers binaires.
Tout d’abord, nous devons convertir un code binaire en son code de langue d’assemblage correspondant, qui sont généralement de très grandes bases de code. Ensuite, ils sont décompilés pour générer le code source d’origine, qui n’est souvent qu’approximatif. Les logiciels malveillants de l’ingénierie inverse manuellement ont été l’une des approches réussies de leur détection. Cependant, cela nécessite une expertise approfondie et prend beaucoup de temps.
Grâce aux progrès récents de la formation LLM, qui permettent aux nombres de jetons d’entrée de dépasser des millions de jetons et de l’incorporation d’une base de code massive, y compris les langues d’assemblage dans les données de formation, il est désormais possible d’échec et d’automatiser l’ingénierie de rétro-ingénierie pour détecter Malwares à partir de binaires en quelques minutes au lieu de jours ou semaines [4]
Empêcher les attaques contradictoires à l’aide de ensembles de données synthétiques
Une autre utilisation de l’IA générative dans les logiciels malveillants et la détection de vulnérabilité consiste à rendre les modèles existants plus robustes. Des modèles tels que GANS (réseaux adversaires génératifs) et même les LLM peuvent générer des exemples contradictoires pour tester la robustesse des modèles de détection de logiciels malveillants. En modifiant légèrement les échantillons de logiciels malveillants existants, ces modèles peuvent créer des variations qui peuvent échapper à la détection. Cela aide les chercheurs à identifier les faiblesses des modèles existants et à développer des systèmes de détection plus résilients [5]
Quelle est la prochaine étape
La montée du Paradigme générateur AI a fourni des outils très puissants aux professionnels de la cybersécurité pour lutter contre le cyber-terrorisme. Nous avons maintenant des LLM dont la taille allant de quelques centaines de millions de paramètres à quelques centaines de milliards de paramètres. Selon le cas d’utilisation, on peut sélectionner le modèle d’IA génératif approprié, que ce soit pour l’ingénierie des fonctionnalités dans le modèle d’apprentissage en profondeur pour la détection de logiciels malveillants ou pour l’ingénierie inverse d’un binaire malware, ou pour rendre un modèle de détection plus robuste. Inévitablement, les adversaires vont utiliser les mêmes outils pour créer de nouveaux logiciels malveillants ou pour exploiter des vulnérabilités non détectées. Par conséquent, il est crucial que les professionnels de la cybersécurité soient en avance sur la courbe et commencent à incorporer des outils génératifs basés sur l’IA dans leur pratique pour lutter contre les cyber-attaques.
Rejoignez-nous @ RSA 2025 où mon collègue scientifique des données, Nakkul Khuraana, et je parlerai – «Comment utiliser les LLM pour augmenter les alertes de menace avec la mitre
Rejoignez-nous @ RSA 2025 Où mon collègue scientifique des données, Nakkul Khuraana, et je parlerai de – «comment utiliser les LLM pour augmenter les alertes de menace avec le cadre de mitre».
Sources
- Détection de logiciels malveillants Android: des intérêts neuronaux à la validation pratique avec Bertroid
- Bert-Cuckoo15: un cadre complet pour la détection de logiciels malveillants en utilisant 15 types de fonctionnalités dynamiques
- Vuldebert: un système de détection de vulnérabilité utilisant Bert
- De l’assistant à l’analyste: la puissance de Gemini 1.5 Pro pour l’analyse des logiciels malveillants
- Explorer les LLM pour la détection des logiciels malveillants: révision, conception du framework et approches de contre-mesure
Source link