Données déclaratives
Les données déclaratives permettent de déclarer explicitement des informations liées à un actif.
Elles servent à créer un actif air gap ou à modifier les informations d’un actif déjà présent dans Cyberwatch pour adapter les résultats des scans.
Les informations à renseigner doivent respecter la syntaxe décrite ci-dessous.
Modifier les données déclaratives d’un actif
- Cliquer sur Inventaire.
- Sélectionner un actif.
- Depuis la page dédiée à l’actif concerné, onglet « Analyse », cliquer sur le bouton d’édition devant « Données déclaratives ».
- Renseigner les informations relatives à l’actif, en respectant la syntaxe.
- Valider en cliquant sur le bouton « Mettre à jour ».
Syntaxe du langage
Chaque propriété du langage est composée d’une paire de clé/valeur, dont la syntaxe est :
KEY:value
Précisions sur la syntaxe
Les clés sont composées exclusivement de lettres majuscule et d’underscores (tirets du bas) :
bad_key: → erreur de syntaxe BAD-KEY: → erreur de syntaxe GOOD_KEY:
Les lignes ne respectant pas le format clé:valeur déclenchent également des erreurs de syntaxe.
Il est à noter que les erreurs de syntaxe ne sont jamais fatales, la propriété ne sera simplement pas prise en compte dans l’analyse.
Les commentaires commencent au début de la ligne par la caractère #, et s’étendent sur toute la ligne. Les valeurs pouvant contenir le caractère #, commenter une partie de la ligne n’est pas possible.
Des valeurs en plusieurs lignes sont acceptées pour certaines propriétés. Elles doivent avoir une indentation plus importante que la propriété qui les définit :
KEY:start ... end
Interdiction d’une valeur
Vous pouvez interdire une valeur pour qu’elle ne soit plus prise en compte par Cyberwatch, en faisant précéder la syntaxe précédente d’un trait d’union :
-KEY1:value1
Toutes les occurrences de KEY1:value1
qui suivront -KEY1:value1
seront ignorées.
Le trait d’union doit être suivi de la ligne exacte remontée lors du scan.
Types de propriétés
Deux types de propriétés sont disponibles :
Les propriétés simples qui ne peuvent être définies qu’une fois et qui n’acceptent qu’une seule valeur. Si la propriété est redéfinie, la deuxième valeur est ignorée :
HOSTNAME:server-1 HOSTNAME:server-2 → ignorée
Les propriétés multiples qui peuvent être renseignées plusieurs fois dans le script. Elles permettent de construire une liste d’éléments :
# Renseigne 2 paquets : PACKAGE:coreutils|8.32-1 PACKAGE:bash|5.1.004-1
Notez que lors de la modification des informations d’un actif, les propriétés simples peuvent être directement réécrites. Elles remplaceront alors les informations remontées lors des scans :
HOSTNAME:server-1 → remplace la valeur remontée
A l’inverse, les propriétés multiples ne peuvent pas être directement réécrites. Pour qu’une valeur remontée lors des scans soit remplacée, il convient de l’interdire et d’ajouter une propriété avec la nouvelle valeur.
Exemple de cas d’usage :
# Remplacer la version d'un paquet
-PACKAGE:coreutils|8.31
PACKAGE:coreutils|8.32
Liste des propriétés principales
Informations système
KEY | Impact | Exemple KEY:value | Simple/Multiple |
---|---|---|---|
HOSTNAME | Définit le nom de l’actif | HOSTNAME:server | Simple |
KERNEL_VERSION | Définit la version du noyau de l’OS | KERNEL_VERSION:5.4.0-42-generic | Simple |
OS_NAME | Définit le nom du système d’exploitation de l’actif | OS_NAME:Ubuntu | Simple |
OS_VERSION | Définit la version du système d’exploitation | OS_VERSION:20.04.1 LTS | Simple |
OS_PRETTYNAME | Définit le système d’exploitation et sa version | OS_PRETTYNAME:Ubuntu 20.04.1 LTS | Simple |
ARCH | Définit l’architecture sous laquelle l’actif tourne | ARCH:x86_64 | Simple |
État du système
KEY | Impact | Exemple KEY:value | Simple/Multiple |
---|---|---|---|
REBOOT | Permet la définition de l’état en Redémarrage nécessaire | REBOOT:false | Simple |
BOOT_TIME | Définit l’heure et la date de démarrage | BOOT_TIME:2021-03-18T07:38:59+0000 | Simple |
Services
KEY | Impact | Exemple KEY:value | Simple/Multiple |
---|---|---|---|
SERVICE | Ajoute une ligne dans l’onglet Services | SERVICE:ssh|enabled | Multiple |
Paquets/applications installés
KEY | Impact | Exemple KEY:value | Simple/Multiple |
---|---|---|---|
PACKAGE | Ajoute un package aux technologies de l’actif | PACKAGE:firefox|80.0.1+build1-0ubuntu0.20.04.1 | Multiple |
APPLICATION | Ajoute une application aux technologies de l’actif | APPLICATION:Microsoft Office 365 ProPlus - en-us|16.0.11328.20512 | Multiple |
NVD_APPLICATION | Ajoute une application tierce à partir d’une CPE connue de la base NVD | NVD_APPLICATION:cpe:/a:elastic:kibana:7.0.0 | Multiple |
META | Ajoute une ligne à l’onglet Métadonnées | META:processor-version|Intel(R) Core(TM) i7-10700 CPU @ 2.90GHz | Multiple |
Informations réseau
KEY | Impact | Exemple KEY:value | Simple/Multiple |
---|---|---|---|
IP | Définit les adresses IP de l’actif avec ou sans masque sous-réseau | IP:127.0.0.1 ou IP:127.0.0.1/8 ou IP:127.0.0.1/255.0.0.0 | Multiple |
TCP | Ajoute un port TCP à l’onglet Ports | TCP:22 ou TCP:22|openssh | Multiple |
UDP | Ajoute un port UDP à l’onglet Ports | UDP:53 | Multiple |
Propriétés spécifiques à Windows
KEY | Impact | Exemple KEY:value | Simple/Multiple |
---|---|---|---|
OS_BUILD | Définit le build de Windows | OS_BUILD:17763.1158 | Simple |
WUAVERSION | Définit la version du Windows Update Agent | WUAVERSION:10.0.17763.1 | Simple |
CAB_FILENAME | Définit le nom du fichier officiel de Microsoft utilisé pour ce scan | CAB_FILENAME:dcdb9e78484667695627acea9213897eaf.cab | Simple |
Propriétés spécifiques à SAP
KEY | Impact | Exemple KEY:value | Simple/Multiple |
---|---|---|---|
SAP_NOTE | Ajoute une note SAP à l’actif | SAP_NOTE:3119365 | Multiple |
Défauts de sécurité
KEY | Impact | Exemple KEY:value | Simple/Multiple |
---|---|---|---|
SECURITY_ISSUE | Ajoute une ligne dans l’onglet Défauts de sécurité | SECURITY_ISSUE: | Multiple |
sid | Spécifie la référence du défaut de sécurité associé | SECURITY_ISSUE: | Simple |
cipher | Définit le chiffrement non-conforme | SECURITY_ISSUE: | Simple |
port | Détail le port associé au défaut de sécurité | SECURITY_ISSUE: | Simple |
info | Précise des informations complémentaires | SECURITY_ISSUE: | Simple |
method | Spécifie la méthode de requête HTTP | SECURITY_ISSUE: | Simple |
path | Spécifie le chemin d’accès | SECURITY_ISSUE: | Simple |
parameter | Définit le paramètre vulnérable | SECURITY_ISSUE: | Simple |
http_request | Spécifie la requête HTTP associée | SECURITY_ISSUE: | Simple |
curl_command | Informe de la commande curl équivalente | SECURITY_ISSUE: | Simple |
description | Description du défaut de sécurité | SECURITY_ISSUE: | Simple |
protocol | Définit le protocole non conforme | SECURITY_ISSUE: | Simple |
Équipements réseau
KEY | Impact | Exemple KEY:value | Simple/Multiple |
---|---|---|---|
FIRMWARE | Spécifie le code CPE du micrologiciel d’un équipement | FIRMWARE:cpe:/o:stormshield:stormshield_network_security:3.8.1 | Multiple |
HARDWARE | Précise le code CPE du hardware de l’équipement | HARDWARE:cpe:2.3:h:sonicwall:nssp_15700 | Multiple |