Rubrique précédente: Exemples de scripts de signatures intelligentes et structure des dossiersRubrique suivante: Modification d'un script de signatures intelligentes personnalisé


Déclencheurs de scripts de signatures intelligentes

Vous pouvez limiter l'exécution d'un script de signatures intelligentes à certaines situations répondant à des conditions ou des déclencheurs spécifiques. Cette restriction permet de concevoir des scripts de signatures intelligentes efficaces. Il n'est pas nécessaire que chaque script de signatures intelligentes recherche des fichiers spécifiques dans un système de fichiers. Vous pouvez charger l'analyseur de rechercher des fichiers spécifiques, des entrées de registre, des services ou des packages installés, de manière à ce que le script de signatures intelligentes ne s'exécute que si ces conditions sont remplies. L'analyseur effectue la recherche sur le système de fichiers une seule fois, quel que soit le nombre de critères de fichier spécifiés.

Remarque : Ces déclencheurs sont définis de la même façon que les définitions de signatures traditionnelles. Il est dès lors nécessaire de disposer d'une certaine expérience dans la création de signatures traditionnelles à l'aide de ces critères.

Types de critères déclencheurs

Les types de déclencheurs que vous pouvez associer à un script de signatures intelligentes sont les suivants :

Fichier

Vérifie la présence de fichiers en spécifiant des critères pour des chemins de recherche, des modèles de contenu de nom de fichier, des plages de dates pour la création et la modification de fichiers, des plages de tailles de fichier, des valeurs de hachage MD5 et des autorisations.

Registre

Recherche des entrées de registre sur des clés spécifiques, des correspondances de modèle de valeurs et des contrôles de ruche 32 bits et 64 bits.

Package

Recherche un package installé en spécifiant la version et la version finale. Sous Windows, cette option contrôle la base de données Ajout/Suppression de programmes. Sous UNIX, elle vérifie la base de données d'installation de la plate-forme.

Service

Recherche un service ou un démon installé.

Info système

Vérifie des attributs tels que la plate-forme, le processeur, le nom du système d'exploitation, ainsi que sa version et sa version finale.

Hiérarchie logique des déclencheurs

Vous pouvez spécifier plusieurs critères déclencheurs pour un script de signatures intelligentes. Les différents déclencheurs peuvent être regroupés par les opérateurs logiques AND, OR et NOT. Les opérateurs logiques sont définis comme des groupes avec un type. Le type, à savoir and, or ou not, définit la façon dont les résultats d'éléments contenus dans le groupe sont combinés. Un groupe (excepté les groupes not) peut contenir autant de critères déclencheurs supplémentaires que souhaité, y compris plusieurs groupes. Un groupe de type not peut uniquement contenir un seul élément, même si cet élément unique peut être un autre groupe.

Retour au début

Répertoires exclus

Lors de la définition d'un déclencheur de script de signatures intelligentes, vous pouvez spécifier des répertoires à exclure. Les répertoires repris dans cette liste sont exclus lorsque l'analyseur de signatures recherche dans le système de fichiers les fichiers spécifiés dans les critères déclencheurs.

Format XML

Lors de l'écriture d'un déclencheur, spécifiez les critères au format XML.

Incluez un groupe de niveau supérieur dans chaque déclencheur. Chaque groupe contient un type. Le type est and, or ou not. Le type définit l'opération logique qui est appliquée aux critères contenus dans le groupe.

<group type=”and”>
…<other citeria>…
</group>
Critères de fichier

Les critères de fichier sont définis avec la balise <file>. Cette balise prend en charge les attributs suivants :

name

Spécifie le fichier à rechercher.

path

Spécifie le chemin d'accès de la recherche.

match

Analyse le fichier spécifié à la recherche d'une correspondance avec le modèle stipulé.

md5

Compare le hachage MD5 du fichier avec la valeur spécifiée.

minversion

Compare la version du fichier spécifié avec la valeur fournie.

maxversion

Compare la version du fichier spécifié avec la valeur fournie.

mincreation

Compare la date de création du fichier spécifié avec la valeur fournie.

maxcreation

Compare la date de création du fichier spécifié avec la valeur fournie.

minmodified

Compare la date de modification du fichier spécifié avec la valeur fournie.

maxmodified

Compare la date de modification du fichier spécifié avec la valeur fournie.

minfilesize

Compare la taille du fichier spécifié avec la valeur de taille fournie.

maxfilesize

Compare la taille du fichier spécifié avec la valeur de taille fournie.

permsmustexclude

Exclut des autorisations.

permsmustinclude

Inclut des autorisations.

rootowner

Spécifie le premier propriétaire du fichier.

daclallow

Autorise la liste de contrôle d'accès.

dacldeny

Refuse la liste de contrôle d'accès.

arch

Spécifie l'architecture d'un fichier binaire sur la plate-forme Windows.

Exemple :

<group type=”and”>
<file name=”msword.exe” path=”*” />
</group>
Critères de registre

Les critères de registre sont spécifiés avec la balise <registry>. Cette balise prend en charge les attributs suivants :

