Help us improve your experience.

Let us know what you think.

Do you have time for a two-minute survey?

 
 

Signature et vérification de fichiers Veriexec pour Junos OS

En savoir plus sur la signature et la vérification de fichiers Veriexec, leurs avantages et comment les utiliser sur le pare-feu SRX Series.

Verified Exec (également connu sous le nom de veriexec) est un système de signature et de vérification de fichiers qui protège le système d’exploitation Junos contre les logiciels et activités non autorisés susceptibles de compromettre l’intégrité de votre équipement. Développé à l’origine pour l’OS NetBSD, veriexec a été adapté pour Junos OS et activé par défaut.

Les fichiers autorisés, c’est-à-dire certains fichiers fournis avec Junos OS, sont associés à une empreinte digitale que veriexec vérifie pour déterminer si le fichier peut être utilisé (exécuté ou même ouvert). Tout fichier qui n’a pas d’empreinte digitale valide ne peut pas être exécuté ou lu par les applications qui nécessitent une entrée vérifiée.

Le/bin/sh ne nécessite pas d’entrée vérifiée. Il peut être utilisé pour exécuter des scripts arbitraires car, du point de vue des risques, ils sont identiques aux commandes interactives, qui sont déjà contrôlées par l’authentification et les autorisations des utilisateurs. Toutefois, si un script shell vérifié contient des instructions pour exécuter un script arbitraire, c’est-à-dire un fichier qui n’a pas de signature dans le manifeste, l’exécution de ce fichier sera empêchée.

Comment fonctionne Veriexec

Veriexec fournit au noyau un manifeste signé numériquement composé d’un ensemble d’empreintes digitales pour tous les exécutables et autres fichiers qui doivent rester immuables. Le chargeur veriexec ne transmet le contenu du manifeste au noyau que si la signature numérique du manifeste est vérifiée avec succès. Le noyau peut alors vérifier si un fichier correspond à son empreinte. Si veriexec est appliqué, seuls les exécutables avec une empreinte digitale vérifiée s’exécuteront. Il n’est pas possible d’écrire, de modifier ou de modifier les fichiers protégés.

Chaque image d’installation contient un manifeste. Le manifeste est en lecture seule. Il contient des entrées telles que les suivantes :

Si un fichier a été modifié et que l’empreinte résultante diffère de celle du manifeste, un message de journal, tel que l’exemple suivant s’affiche :

Le message de journal se présente au format suivant :

L’incompatibilité d’empreintes digitales indique que le fichier a été modifié. N’essayez pas d’exécuter le fichier. Il peut contenir du code corrompu. Contactez le JTAC.

Avantages de Veriexec

Retrouvez ci-dessous les principaux avantages de Veriexec :

  • Protège la sécurité du système : Veriexec protège les routeurs, commutateurs et pare-feu Juniper Networks contre les failles de sécurité.

  • Empêche les accès non autorisés : Il empêche les acteurs malveillants d’obtenir un accès persistant et non autorisé ou de provoquer des défaillances du système.

  • Déjoue l’exécution de logiciels malveillants : En empêchant l’exécution de fichiers binaires non signés, il stoppe les modifications non autorisées et les logiciels malveillants.

  • Prend en charge le code autorisé : Les clients peuvent ajouter du code signé et autorisé à Junos OS avec l’application Veriexec à l’aide du SDK JET.

  • Reportez-vous au guide du SDK : Pour plus d’informations sur la solution SDK, consultez la section Développement d’applications JET sur l’appareil dans le Guide du développeur Juniper Extension Toolkit.

Comment vérifier si Veriexec est appliqué sur un périphérique exécutant Junos OS - Option 1

Les sous-sections suivantes donnent des procédures sur la façon de vérifier si veriexec est appliqué ou non.

Certaines plates-formes Junos OS proposent une version facultative de Junos OS dans laquelle l’application veriexec est désactivée (appelée Junos Enhanced Automation ou Junos Flex). Pour plus d’informations sur Junos Enhanced Automation, reportez-vous à la section Présentation des améliorations apportées à Junos Automation sur les périphériques exécutant Junos OS avec Enhanced Automation.

