YARA (Yet Another Recursive Acronym) est un outil précieux pour identifier et classer les logiciels malveillants. Dans cet article, nous allons étudier la fonctionnalité YARA, découvrir à quoi elle sert et apprendre à rédiger des règles YARA efficaces pour analyser les menaces et détecter les logiciels malveillants.
Découvrez comment concevoir une stratégie de résilience des données et protéger votre entreprise contre les effets des ransomwares et autres types de logiciels malveillants grâce au moteur YARA dans les serveurs de sauvegarde et de restauration Veeam. Téléchargez le livre blanc
Introduction
L’un des moyens les plus efficaces pour protéger votre entreprise consiste à mettre en place une protection renforcée contre la présence de logiciels malveillants. La protection de votre organisation à l’aide d’outils de sécurité est évidemment conseillée pour améliorer vos défenses, mais les logiciels malveillants peuvent aussi s’infiltrer dans vos systèmes et vos données à l’aide de mots de passe volés, d’attaques par hameçonnage ou d’autres tactiques utilisées par les pirates informatiques. Si un logiciel malveillant s’implante et est exécuté pour chiffrer ou exfiltrer des données sensibles, il peut également servir à vous extorquer de l’argent et causer un tort considérable à votre organisation.
Les analyses à l’aide de règles YARA figurent parmi les moyens les plus efficaces d’identifier et de cataloguer les logiciels malveillants, notamment les virus, les vers et les ransomwares. Un moteur de règles YARA est un outil open source qui aide les équipes de cybersécurité à rechercher et à détecter des logiciels malveillants, leur permettant ainsi de les neutraliser avant qu’ils ne provoquent des dégâts trop importants.
Cet article présente un aperçu des fonctionnalités de YARA, montre comment créer et tester une règle YARA, explique pourquoi elle peut être aussi efficace pour détecter des logiciels malveillants et comment utiliser ces règles pour protéger votre entreprise.
Comprendre les règles YARA
Avant de créer des règles YARA, il importe de savoir de quoi il s’agit et comment elles fonctionnent.
Qu’est-ce qu’une règle YARA ?
Les règles YARA identifient des motifs récurrents susceptibles d’apparaître dans les logiciels malveillants ou les familles de logiciels malveillants, et donc indiquer la présence de ce type de logiciels. Lorsqu’une règle détecte une caractéristique ou un motif révélateur d’un logiciel malveillant, elle peut alerter un intervenant approprié qui peut alors isoler ou supprimer la menace.
Scénarios d’utilisation de YARA
Pour vous aider à mieux comprendre les règles YARA, examinons quelques scénarios d’utilisation :
Règles YARA pour la détection des logiciels malveillants
Les règles YARA peuvent servir à détecter des logiciels malveillants ou des familles de logiciels malveillants, qu’il s’agisse de variantes ou de souches spécifiques.
Règles YARA basées sur des signatures
Des règles YARA peuvent être créées pour détecter des hachages, des chaînes, des expressions ou des extraits de code spécifiques basés sur des logiciels malveillants. Il peut s’agir en particulier de clés de registre, voire de logiciels malveillants basés sur des séquences d’octets.
Règles YARA par type de fichier
Les règles YARA peuvent également s’appliquer à des types de fichiers ou des extensions tels que .pdf ou .exe. Cela permet de trouver des fichiers de logiciels malveillants spécifiques déjà connus.
Règles YARA et renseignements sur les menaces
Les règles YARA peuvent être intégrées à des outils de renseignement sur les menaces pour créer des règles basées sur les données les plus récentes sur les menaces. Cela facilite l’identification de menaces nouvelles ou émergentes.
Détection de ransomwares à l’aide de règles YARA
Selon le Rapport de Veeam sur les tendances de la cybersécurité en 2024, le nombre de victimes de ransomwares a bondi de 50 % d’une année sur l’autre en 2023. Les grandes entreprises de protection des données, telles que Veeam, offrent des fonctionnalités intégrées de détection de logiciels malveillants au sein des sauvegardes, basées sur des signatures, pour garantir l’intégrité des données et les capacités de restauration. Les autres fonctionnalités comprennent des analyseurs de taille des fichiers de sauvegarde, la détection des anomalies et la détection des indicateurs de compromission (IOC).
Toutefois, s’agissant de règles spécifiques qui recherchent des logiciels malveillants particuliers ou des schémas susceptibles de déclencher des attaques par ransomware, la règle YARA est la meilleure solution pour détecter les menaces et alerter les administrateurs.
Un exemple de règle YARA qui peut empêcher les ransomware est le ransomware CTBLocker, qui peut être trouvé en recherchant klospad.pdb. Une règle YARA analyse ces fichiers et vous alerte immédiatement s’ils sont détectés dans la sauvegarde ou au moment de la restauration.
Syntaxe des règles YARA
Les règles YARA sont simples et comportent une syntaxe similaire à celle du langage de programmation C. Pour créer des règles YARA, il est essentiel de comprendre la syntaxe YARA.
Nom de la règle
En ce qui concerne le nom de la règle, il est recommandé de se référer au nom du fichier ou du logiciel malveillant que vous souhaitez rechercher. Au sein de la syntaxe, le nom de la règle est un identificateur qui suit le mot « rule » (règle) et ne peut jamais être un chiffre ou un underscore. Par exemple :
rule Detect_Malicious_String
{
condition;
false
}
Chaînes
La section de chaîne est l’endroit où les motifs, les signatures ou les chaînes sont définis. Il existe trois types distincts de chaînes : Chaînes hexadécimales, chaînes de texte et expressions régulières. Les chaînes hexadécimales sont utilisées pour définir des séquences d’octets bruts, tandis que les chaînes de texte et les expressions régulières sont idéales pour spécifier des segments de texte lisibles. En outre, les chaînes de texte et les expressions régulières peuvent représenter des octets bruts à l’aide de séquences d’échappement.
Conditions
C’est la seule section requise, car elle fait référence à des expressions booléennes ou arithmétiques couramment utilisées dans tous les langages de programmation (par exemple, et, ou, non, +, -,*, /, contient, etc.). Certaines conditions doivent être remplies pour que la règle fonctionne. Un autre type de condition peut être la taille du fichier ou la longueur de la chaîne. Il existe de nombreuses possibilités de créer des règles avec des conditions qui répondent à ces besoins.
Métadonnées
Outre les sections de définition de chaîne et de condition, les règles peuvent également comporter une section de métadonnées dans laquelle des informations supplémentaires sur votre règle peuvent être incluses. La section des métadonnées est définie par le mot-clé « meta ». Les métadonnées peuvent comprendre le nom de l’auteur, la date de création de la règle, le numéro de version de celle-ci, une description de ce que la règle trouve, etc.
Conditions
Il s’agit de la seule section requise. Elle spécifie quand la règle YARA est valide pour le fichier que vous analysez. Les conditions sont des expressions booléennes (c’est-à-dire et, ou, tous, n’importe lequel, pas) qui doivent être respectées pour que la règle soit opérante. Par exemple, une règle peut être valide si un fichier est inférieur à une certaine taille et qu’une des chaînes répertoriées dans le fichier (ou toutes) est trouvée.
Créer des règles YARA dans Veeam Backup & Replication
En partant des informations précédentes sur la syntaxe des règles YARA, voyons comment utiliser ces règles dans Veeam Backup & Replication
Règles YARA pendant une session Scan Backup
Lors d’une session Scan Backup, vous pouvez exécuter une analyse YARA pour effectuer les opérations suivantes :
- Trouvez le dernier point de restauration sain.
- Analysez le contenu à la recherche d’informations spécifiques définies dans la règle.
Pour effectuer l’analyse YARA pendant la session de Scan Backup, procédez comme suit :
- Dans la fenêtre Scan Backup, activez l’option Scanner les points de restauration avec la règle YARA suivante.
- Spécifiez le fichier YARA situé dans le dossier du produit Veeam Backup et Replication. Le chemin d’accès par défaut est : C:\Program Files\Veeam\Backup and Replication\Backup\YaraRules. Le fichier YARA doit avoir l’extension .yara ou .yar.
Afficher les résultats de l’analyse Yara
Pour afficher les résultats de l’analyse YARA dans les statistiques de session de sauvegarde, vous pouvez procéder comme suit :
- Ouvrez la vue Accueil dans le volet d’inventaire, sélectionnez « Dernières 24 heures » puis, dans la zone de travail, double-cliquez sur la tâche Scan Backup souhaitée. Vous pouvez également sélectionner la tâche et cliquer sur « Statistiques » dans le ruban, ou effectuer un clic droit sur la tâche et sélectionner « Statistiques ».
- Dans le volet d’inventaire, ouvrez la vue Historique, puis sélectionnez « Tâches ». Dans la zone de travail, double-cliquez sur la tâche Scan Backup souhaitée. Vous pouvez également sélectionner cette tâche et cliquer sur « Statistiques », sur le ruban, ou cliquer avec le bouton droit de la souris sur la tâche et sélectionner « Statistiques ».
Pour afficher un journal détaillé de l’analyse YARA, cliquez sur le bouton Journal d’analyse, en bas de la fenêtre affichant les statistiques de la tâche Scan Backup. Veeam Backup & Replication affichera les journaux les plus récents dans un fichier de 1 Mo.
Meilleures pratiques pour le développement de règles YARA
Voici quelques-unes des meilleures pratiques pour renforcer vos règles YARA et les rendre plus efficaces :
Créer des modèles pour garantir la cohérence et améliorer l’organisation.
Utiliser les conventions de règles YARA standard et alimenter le référentiel règles pour aider toute la communauté de cybersécurité. Ces conventions incluent généralement l’utilisation d’un en-tête pour identifier la règle, d’une condition qui décrit les caractéristiques du logiciel malveillant et de balises pour aider à catégoriser la règle que vous avez créée pour aider d’autres experts en cybersécurité.
N’oubliez pas que les règles YARA ne sont qu’une ligne de défense contre les logiciels malveillants. Suivez le cadre du NIST pour vous donner les meilleures chances de vous protéger contre les menaces, détecter les incidents de cybersécurité et les contrer. Consultez le site du National Institute of Standards and Technology pour en savoir plus sur les directives et les meilleures pratiques en matière de cybersécurité.
Test et validation des règles YARA
Une fois que vous avez rédigé une règle YARA, il est essentiel de la tester pour vérifier que tout fonctionne comme prévu.
Test des règles YARA
La règle YARA peut ensuite être intégrée et ajoutée à la Veeam Data Platform pour analyser les fichiers en temps réel. Il est crucial de tester vos règles YARA pour vous assurer qu’elles fonctionnent comme prévu. Puisque les règles YARA sont basées sur des motifs ou des signatures, tester votre règle YARA dans un environnement de préproduction vous permet de vérifier que ces motifs ont été identifiés avec précision.
Il n’est pas nécessaire d’infecter votre réseau au moyen d’un logiciel malveillant pour tester les règles YARA. Téléchargez un ensemble de données d’échantillons de logiciels malveillants connus pour tester vos règles sans mettre en danger la sécurité de votre réseau. Déployez de nouvelles règles dans votre environnement de production après vous être assuré qu’elles sont efficaces et qu’elles ne généreront pas trop de faux positifs.
Règles de la communauté YARA
Il existe une vaste communauté d’utilisateurs de YARA qui entretiennent des référentiels publics dans lesquels partager les règles YARA. En partageant des règles, la communauté contribue à la constitution d’une vaste base de données dont tout le monde peut bénéficier en matière de détection de logiciels malveillants.
Développement collaboratif de règles
Lorsque les professionnels de la sécurité et les organisations partagent les règles YARA, la communauté peut développer des outils de lutte contre les logiciels malveillants plus ciblés. Lorsque ces professionnels partagent leurs règles, ils ne partagent pas seulement des connaissances vitales, mais invitent également les autres à améliorer leur travail. Lorsque les informations sur les menaces sont partagées, l’identification des attaques dangereuses devient plus facile pour l’ensemble de la communauté.
Règles YARA, documentation et ressources
Il existe plusieurs référentiels et communautés de règles YARA dans lesquels partager vos règles YARA et collaborer avec d’autres utilisateurs :
Référentiel YARA GitHub : C’est la source principale pour tout ce qui concerne YARA. Vous trouverez ici les dernières versions, la documentation et le code source de YARA.
Documentation YARA : Hébergée sur ReadTheDocs, la documentation officielle de YARA fournit des informations complètes sur l’utilisation de YARA et de sa syntaxe, sur le rôle des règles et sur la façon dont ses fonctionnalités détectent les logiciels malveillants.
Référentiel de règles et de signatures YARA : Il s’agit d’une excellente ressource où vous pouvez trouver une collection de règles et de signatures YARA communautaires. Vous pouvez également y apporter vos propres règles YARA pour d’autres puissent les utiliser.
Conclusion
Les règles YARA sont un moyen efficace d’améliorer la cybersécurité de votre entreprise en vous aidant à détecter plus facilement les logiciels malveillants. Vous pouvez écrire vos propres règles YARA ou profiter d’un des nombreux référentiels gratuits de règles créées par la communauté et mises à la disposition de tous. Si vous cherchez un moyen d’améliorer les efforts de cybersécurité de votre entreprise, les règles YARA sont l’un des meilleurs moyens d’y parvenir.
Découvrez la cyber-résilience plus en détail et apprenez à protéger votre organisation contre les ransomwares. Téléchargez notre livre blanc gratuit sur les stratégies cyber-résilientes de restauration des données.