name

Spécifie la clé de registre à rechercher.

match

Spécifie le modèle auquel l'élément recherché doit correspondre.

daclallow

Autorise la liste de contrôle d'accès.

dacldeny

Refuse la liste de contrôle d'accès.

arch

Spécifie le comportement sur un ordinateur 64 bits. Les valeurs prises en charge sont 32, 64 et any. Sur un ordinateur Windows 64 bits, si vous spécifiez uniquement 64, le système recherche la clé spécifiée uniquement dans la ruche 64 bits. Si vous spécifiez la valeur 32 sur un ordinateur 64 bits, le système recherche uniquement dans la ruche 32 bits. Cette valeur est ignorée sur un ordinateur 32 bits. Si l'architecture n'est pas spécifiée, le comportement 32 est celui par défaut.

Exemple :

<group type=”and”>
<registry name="HKEY_LOCAL_MACHINE\SOFTWARE\Adobe\Adobe Acrobat\6.0\Language\UI" match="FRA" /> 
</group>
Critères de package

Les critères de package sont spécifiés avec la balise <package>. Cette balise prend en charge les attributs suivants :

name

Spécifie le nom du produit installé à rechercher.

version

Spécifie la version du produit installé à rechercher.

Exemple :

<group type="and">
<package name="DameWare Mini Remote Control" version="6.0.*" /> 
Critères de service

Les critères de service sont spécifiés avec la balise <service>. Cette balise prend en charge les attributs suivants :

name

Spécifie le nom du service installé à rechercher.

path

Spécifie le chemin d'accès (UNIX uniquement) au service installé.

Exemple :

<group type="and">
<service name="SNMP"/>
</group>
Critères d'info système

Les critères d'info système sont spécifiés avec la balise <sysinfo>. Cette balise prend en charge les attributs suivants :

platform

Spécifie si la plate-forme est de type x86 ou x64 sous Windows.

processor

Identifie le processeur.

osrelease

Identifie la version finale du système d'exploitation.

osname

Identifie le nom du système d'exploitation.

osversion

Identifie la version du système d'exploitation.

Exemple :

<group type=”and”>
<sysinfo osname="Windows" />
</group>

Retour au début

Paramètre de déclencheur lors du lancement d'un script de signatures intelligentes

Lorsque les conditions d'un déclencheur sont satisfaites et que le script de signatures intelligentes est exécuté, une chaîne est transférée au script pour définir les critères qui ont contribué à son déclenchement. Le déclencheur est transféré au script de signatures intelligentes à l'aide de l'indicateur -t. Le format de la chaîne de déclencheur qui est transférée au script dépend des types de critères utilisés dans la définition de déclencheur. Le tableau suivant fournit des exemples de chaînes de déclencheur avec différents types de critères de déclencheur utilisés. Si plusieurs déclencheurs contribuent à l'exécution d'un script de signatures intelligentes, les différents critères sont spécifiés en les séparant par un caractère |. Un script de signatures intelligentes doit pouvoir analyser la chaîne de déclencheur pour exploiter le traitement qui a été réalisé dans l'évaluation de déclencheur.

Fichier

Exemple de déclencheur

Exemples de paramètre -t

fichier

<group type=”and”>

<file name=”file1.test” path=”*” />

</group>

<group type=”not”>

<file name=”file1.test” path=”*” />

</group>

Déclencheur positif :

-t “file:c:\file1.test”

Déclencheur NOT :

-t “!file:file1.test”

Pour le déclencheur NOT, il n'est pas possible de fournir un chemin complet.

registre

<group type="and”>

<registry name="HKEY_LOCAL_MACHINE\SOFTWARE\iSigTest\T1" match="V1"/>

</group>

<group type="not”>

<registry name="HKEY_LOCAL_MACHINE\SOFTWARE\iSigTest\T1" match="V1"/>

</group>

Déclencheur positif :

-t "registry:HKEY_LOCAL_MACHINE\SOFTWARE\iSigTest\T1"

Déclencheur NOT :

-t "!registry:HKEY_LOCAL_MACHINE\SOFTWARE\iSigTest\T1"

service

<group type="and">

<service name="Client DNS"/>

</group>

<group type="not">

<service name="Client DNS"/>

</group>

Déclencheur positif :

-t "service:Client DNS"

Déclencheur NOT :

-t "!service:DNS"

info système

<group type="and">

<sysinfo osname="windows" platform="x86"/>

</group>

 

<group type="not">

<sysinfo osname="windows" platform="x86"/>

</group>

Déclencheur positif :

-t "sysinfo:osname=Windows;platform=x86"

Déclencheur NOT :

-t "!sysinfo:osname=Linux;platform=x86"

package

<group type="and">

<package name="Explorateur DSM CA"/>

</group>

 

<group type="not">

<package name="Explorateur DSM CA"/>

</group>

Déclencheur positif :

-t "package:Explorateur DSM CA"

 

Déclencheur NOT :

-t "!package:Explorateur DSM CA EXTRA123"

Retour au début