Utilisez la commande sysctl security.mac.veriexec.state pour Junos OS version 15.1 et ultérieure

Les administrateurs peuvent vérifier si veriexec est appliqué en exécutant les commandes suivantes à partir de l’interpréteur de commandes CLI de Junos OS :

  1. Démarrez le shell.

  2. Utilisez la sysctl security.mac.veriexec.state commande.

    Si veriexec est appliqué, la sortie est security.mac.veriexec.state: loaded active enforce. Si veriexec n’est pas appliqué, la sortie est security.mac.veriexec.state: loaded active.

Comment vérifier si Veriexec fonctionne - Option 2

Vous pouvez confirmer si veriexec fonctionne en copiant un fichier autorisé (ici, /usr/bin/id), vers un nouvel emplacement comme indiqué ci-dessous. Veriexec bloque l’opération. /usr/bin/id a une empreinte valide, mais pas /tmp/id , même si les fichiers sont identiques. Ce qui se passe, c’est que veriexec évalue les propriétés Linux sous-jacentes du fichier, qui ne sont pas identiques après avoir été copiées, plutôt que le fichier lui-même.

  1. Démarrez le shell.

  2. Changez de répertoire, puis copiez le fichier d’exemple, /usr/bin/id vers un nouvel emplacement.

Résultats

Si veriexec est appliqué, une erreur d’authentification s’affiche. Si ce n’est pas le cas, le fichier sera exécuté normalement.

Sortie lorsque veriexec est appliqué. Ici, le fichier est bloqué :

Sortie lorsque veriexec n’est pas appliqué. Ici, le fichier est copié :

Chargeur compatible Veriexec pour pare-feu SRX Series

Le chargeur compatible veriexec installe une image Junos OS à l’aide de la install commande d’un serveur TFTP ou d’un périphérique de stockage USB.

  • Installez l’image Junos OS à partir d’un serveur tftp à l’aide de la install tftp://[host]/ commande install.

  • Installez l’image Junos OS à partir d’un périphérique de stockage USB à l’aide de la commande d’installation install file:/// .

Le chargeur compatible veriexec valide l’image Junos OS. Le chargeur démarre uniquement les nouvelles images Junos OS avec des empreintes digitales et ne démarre pas les images existantes sans empreintes digitales ni noyau. Vous pouvez utiliser la nextboot fonction pour vérifier le périphérique de démarrage actuel.

Bootupgrade est un outil disponible dans le package Junos OS pour prendre en charge la mise à niveau du firmware du BIOS. Vous pouvez utiliser la bootupgrade commande pour mettre à niveau, vérifier uboot, charger manuellement et installer le chargeur compatible veriexec de plus grande taille. La bootupgrade -c loader commande imprime la chaîne de version du chargeur actuel.

Avant d’installer le chargeur compatible veriexec sur l’image Junos OS, une identification des empreintes Junos OS est effectuée dans les deux partitions à double racine. Ce n’est que lorsque les deux partitions à double racine ont Junos OS avec des empreintes digitales que l’installation du chargeur compatible veriexec est autorisée.

Installez le chargeur compatible veriexec à partir du shell CLI de Junos OS :

  1. Démarrez le shell.

  2. Utilisez la bootupgrade -l /boot/veloader commande pour installer le chargeur compatible veriexec.

  3. Vous pouvez voir différents scénarios ici :

    • Utilisez request system software add /var/tmp/xxx.tgz no-copy no-validate la commande pour installer Junos OS avec des empreintes digitales normalement.

    • Pour les versions antérieures de Junos OS, si le chargeur compatible veriexec est en cours d’utilisation et que l’image Junos OS cible pour les versions précédentes n’est pas prise en charge par le chargeur compatible veriexec, utilisez la request system software add /var/tmp/xxx.tgz no-copy no-validate commande pour rétrograder automatiquement vers l’ancien chargeur à partir du chargeur compatible veriexec.

    • Utilisez la request system software add /var/tmp/xxx commande pour vérifier si le package Junos OS est compatible avec l’installation.

      L’installation est terminée car le chargeur compatible veriexec n’est pas pris en charge pour les versions de Junos OS antérieures à la version 20.3R1.