Base de référence de sécurité Linux

Attention

Cet article fait référence à CentOS, une distribution Linux proche de l’état EOL (End Of Life). Faites le point sur votre utilisation afin de vous organiser en conséquence. Pour plus d’informations, consultez les conseils sur la fin de vie centOS.

Cet article décrit en détail les paramètres de configuration des invités Linux, le cas échéant, dans les implémentations suivantes :

  • [Préversion] : les machines Linux doivent répondre aux exigences de la base de référence de sécurité Azure Compute Définition de la configuration Invité d’Azure Policy
  • Les vulnérabilités dans la configuration de sécurité sur vos machines doivent être corrigées dans Microsoft Defender pour le cloud

Pour plus d’informations, consultez Configuration Invité d’Azure Policy et Vue d’ensemble du benchmark de sécurité Azure (V2).

Contrôles de sécurité généraux

Nom
(CCEID)
Détails Vérification de la correction
Vérifier que l’option nodev est définie sur la partition /home.
(1.1.4)
Description : Un attaquant peut monter un appareil spécial (par exemple, un périphérique de bloc ou de caractères) sur la partition /home. Modifiez le fichier /etc/fstab et ajoutez l’option nodev dans le quatrième champ (options de montage) pour la partition /home. Pour plus d’informations, consultez les pages du manuel fstab(5).
Vérifier que l’option nodev est définie sur la partition /tmp.
(1.1.5)
Description : Un attaquant peut monter un appareil spécial (par exemple, un périphérique de bloc ou de caractères) sur la partition /tmp. Modifiez le fichier /etc/fstab et ajoutez l’option nodev dans le quatrième champ (options de montage) pour la partition /tmp. Pour plus d’informations, consultez les pages du manuel fstab(5).
Vérifier que l’option nodev est définie sur la partition /var/tmp.
(1.1.6)
Description : Un attaquant peut monter un appareil spécial (par exemple, un périphérique de bloc ou de caractères) sur la partition /var/tmp. Modifiez le fichier /etc/fstab et ajoutez l’option nodev dans le quatrième champ (options de montage) pour la partition /var/tmp. Pour plus d’informations, consultez les pages du manuel fstab(5).
Vérifier que l’option nosuid est définie sur la partition /tmp.
(1.1.7)
Description : Dans la mesure où le système de fichiers /tmp est uniquement destiné au stockage de fichiers temporaires, définissez cette option pour vérifier que les utilisateurs ne peuvent pas créer de fichiers setuid dans /var/tmp. Modifiez le fichier /etc/fstab et ajoutez l’option nosuid dans le quatrième champ (options de montage) pour la partition /tmp. Pour plus d’informations, consultez les pages du manuel fstab(5).
Vérifier que l’option nosuid est définie sur la partition /var/tmp.
(1.1.8)
Description : Dans la mesure où le système de fichiers /var/tmp est uniquement destiné au stockage de fichiers temporaires, définissez cette option pour vérifier que les utilisateurs ne peuvent pas créer de fichiers setuid dans /var/tmp. Modifiez le fichier /etc/fstab et ajoutez l’option nosuid dans le quatrième champ (options de montage) pour la partition /var/tmp. Pour plus d’informations, consultez les pages du manuel fstab(5).
Vérifier que l’option noexec est définie sur la partition /var/tmp.
(1.1.9)
Description : Dans la mesure où le système de fichiers /var/tmp est uniquement destiné au stockage de fichiers temporaires, définissez cette option pour vérifier que les utilisateurs ne peuvent pas exécuter de fichiers binaires exécutables à partir de /var/tmp. Modifiez le fichier /etc/fstab et ajoutez l’option noexec dans le quatrième champ (options de montage) pour la partition /var/tmp. Pour plus d’informations, consultez les pages du manuel fstab(5).
Vérifier que l’option noexec est définie sur la partition /dev/shm.
(1.1.16)
Description : La définition de cette option sur un système de fichiers empêche les utilisateurs d’exécuter des programmes à partir de la mémoire partagée. Ce contrôle permet de dissuader les utilisateurs d’introduire des logiciels potentiellement malveillants dans le système. Modifiez le fichier /etc/fstab et ajoutez l’option noexec dans le quatrième champ (options de montage) pour la partition /dev/shm. Pour plus d’informations, consultez les pages du manuel fstab(5).
Désactiver le montage automatique.
(1.1.21)
Description : Lorsque le montage automatique est activé, toute personne ayant un accès physique peut attacher une clé USB ou un disque et rendre son contenu disponible dans le système, même si elle n’avait pas les autorisations nécessaires pour les monter elle-même. Désactivez le service autofs ou exécutez « /opt/microsoft/omsagent/plugin/omsremediate -r disable-autofs »
Vérifier que le montage des périphériques de stockage USB est désactivé.
(1.1.21.1)
Description : La suppression de la prise en charge des périphériques de stockage USB réduit la surface d’attaque locale du serveur. Modifiez ou créez un fichier dans le répertoire /etc/modprobe.d/ se terminant par .conf et ajoutez install usb-storage /bin/true, puis déchargez le module usb-storage ou exécutez « /opt/microsoft/omsagent/plugin/omsremediate -r disable-unnecessary-kernel-mods ».
Vérifier que les vidages de cœur sont limités.
(1.5.1)
Description : La définition d’une limite inconditionnelle sur les vidages de cœur empêche les utilisateurs de remplacer la variable logicielle. Si des vidages de cœur sont requis, pensez à définir des limites pour les groupes d’utilisateurs (voir limits.conf(5)). En outre, définir la variable fs.suid_dumpable sur 0 empêchera les programmes setuid de vider le cœur. Ajoutez hard core 0 à /etc/security/limits.conf ou à un fichier du répertoire limits.d et définissez fs.suid_dumpable = 0 dans sysctl ou exécutez « /opt/microsoft/omsagent/plugin/omsremediate -r disable-core-dumps ».
Vérifier que la préliaison est désactivée.
(1.5.4)
Description : La fonctionnalité de préliaison peut interférer avec le fonctionnement d’AIDE, car elle modifie les fichiers binaires. La préliaison peut également accroître la vulnérabilité du système si un utilisateur malveillant est en mesure de compromettre une bibliothèque commune telle que libc. Désinstallez prelink en utilisant votre gestionnaire de package ou exécutez « /opt/microsoft/omsagent/plugin/omsremediate -r remove-prelink ».
Vérifier que les autorisations sur /etc/motd sont configurées.
(1.7.1.4)
Description : Si la propriété du fichier /etc/motd n’est pas correctement définie, celui-ci peut être modifié par des utilisateurs non autorisés avec des informations incorrectes ou trompeuses. Définissez le propriétaire et le groupe de /etc/motd sur root et définissez les autorisations sur 0644 ou exécutez « /opt/microsoft/omsagent/plugin/omsremediate -r file-permissions ».
Vérifier que les autorisations sur /etc/issue sont configurées.
(1.7.1.5)
Description : Si la propriété du fichier /etc/issue n’est pas correctement définie, celui-ci peut être modifié par des utilisateurs non autorisés avec des informations incorrectes ou trompeuses. Définissez le propriétaire et le groupe de /etc/issue sur root et définissez les autorisations sur 0644 ou exécutez « /opt/microsoft/omsagent/plugin/omsremediate -r file-permissions ».
Vérifier que les autorisations sur /etc/issue.net sont configurées.
(1.7.1.6)
Description : Si la propriété du fichier /etc/issue.net n’est pas correctement définie, celui-ci peut être modifié par des utilisateurs non autorisés avec des informations incorrectes ou trompeuses. Définissez le propriétaire et le groupe de /etc/issue.net sur root et définissez les autorisations sur 0644 ou exécutez « /opt/microsoft/omsagent/plugin/omsremediate -r file-permissions ».
L’option nodev doit être activée pour tous les médias amovibles.
(2.1)
Description : Un attaquant peut monter un appareil spécial (par exemple, un périphérique de bloc ou de caractères) par l’intermédiaire d’un média amovible. Ajoutez l’option nodev au quatrième champ (options de montage) pour la partition /etc/fstab. Pour plus d’informations, consultez les pages du manuel fstab(5).
L’option noexec doit être activée pour tous les médias amovibles.
(2.2)
Description : Un attaquant peut charger un fichier exécutable par l’intermédiaire d’un média amovible. Ajoutez l’option noexec au quatrième champ (options de montage) pour la partition /etc/fstab. Pour plus d’informations, consultez les pages du manuel fstab(5).
L’option nosuid doit être activée pour tous les médias amovibles.
(2.3)
Description : Un attaquant peut charger des fichiers qui s’exécutent avec un contexte de sécurité élevé par l’intermédiaire d’un média amovible. Ajoutez l’option nosuid au quatrième champ (options de montage) pour la partition /etc/fstab. Pour plus d’informations, consultez les pages du manuel fstab(5).
Vérifier que le client de communication n’est pas installé.
(2.3.3)
Description : Le logiciel présente un risque de sécurité, car il utilise des protocoles non chiffrés pour la communication. Désinstallez talk ou exécutez « /opt/microsoft/omsagent/plugin/omsremediate -r remove-talk »
Vérifier que les autorisations sur /etc/hosts.allow sont configurées.
(3.4.4)
Description : Il est essentiel de vérifier que le fichier /etc/hosts.allow est protégé contre tout accès en écriture non autorisé. Bien qu’elles soient protégées par défaut, les autorisations du fichier peuvent être changées par inadvertance ou via des actions malveillantes. Définissez le propriétaire et le groupe de /etc/hosts.allow sur root et les autorisations sur 0644 ou exécutez « /opt/microsoft/omsagent/plugin/omsremediate -r file-permissions ».
Vérifier que les autorisations sur /etc/hosts.deny sont configurées.
(3.4.5)
Description : Il est essentiel de vérifier que le fichier /etc/hosts.deny est protégé contre tout accès en écriture non autorisé. Bien qu’elles soient protégées par défaut, les autorisations du fichier peuvent être changées par inadvertance ou via des actions malveillantes. Définissez le propriétaire et le groupe de /etc/hosts.deny sur root et les autorisations sur 0644 ou exécutez « /opt/microsoft/omsagent/plugin/omsremediate -r file-permissions ».
Vérifier la stratégie de refus par défaut du pare-feu.
(3.6.2)
Description : Avec une stratégie d’acceptation par défaut, le pare-feu accepte tout paquet qui n’est explicitement refusé. Il est plus facile de gérer un pare-feu sécurisé avec une stratégie DROP par défaut qu’avec une stratégie Allow par défaut. Définissez la stratégie par défaut pour le trafic entrant, sortant et routé sur deny ou reject, selon le cas, à l’aide de votre logiciel de pare-feu
L’option nodev/nosuid doit être activée pour tous les montages NFS.
(5)
Description : Un attaquant peut charger des fichiers qui s’exécutent avec un contexte de sécurité élevé ou des appareils spéciaux via un système de fichiers distant. Ajoutez les options nosuid et nodev au quatrième champ (options de montage) pour la partition /etc/fstab. Pour plus d’informations, consultez les pages du manuel fstab(5).
Vérifiez que les autorisations sur /etc/ssh/sshd_config sont configurées.
(5.2.1)
Description : le fichier /etc/ssh/sshd_config doit être protégé contre les modifications non autorisées par des utilisateurs sans privilèges. Définissez le propriétaire et le groupe de /etc/ssh/sshd_config sur root et définissez les autorisations sur 0600, ou exécutez « /opt/microsoft/omsagent/plugin/omsremediate -r sshd-config-file-permissions »
Vérifier que les critères de création de mot de passe sont configurés.
(5.3.1)
Description : Les mots de passe forts protègent les systèmes contre le piratage utilisant des méthodes de force brute. Définissez les paires clé-valeur suivantes dans le PAM approprié pour votre distribution : minlen=14, minclass = 4, dcredit = -1, ucredit = -1, ocredit = -1, lcredit = -1, ou exécutez « /opt/microsoft/omsagent/plugin/omsremediate -r enable-password-requirements ».
Vérifier que le verrouillage lors de tentatives de mot de passe ayant échoué est configuré.
(5.3.2)
Description : Le verrouillage des identifiants utilisateur après n tentatives de connexion consécutives infructueuses atténue les attaques de mot de passe par force brute sur vos systèmes. Pour Ubuntu et Debian, ajoutez les modules pam_tally et pam_deny, le cas échéant. Pour toutes les autres distributions, reportez-vous à la documentation de votre distribution.
Désactiver l’installation et l’utilisation des systèmes de fichiers non nécessaires (cramfs)
(6.1)
Description : Un attaquant peut utiliser une vulnérabilité dans cramfs pour élever ses privilèges. Ajoutez un fichier au répertoire /etc/modprob.d qui désactive cramfs ou exécutez « /opt/microsoft/omsagent/plugin/omsremediate -r disable-unnecessary-kernel-mods ».
Désactiver l’installation et l’utilisation des systèmes de fichiers non nécessaires (freevxfs)
(6.2)
Description : Un attaquant peut utiliser une vulnérabilité dans freevxfs pour élever ses privilèges. Ajoutez un fichier au répertoire /etc/modprob.d qui désactive freevxfs ou exécutez « /opt/microsoft/omsagent/plugin/omsremediate -r disable-unnecessary-kernel-mods ».
Vérifier que les répertoires de base de tous les utilisateurs existent.
(6.2.7)
Description : Si le répertoire de base de l’utilisateur n’existe pas ou s’il n’est pas affecté, l’utilisateur est placé à la racine du volume. De plus, l’utilisateur ne peut pas écrire de fichiers ou définir de variables d’environnement. Si les répertoires de base de certains utilisateurs n’existent pas, créez-les et vérifiez que l’utilisateur concerné est propriétaire du répertoire. Les utilisateurs qui n’ont pas de répertoire de base doivent être supprimés ou se voir attribuer un répertoire de base, le cas échéant.
Vérifier que les utilisateurs sont propriétaires de leurs répertoires de base.
(6.2.9)
Description : Puisque l’utilisateur est responsable des fichiers stockés dans son répertoire de base, il doit être le propriétaire de ce répertoire. Si un répertoire de base n’appartient pas à l’utilisateur défini, changez la propriété du répertoire pour l’affecter à l’utilisateur approprié.
Vérifier que les fichiers dotfile des utilisateurs ne sont pas accessibles en écriture à un groupe ou à tout le monde.
(6.2.10)
Description : Les fichiers config d’utilisateur accessibles en écriture par un groupe ou par le monde entier peuvent permettre à des utilisateurs malveillants de voler ou de modifier les données d’autres utilisateurs ou d’obtenir les privilèges système d’un autre utilisateur. Apporter des modifications globales aux fichiers des utilisateurs sans en avertir la communauté des utilisateurs peut entraîner des pannes inattendues et des utilisateurs mécontents. Nous vous recommandons donc d’établir une stratégie de monitoring pour obtenir des rapports sur les autorisations relatives aux fichiers dotfile des utilisateurs. Vous pourrez ainsi déterminer les actions de correction à entreprendre dans le cadre de la stratégie du site.
Vérifier qu’aucun utilisateur n’a de fichiers .forward.
(6.2.11)
Description : L’utilisation du fichier .forward pose un risque pour la sécurité dans la mesure où des données sensibles peuvent être transférées par inadvertance en dehors de l’organisation. Le fichier .forward présente également un risque, car il peut être utilisé pour exécuter des commandes qui peuvent effectuer des actions indésirables. Apporter des modifications globales aux fichiers des utilisateurs sans en avertir la communauté des utilisateurs peut entraîner des pannes inattendues et des utilisateurs mécontents. Il est donc recommandé d’établir une stratégie de monitoring pour obtenir des rapports sur les fichiers .forward des utilisateurs, et déterminer les mesures à prendre dans le cadre de la stratégie du site.
Vérifier qu’aucun utilisateur n’a de fichiers .netrc.
(6.2.12)
Description : Le fichier .netrc présente un risque de sécurité important, car il stocke les mots de passe dans un format non chiffré. Même si le protocole FTP est désactivé, les comptes d’utilisateurs peuvent avoir récupéré des fichiers .netrc d’autres systèmes, ce qui peut présenter un risque pour ces systèmes Apporter des modifications globales aux fichiers des utilisateurs sans en avertir la communauté des utilisateurs peut entraîner des pannes inattendues et des utilisateurs mécontents. Il est donc recommandé d’établir une stratégie de monitoring pour obtenir des rapports sur les fichiers .netrc des utilisateurs, et déterminer les mesures à prendre dans le cadre de la stratégie du site.
Vérifier qu’aucun utilisateur n’a de fichiers .rhosts.
(6.2.14)
Description : Cette action est utile uniquement si la prise en charge de .rhosts est autorisée dans le fichier /etc/pam.conf. Même si les fichiers .rhosts sont inefficaces lorsque la prise en charge est désactivée dans /etc/pam.conf, ils peuvent avoir été transférés depuis d’autres systèmes et contenir des informations utiles à un attaquant visant ces autres systèmes. Apporter des modifications globales aux fichiers des utilisateurs sans en avertir la communauté des utilisateurs peut entraîner des pannes inattendues et des utilisateurs mécontents. Il est donc recommandé d’établir une stratégie de monitoring pour obtenir des rapports sur les fichiers .rhosts des utilisateurs, et déterminer les mesures à prendre dans le cadre de la stratégie du site.
Vérifier que tous les groupes dans /etc/passwd existent dans /etc/group.
(6.2.15)
Description : Les groupes définis dans le fichier /etc/passwd mais pas dans le fichier /etc/group représentent une menace pour la sécurité du système, car les autorisations de groupe ne sont pas gérées correctement. Pour chaque groupe défini dans /etc/passwd, vérifiez qu’il existe un groupe correspondant dans /etc/group.
Vérifier qu’il n’existe pas de doublons d’UID.
(6.2.16)
Description : Les utilisateurs doivent se voir attribuer des UID uniques pour des raisons de responsabilité et pour garantir des protections d’accès appropriées. Établissez des UID uniques et examinez tous les fichiers appartenant aux UID partagés pour déterminer à quel UID ils sont censés appartenir.
Vérifier qu’il n’existe pas de doublons de GID.
(6.2.17)
Description : Les groupes doivent se voir attribuer des GID uniques pour des raisons de responsabilité et pour garantir des protections d’accès appropriées. Établissez des GID uniques et examinez tous les fichiers appartenant aux GID partagés pour déterminer à quel GID ils sont censés appartenir.
Vérifier qu’il n’existe aucun nom d’utilisateur en double.
(6.2.18)
Description : Si un utilisateur se voit attribuer un nom d’utilisateur dupliqué, il créera des fichiers et y aura accès avec le premier UID de ce nom d’utilisateur dans /etc/passwd. Par exemple, si « test4 » a un UID de 1000 et qu’une entrée « test4 » ultérieure a un UID de 2000, la connexion en tant que « test4 » utilise l’UID 1000. En effet, l’UID est partagé, ce qui pose un problème de sécurité. Établissez des noms d’utilisateur uniques pour tous les utilisateurs. La propriété des fichiers reflétera automatiquement le changement tant que les utilisateurs ont des UID uniques.
Vérifier qu’il n’existe aucun groupe en double.
(6.2.19)
Description : Si un groupe se voit attribuer un nom de groupe dupliqué, il créera des fichiers et y aura accès avec le premier GID de ce groupe dans /etc/group. En effet, le GID est partagé, ce qui pose un problème de sécurité. Établissez des noms de groupe uniques pour tous les groupes d’utilisateurs. La propriété des groupes de fichiers reflétera automatiquement le changement tant que les groupes ont des GID uniques.
Vérifier que le groupe fantôme est vide.
(6.2.20)
Description : Tous les utilisateurs affectés au groupe fantôme ont un accès en lecture au fichier /etc/shadow. Si les attaquants peuvent obtenir un accès en lecture au fichier /etc/shadow, ils peuvent facilement exécuter un programme de craquage de mots de passe sur les mots de passe hachés pour les casser. D’autres informations de sécurité stockées dans le fichier /etc/shadow (par exemple l’expiration) peuvent également servir à contourner d’autres comptes d’utilisateur. Supprimez tous les utilisateurs du groupe fantôme.
Désactiver l’installation et l’utilisation des systèmes de fichiers non nécessaires (hfs)
(6.3)
Description : Un attaquant peut utiliser une vulnérabilité dans hfs pour élever ses privilèges. Ajoutez un fichier au répertoire /etc/modprob.d qui désactive hfs ou exécutez « /opt/microsoft/omsagent/plugin/omsremediate -r disable-unnecessary-kernel-mods ».
Désactiver l’installation et l’utilisation des systèmes de fichiers non nécessaires (hfsplus)
(6.4)
Description : Un attaquant peut utiliser une vulnérabilité dans hfsplus pour élever ses privilèges. Ajoutez un fichier au répertoire /etc/modprob.d qui désactive hfsplus ou exécutez « /opt/microsoft/omsagent/plugin/omsremediate -r disable-unnecessary-kernel-mods ».
Désactiver l’installation et l’utilisation des systèmes de fichiers non nécessaires (jffs2)
(6.5)
Description : Un attaquant peut utiliser une vulnérabilité dans jffs2 pour élever ses privilèges. Ajoutez un fichier au répertoire /etc/modprob.d qui désactive jffs2 ou exécutez « /opt/microsoft/omsagent/plugin/omsremediate -r disable-unnecessary-kernel-mods ».
Les noyaux doivent être compilés uniquement à partir de sources approuvées.
(10)
Description : Un noyau provenant d’une source non approuvée peut contenir des vulnérabilités ou des portes dérobées permettant l’accès à un attaquant. Installez le noyau fourni par le fournisseur de votre distribution.
Les autorisations du fichier /etc/shadow doivent être définies sur 0400.
(11.1)
Description : Un attaquant peut récupérer ou manipuler des mots de passe hachés à partir de /etc/shadow si celui-ci n’est pas correctement sécurisé. Définissez les autorisations et la propriété de /etc/shadow* ou exécutez « /opt/microsoft/omsagent/plugin/omsremediate -r set-etc-shadow-perms ».
Les autorisations du fichier /etc/shadow- doivent être définies sur 0400.
(11.2)
Description : Un attaquant peut récupérer ou manipuler des mots de passe hachés à partir de /etc/shadow si celui-ci n’est pas correctement sécurisé. Définissez les autorisations et la propriété de /etc/shadow* ou exécutez « /opt/microsoft/omsagent/plugin/omsremediate -r set-etc-shadow-perms ».
Les autorisations du fichier /etc/gshadow doivent être définies sur 0400.
(11.3)
Description : Un attaquant peut rejoindre des groupes de sécurité si ce fichier n’est pas correctement sécurisé Définissez les autorisations et la propriété de /etc/gshadow- ou exécutez « /opt/microsoft/omsagent/plugin/omsremediate -r set-etc-gshadow-perms ».
Les autorisations du fichier /etc/gshadow- doivent être définies sur 0400.
(11.4)
Description : Un attaquant peut rejoindre des groupes de sécurité si ce fichier n’est pas correctement sécurisé Définissez les autorisations et la propriété de /etc/gshadow ou exécutez « /opt/microsoft/omsagent/plugin/omsremediate -r set-etc-gshadow-perms ».
Les autorisations du fichier /etc/passwd doivent être définies sur 0644.
(12.1)
Description : Un attaquant peut modifier des identifiants utilisateur et des interpréteurs de commandes d’ouverture de session. Définissez les autorisations et la propriété de /etc/passwd ou exécutez « /opt/microsoft/omsagent/plugin/omsremediate -r set-etc-passwd-perms ».
Les autorisations du fichier /etc/group doivent être définies sur 0644.
(12.2)
Description : Un attaquant peut élever ses privilèges en modifiant l’appartenance à un groupe. Définissez les autorisations et la propriété de /etc/group ou exécutez « /opt/microsoft/omsagent/plugin/omsremediate -r set-etc-group-perms ».
Les autorisations du fichier /etc/passwd- doivent être définies sur 0600.
(12.3)
Description : Un attaquant peut rejoindre des groupes de sécurité si ce fichier n’est pas correctement sécurisé Définissez les autorisations et la propriété de /etc/passwd- ou exécutez « /opt/microsoft/omsagent/plugin/omsremediate -r set-etc-passwd-perms ».
Les autorisations du fichier /etc/group- doivent être définies sur 0644.
(12.4)
Description : Un attaquant peut élever ses privilèges en modifiant l’appartenance à un groupe. Définissez les autorisations et la propriété de /etc/group- ou exécutez « /opt/microsoft/omsagent/plugin/omsremediate -r set-etc-group-perms ».
L’accès au compte racine via la commande su doit être limité au groupe « root ».
(21)
Description : Un attaquant peut élever ses privilèges en devinant le mot de passe si la commande su n’est pas limitée aux utilisateurs du groupe racine. Exécutez la commande « /opt/microsoft/omsagent/plugin/omsremediate -r fix-su-permissions ». Ce contrôle permet d’ajouter la ligne « auth required pam_wheel.so use_uid » au fichier « /etc/pam.d/su »
Le groupe « root » doit exister et contenir tous les membres qui peuvent exécuter la commande su sur la racine.
(22)
Description : Un attaquant peut élever ses privilèges en devinant le mot de passe si la commande su n’est pas limitée aux utilisateurs du groupe racine. Créez le groupe racine à l’aide de la commande « groupadd -g 0 root ».
Tous les comptes doivent avoir un mot de passe
(23.2)
Description : Un attaquant peut se connecter à des comptes sans mot de passe et exécuter des commandes arbitraires. Utilisez la commande passwd pour définir des mots de passe pour tous les comptes.
Les comptes autres que les comptes racine doivent avoir des UID uniques supérieurs à zéro (0).
(24)
Description : Si un compte autre qu’un compte racine a un UID de zéro, un attaquant peut compromettre le compte et obtenir des privilèges racine. Attribuez des UID uniques et non nuls à tous les comptes non racine à l’aide de la commande « usermod -u ».
Le placement aléatoire des régions de mémoire virtuelle doit être activé.
(25)
Description : Un attaquant peut écrire du code exécutable dans des régions connues de la mémoire, ce qui entraîne une élévation de privilège. Ajoutez la valeur « 1 » ou « 2 » au fichier « /proc/sys/kernel/randomize_va_space ».
La prise en charge du noyau pour la fonctionnalité du processeur XD/NX doit être activée.
(26)
Description : Un attaquant peut faire en sorte qu’un système exécute du code à partir de régions de données en mémoire, ce qui entraîne une élévation de privilège. Confirmez que le fichier « /proc/cpuinfo » contient l’indicateur « nx ».
Le « . » ne doit pas apparaître dans la variable $PATH de la racine
(27.1)
Description : Un attaquant peut élever ses privilèges en plaçant un fichier malveillant dans le $PATH de la racine. Modifiez la ligne « export PATH= » dans /root/.profile.
Les répertoires de base des utilisateurs doivent être en mode 750 ou plus restrictif.
(28)
Description : Un attaquant peut récupérer des informations sensibles dans les dossiers de base d’autres utilisateurs. Définissez les autorisations du dossier de base sur 750 ou exécutez « /opt/microsoft/omsagent/plugin/omsremediate -r fix-home-dir-permissions ».
L’umask par défaut de tous les utilisateurs doit être défini sur 077 dans login.defs.
(29)
Description : Un attaquant peut récupérer des informations sensibles dans les fichiers appartenant à d’autres utilisateurs. Exécutez la commande « opt/microsoft/omsagent/plugin/omsremediate -r set-default-user-umask ». Cette opération ajoute la ligne « UMASK 077 » au fichier « /etc/login.defs ».
La protection par mot de passe doit être activée pour tous les chargeurs de démarrage.
(31)
Description : Un attaquant disposant d’un accès physique peut modifier les options du chargeur de démarrage, permettant ainsi un accès illimité au système. Ajoutez un mot de passe pour le chargeur de démarrage dans le fichier « /boot/grub/grub.cfg ».
Vérifier que les autorisations sur la configuration du chargeur de démarrage sont configurées.
(31.1)
Description : La configuration des autorisations de lecture et d’écriture pour la racine uniquement empêche les utilisateurs non racine de voir les paramètres de démarrage ou de les modifier. Les utilisateurs non racine qui lisent les paramètres de démarrage peuvent identifier les faiblesses de la sécurité au démarrage et être en mesure de les exploiter. Définissez le propriétaire et le groupe de votre chargeur de démarrage sur root:root et les autorisations sur 0400 ou exécutez « /opt/microsoft/omsagent/plugin/omsremediate -r bootloader-permissions ».
Vérifier l’authentification requise pour le mode mono-utilisateur.
(33)
Description : L’authentification requise en mode mono-utilisateur empêche un utilisateur non autorisé de redémarrer le système en mode mono-utilisateur afin d’obtenir des privilèges racine sans informations d’identification. Exécutez la commande suivante pour définir un mot de passe pour l’utilisateur racine : passwd root.
Vérifier que l’envoi de redirection de paquets est désactivé.
(38.3)
Description : Un attaquant peut utiliser un hôte compromis pour envoyer des redirections ICMP non valides à d’autres routeurs dans le but de corrompre le routage et d’amener les utilisateurs à accéder à un système configuré par l’attaquant plutôt qu’à un système valide. Définissez les paramètres suivants dans /etc/sysctl.conf : « net.ipv4.conf.all.send_redirects = 0 » et « net.ipv4.conf.default.send_redirects = 0 » ou exécutez « /opt/microsoft/omsagent/plugin/omsremediate -r disable-send-redirects ».
L’envoi de redirections ICMP doit être désactivé pour toutes les interfaces. (net.ipv4.conf.default.accept_redirects = 0)
(38.4)
Description : Un attaquant peut modifier la table de routage de ce système et rediriger le trafic vers une autre destination. Exécutez sysctl -w key=value et définissez une valeur conforme ou exécutez « /opt/microsoft/omsagent/plugin/omsremediate -r disable-accept-redirects ».
L’envoi de redirections ICMP doit être désactivé pour toutes les interfaces. (net.ipv4.conf.default.secure_redirects = 0)
(38.5)
Description : Un attaquant peut modifier la table de routage de ce système et rediriger le trafic vers une autre destination. Exécutez sysctl -w key=value et définissez une valeur conforme ou exécutez « /opt/microsoft/omsagent/plugin/omsremediate -r disable-secure-redirects ».
L’acceptation des paquets acheminés sources doit être désactivée pour toutes les interfaces. (net.ipv4.conf.all.accept_source_route = 0)
(40.1)
Description : Un attaquant peut rediriger le trafic à des fins malveillantes. Exécutez sysctl -w key=value et définissez une valeur conforme.
L’acceptation des paquets acheminés sources doit être désactivée pour toutes les interfaces. (net.ipv6.conf.all.accept_source_route = 0)
(40.2)
Description : Un attaquant peut rediriger le trafic à des fins malveillantes. Exécutez sysctl -w key=value et définissez une valeur conforme.
Le paramètre par défaut pour accepter les paquets routés sources doit être désactivé pour les interfaces réseau. (net.ipv4.conf.default.accept_source_route = 0)
(42.1)
Description : Un attaquant peut rediriger le trafic à des fins malveillantes. Exécutez sysctl -w key=value et définissez une valeur conforme.
Le paramètre par défaut pour accepter les paquets routés sources doit être désactivé pour les interfaces réseau. (net.ipv6.conf.default.accept_source_route = 0)
(42.2)
Description : Un attaquant peut rediriger le trafic à des fins malveillantes. Exécutez sysctl -w key=value et définissez une valeur conforme.
Ignorer les réponses ICMP erronées aux diffusions doit être activé. (net.ipv4.icmp_ignore_bogus_error_responses = 1)
(43)
Description : Un attaquant peut effectuer une attaque ICMP entraînant une attaque DoS. Exécutez sysctl -w key=value et définissez une valeur conforme ou exécutez « /opt/microsoft/omsagent/plugin/omsremediate -r enable-icmp-ignore-bogus-error-responses ».
Ignorer les demandes d’écho ICMP (pings) envoyées aux adresses de diffusion/multidiffusion doit être activé. (net.ipv4.icmp_echo_ignore_broadcasts = 1)
(44)
Description : Un attaquant peut effectuer une attaque ICMP entraînant une attaque DoS. Exécutez sysctl -w key=value et définissez une valeur conforme ou exécutez « /opt/microsoft/omsagent/plugin/omsremediate -r enable-icmp-echo-ignore-broadcasts ».
La journalisation des paquets martiens (ceux avec des adresses impossibles) doit être activée pour toutes les interfaces. (net.ipv4.conf.all.log_martians = 1)
(45.1)
Description : Un attaquant peut envoyer du trafic à partir d’adresses usurpées sans être détecté. Exécutez sysctl -w key=value et définissez une valeur conforme ou exécutez « /opt/microsoft/omsagent/plugin/omsremediate -r enable-log-martians ».
La validation de la source par chemin inverse doit être activée pour toutes les interfaces. (net.ipv4.conf.all.rp_filter = 1)
(46.1)
Description : Le système acceptera le trafic provenant d’adresses qui ne sont pas routables. Exécutez sysctl -w key=value et définissez une valeur conforme ou exécutez « /opt/microsoft/omsagent/plugin/omsremediate -r enable-rp-filter ».
La validation de la source par chemin inverse doit être activée pour toutes les interfaces. (net.ipv4.conf.default.rp_filter = 1)
(46.2)
Description : Le système acceptera le trafic provenant d’adresses qui ne sont pas routables. Exécutez sysctl -w key=value et définissez une valeur conforme ou exécutez « /opt/microsoft/omsagent/plugin/omsremediate -r enable-rp-filter ».
Les SYN cookies TCP doivent être activés. (net.ipv4.tcp_syncookies = 1)
(47)
Description : Un attaquant peut effectuer une attaque DoS sur TCP. Exécutez sysctl -w key=value et définissez une valeur conforme ou exécutez « /opt/microsoft/omsagent/plugin/omsremediate -r enable-tcp-syncookies ».
Le système ne doit pas agir comme un renifleur de réseau.
(48)
Description : Un attaquant peut utiliser des interfaces de proximité pour renifler le trafic. Le mode de proximité est activé à l’aide d’une entrée « promisc » dans « /etc/network/interfaces » ou « /etc/rc.local ». Vérifiez les deux fichiers et supprimez cette entrée.
Toutes les interfaces sans fil doivent être désactivées.
(49)
Description : Un attaquant peut créer un point d’accès factice pour intercepter les transmissions. Confirmez que toutes les interfaces sans fil sont désactivées dans « /etc/network/interfaces ».
Le protocole IPv6 doit être activé.
(50)
Description : Cela est nécessaire pour permettre la communication sur les réseaux modernes. Ouvrez /etc/sysctl.conf et vérifiez que « net.ipv6.conf.all.disable_ipv6 » et « net.ipv6.conf.default.disable_ipv6 » ont la valeur 0.
Vérifier que le protocole DCCP est désactivé
(54)
Description : Si le protocole n’est pas obligatoire, il est recommandé de ne pas installer les pilotes pour réduire la surface d’attaque potentielle. Modifiez ou créez un fichier dans le répertoire /etc/modprobe.d/ se terminant par .conf et ajoutez install dccp /bin/true, puis déchargez le module dccp ou exécutez « /opt/microsoft/omsagent/plugin/omsremediate -r disable-unnecessary-kernel-mods ».
Vérifier que le protocole SCTP est désactivé
(55)
Description : Si le protocole n’est pas obligatoire, il est recommandé de ne pas installer les pilotes pour réduire la surface d’attaque potentielle. Modifiez ou créez un fichier dans le répertoire /etc/modprobe.d/ se terminant par .conf et ajoutez install sctp /bin/true, puis déchargez le module sctp ou exécutez « /opt/microsoft/omsagent/plugin/omsremediate -r disable-unnecessary-kernel-mods ».
Désactiver la prise en charge de Services Bureau à distance.
(56)
Description : Un attaquant peut utiliser une vulnérabilité dans Services Bureau à distance pour compromettre le système. Modifiez ou créez un fichier dans le répertoire /etc/modprobe.d/ se terminant par .conf et ajoutez install rds /bin/true, puis déchargez le module rds ou exécutez « /opt/microsoft/omsagent/plugin/omsremediate -r disable-unnecessary-kernel-mods ».
Vérifier que TIPC est désactivé
(57)
Description : Si le protocole n’est pas obligatoire, il est recommandé de ne pas installer les pilotes pour réduire la surface d’attaque potentielle. Modifiez ou créez un fichier dans le répertoire /etc/modprobe.d/ se terminant par .conf et ajoutez install tipc /bin/true, puis déchargez le module tipc ou exécutez « /opt/microsoft/omsagent/plugin/omsremediate -r disable-unnecessary-kernel-mods ».
Vérifier que la journalisation est configurée
(60)
Description : Un grand nombre d’informations importantes relatives à la sécurité sont envoyées via rsyslog (par exemple, les tentatives réussies et ayant échoué de la commande su, les échecs de tentatives de connexion, les tentatives de connexion racine, etc.). Configurez syslog, rsyslog ou syslog-ng selon le cas échéant.
Le package syslog, rsyslog ou syslog-ng doit être installé.
(61)
Description : Les problèmes de fiabilité et de sécurité ne sont pas enregistrés, ce qui empêche un diagnostic correct. Installez le package rsyslog ou exécutez « /opt/microsoft/omsagent/plugin/omsremediate -r install-rsyslog ».
Le service systemd-journald doit être configuré pour conserver les messages du journal.
(61.1)
Description : Les problèmes de fiabilité et de sécurité ne sont pas enregistrés, ce qui empêche un diagnostic correct. Créez /var/log/journal et assurez-vous que Stockage dans journald.conf est automatique ou persistant.
Vérifier qu’un service de journalisation est activé.
(62)
Description : Il est impératif de pouvoir journaliser les événements sur un nœud. Activez le package rsyslog ou exécutez « /opt/microsoft/omsagent/plugin/omsremediate -r enable-rsyslog ».
Les autorisations de fichiers pour tous les fichiers journaux rsyslog doivent être définies sur 640 ou 600.
(63)
Description : Un attaquant peut dissimuler une activité en manipulant les journaux Ajoutez la ligne « $FileCreateMode 0640 » au fichier « /etc/rsyslog.conf ».
Vérifier que les fichiers config de l’enregistreur d’événements sont limités.
(63.1)
Description : Il est important de vérifier que les fichiers journaux existent et qu’ils disposent des autorisations appropriées pour garantir l’archivage et la protection des données syslog sensibles. Définissez les fichiers config de votre enregistreur d’événements sur 0640, ou exécutez « /opt/microsoft/omsagent/plugin/omsremediate -r logger-config-file-permissions »
Tous les fichiers journaux rsyslog doivent appartenir au groupe adm.
(64)
Description : Un attaquant peut dissimuler une activité en manipulant les journaux Ajoutez la ligne « $FileGroup adm » au fichier « /etc/rsyslog.conf ».
Tous les fichiers journaux rsyslog doivent appartenir à l’utilisateur syslog.
(65)
Description : Un attaquant peut dissimuler une activité en manipulant les journaux Ajoutez la ligne « $FileOwner syslog » au fichier « /etc/rsyslog.conf » ou exécutez « /opt/microsoft/omsagent/plugin/omsremediate -r syslog-owner ».
Rsyslog ne doit pas accepter les messages distants.
(67)
Description : Un attaquant peut injecter des messages dans syslog, ce qui entraîne une attaque DoS ou une distraction d’une autre activité. Supprimez les lignes « $ModLoad imudp » et « $ModLoad imtcp » du fichier « /etc/rsyslog.conf ».
Le service logrotate (rotateur de syslog) doit être activé.
(68)
Description : Les fichiers journaux peuvent croître de manière illimitée et consommer tout l’espace disque. Installez le package logrotate et vérifiez que l’entrée logrotate cron est active (chmod 755 /etc/cron.daily/logrotate ; chown root:root /etc/cron.daily/logrotate).
Le service rlogin doit être désactivé.
(69)
Description : Un attaquant peut obtenir un accès en contournant les exigences strictes d’authentification. Supprimez le service inetd.
Désactiver inetd sauf si nécessaire. (inetd)
(70.1)
Description : Un attaquant peut exploiter une vulnérabilité dans un service inetd afin d’y accéder. Désinstallez le service inetd (apt-get remove inetd).
Désactiver xinetd sauf si nécessaire. (xinetd)
(70.2)
Description : Un attaquant peut exploiter une vulnérabilité dans un service xinetd afin d’y accéder. Désinstallez le service xinetd (apt-get remove xinetd).
Installer inetd uniquement si nécessaire et requis par votre distribution. Sécuriser selon les normes actuelles de renforcement de la sécurité. (le cas échéant)
(71.1)
Description : Un attaquant peut exploiter une vulnérabilité dans un service inetd afin d’y accéder. Désinstallez le service inetd (apt-get remove inetd).
Installer xinetd uniquement si nécessaire et requis par votre distribution. Sécuriser selon les normes actuelles de renforcement de la sécurité. (le cas échéant)
(71.2)
Description : Un attaquant peut exploiter une vulnérabilité dans un service xinetd afin d’y accéder. Désinstallez le service xinetd (apt-get remove xinetd).
Le service telnet doit être désactivé.
(72)
Description : Un attaquant peut espionner ou détourner des sessions telnet non chiffrées. Supprimez ou commentez l’entrée telnet dans le fichier « /etc/inetd.conf ».
Tous les packages telnetd doivent être désinstallés.
(73)
Description : Un attaquant peut espionner ou détourner des sessions telnet non chiffrées. Désinstallez tous les packages telnetd.
Le service rcp/rsh doit être désactivé.
(74)
Description : Un attaquant peut espionner ou détourner des sessions non chiffrées. Supprimez ou commentez l’entrée de l’interpréteur de commandes dans le fichier « /etc/inetd.conf ».
Le package rsh-server doit être désinstallé.
(77)
Description : Un attaquant peut espionner ou détourner des sessions rsh non chiffrées. Désinstallez le package rsh-server (apt-get remove rsh-server).
Le service ypbind doit être désactivé.
(78)
Description : Un attaquant peut récupérer des informations sensibles à partir du service ypbind. Désinstallez le package nis (apt-get remove nis).
Le package nis doit être désinstallé.
(79)
Description : Un attaquant peut récupérer des informations sensibles à partir du service NIS. Désinstallez le package nis (apt-get remove nis).
Le service tftp doit être désactivé.
(80)
Description : Un attaquant peut espionner ou détourner une session non chiffrée. Supprimez l’entrée tftp du fichier « /etc/inetd.conf ».
Le package tftp doit être désinstallé.
(81)
Description : Un attaquant peut espionner ou détourner une session non chiffrée. Désinstallez le package tftpd (apt-get remove tftpd)
Le package readahead-fedora doit être désinstallé.
(82)
Description : le package ne crée aucune exposition importante, mais n’offre pas non plus d’avantage substantiel. Désinstallez le package readahead-fedora (apt-get remove readahead-fedora).
Le service bluetooth/hidd doit être désactivé.
(84)
Description : Un attaquant peut intercepter ou manipuler des communications sans fil. Désinstallez le package bluetooth (apt-get remove bluetooth).
Le service isdn doit être désactivé.
(86)
Description : Un attaquant peut utiliser un modem pour obtenir un accès non autorisé. Désinstallez le package isdnutils-base (apt-get remove isdnutils-base).
Le package isdnutils-base doit être désinstallé.
(87)
Description : Un attaquant peut utiliser un modem pour obtenir un accès non autorisé. Désinstallez le package isdnutils-base (apt-get remove isdnutils-base).
Le service kdump doit être désactivé.
(88)
Description : Un attaquant peut analyser un incident système antérieur pour récupérer des informations sensibles. Désinstallez le package kdump-tools (apt-get remove kdump-tools).
La mise en réseau Zeroconf doit être désactivée.
(89)
Description : Un attaquant peut en abuser pour obtenir des informations sur les systèmes réseau ou usurper des requêtes DNS en raison de failles dans son modèle de confiance Pour RedHat, CentOS et Oracle : Ajoutez NOZEROCONF=yes or no à /etc/sysconfig/network. Pour tous les autres distributions : Supprimez toutes les entrées « ipv4ll » dans le fichier « /etc/network/interfaces » ou exécutez « /opt/microsoft/omsagent/plugin/omsremediate -r disable-zeroconf ».
Le service crond doit être activé.
(90)
Description : Cron est requis par presque tous les systèmes pour les tâches de maintenance régulières. Désinstallez le package cron (apt-get install -y cron) et vérifiez que le fichier « /etc/init/cron.conf » contient la ligne « start on runlevel [2345] ».
Les autorisations de fichiers pour /etc/anacrontab doivent être définies sur root:root 600.
(91)
Description : Un attaquant peut manipuler ce fichier pour empêcher les tâches planifiées ou exécuter des tâches malveillantes. Définissez la propriété et les autorisations sur /etc/anacrontab ou exécutez « ’/opt/microsoft/omsagent/plugin/omsremediate -r fix-anacrontab-perms ».
Vérifier que les autorisations sur /etc/cron.d sont configurées.
(93)
Description : Accorder l’accès en écriture à ce répertoire pour les utilisateurs non privilégiés peut leur fournir les moyens d’obtenir des privilèges élevés non autorisés. Accorder un accès en lecture à ce répertoire pourrait permettre à un utilisateur non privilégié de savoir comment obtenir des privilèges élevés ou contourner les contrôles d’audit. Définissez le propriétaire et le groupe de /etc/chron.d sur root et les autorisations sur 0700 ou exécutez « /opt/microsoft/omsagent/plugin/omsremediate -r fix-cron-file-perms ».
Vérifier que les autorisations sur /etc/cron.daily sont configurées.
(94)
Description : Accorder l’accès en écriture à ce répertoire pour les utilisateurs non privilégiés peut leur fournir les moyens d’obtenir des privilèges élevés non autorisés. Accorder un accès en lecture à ce répertoire pourrait permettre à un utilisateur non privilégié de savoir comment obtenir des privilèges élevés ou contourner les contrôles d’audit. Définissez le propriétaire et le groupe de /etc/chron.daily sur root et les autorisations sur 0700 ou exécutez « /opt/microsoft/omsagent/plugin/omsremediate -r fix-cron-file-perms ».
Vérifier que les autorisations sur /etc/cron.hourly sont configurées.
(95)
Description : Accorder l’accès en écriture à ce répertoire pour les utilisateurs non privilégiés peut leur fournir les moyens d’obtenir des privilèges élevés non autorisés. Accorder un accès en lecture à ce répertoire pourrait permettre à un utilisateur non privilégié de savoir comment obtenir des privilèges élevés ou contourner les contrôles d’audit. Définissez le propriétaire et le groupe de /etc/chron.hourly sur root et les autorisations sur 0700 ou exécutez « /opt/microsoft/omsagent/plugin/omsremediate -r fix-cron-file-perms ».
Vérifier que les autorisations sur /etc/cron.monthly sont configurées.
(96)
Description : Accorder l’accès en écriture à ce répertoire pour les utilisateurs non privilégiés peut leur fournir les moyens d’obtenir des privilèges élevés non autorisés. Accorder un accès en lecture à ce répertoire pourrait permettre à un utilisateur non privilégié de savoir comment obtenir des privilèges élevés ou contourner les contrôles d’audit. Définissez le propriétaire et le groupe de /etc/chron.monthly sur root et les autorisations sur 0700 ou exécutez « /opt/microsoft/omsagent/plugin/omsremediate -r fix-cron-file-perms ».
Vérifier que les autorisations sur /etc/cron.weekly sont configurées.
(97)
Description : Accorder l’accès en écriture à ce répertoire pour les utilisateurs non privilégiés peut leur fournir les moyens d’obtenir des privilèges élevés non autorisés. Accorder un accès en lecture à ce répertoire pourrait permettre à un utilisateur non privilégié de savoir comment obtenir des privilèges élevés ou contourner les contrôles d’audit. Définissez le propriétaire et le groupe de /etc/chron.weekly sur root et les autorisations sur 0700 ou exécutez « /opt/microsoft/omsagent/plugin/omsremediate -r fix-cron-file-perms ».
Vérifier que at/cron est restreint aux utilisateurs autorisés.
(98)
Description : Sur de nombreux systèmes, seul l’administrateur système est autorisé à planifier des tâches cron. L’utilisation du fichier cron.allow pour contrôler qui peut exécuter des tâches cron permet d’appliquer cette stratégie. Il est plus facile de gérer une liste d’autorisation qu’une liste de refus. Dans une liste d’exclusion, vous pouvez potentiellement ajouter un identifiant utilisateur au système et oublier de l’ajouter aux fichiers d’exclusions. Remplacez /etc/cron.deny et /etc/at.deny par leurs fichiers allow respectifs ou exécutez « /opt/microsoft/omsagent/plugin/omsremediate -r fix-cron-job-allow ».
SSH doit être configuré et géré pour répondre aux meilleures pratiques. - '/etc/ssh/sshd_config Protocol = 2'
(106.1)
Description : une personne malveillante pourrait utiliser des défauts dans une version antérieure du protocole SSH pour obtenir un accès. Exécutez la commande « /opt/microsoft/omsagent/plugin/omsremediate -r configure-ssh-protocol ». Cela va définir « Protocole 2 » dans le fichier « /etc/ssh/sshd_config ».
SSH doit être configuré et géré pour répondre aux meilleures pratiques. - '/etc/ssh/sshd_config IgnoreRhosts = yes'
(106.3)
Description : une personne malveillante pourrait utiliser des défauts dans le protocole Rhosts pour obtenir un accès. Exécutez la commande « /usr/local/bin/azsecd remediate (/opt/microsoft/omsagent/plugin/omsremediate) -r enable-ssh-ignore-rhosts ». Cette opération ajoute la ligne « IgnoreRhosts yes » au fichier « /etc/ssh/sshd_config ».
Vérifiez que SSH LogLevel est défini sur INFO.
(106.5)
Description : SSH fournit plusieurs niveaux de journalisation avec différentes quantités de verbosité. DEBUG n’est spécifiquement pas recommandé sauf pour le débogage des communications SSH, car il fournit tellement de données qu’il est difficile d’identifier les informations de sécurité importantes. INFO level est le niveau de base qui enregistre uniquement l’activité de connexion des utilisateurs SSH. Dans de nombreuses situations, par exemple la réponse aux incidents, il est important de déterminer le moment où un utilisateur particulier a été actif sur un système. L’enregistrement de déconnexion peut éliminer les utilisateurs qui se sont déconnectés, ce qui permet de limiter le champ d’exploration. Modifiez le fichier /etc/ssh/sshd_config pour définir le paramètre comme suit : LogLevel INFO
Vérifiez que SSH MaxAuthTries est défini sur une valeur inférieure ou égale à 6.
(106.7)
Description : le fait de définir le paramètre MaxAuthTries sur un nombre faible réduit le risque d’attaques par force brute sur le serveur SSH. Si le paramètre recommandé est 4, définissez le nombre en fonction de la stratégie de site. Assurez-vous que SSH MaxAuthTries est défini sur 6 ou moins. Modifiez le fichier /etc/ssh/sshd_config pour définir le paramètre comme suit : MaxAuthTries 6
Assurez-vous que l’accès SSH est limité.
(106.11)
Description : la restriction des utilisateurs qui peuvent accéder à distance au système via SSH permet de garantir que seuls les utilisateurs autorisés accèdent au système. Assurez-vous que l’accès SSH est limité. Modifiez le fichier /etc/ssh/sshd_config pour définir un ou plusieurs paramètres comme suit : AllowUsers AllowGroups DenyUsers DenyGroups
L’émulation de la commande rsh par le biais du serveur SSH doit être désactivée. - '/etc/ssh/sshd_config RhostsRSAAuthentication = no'
(107)
Description : une personne malveillante pourrait utiliser des défauts dans le protocole RHosts pour obtenir un accès. Exécutez la commande « /opt/microsoft/omsagent/plugin/omsremediate -r disable-ssh-rhost-rsa-auth ». Cette opération ajoute la ligne « RhostsRSAAuthentication no » au fichier « /etc/ssh/sshd_config ».
L’authentification basée sur l’hôte SSH doit être désactivée. - '/etc/ssh/sshd_config HostbasedAuthentication = no'
(108)
Description : un attaquant pourrait utiliser l’authentification basée sur l’hôte pour accéder au système à partir d’un hôte compromis Exécutez la commande « /opt/microsoft/omsagent/plugin/omsremediate -r disable-ssh-host-based-auth ». Cette opération ajoute la ligne « HostbasedAuthentication no » au fichier « /etc/ssh/sshd_config ».
La connexion racine via SSH doit être désactivée. - '/etc/ssh/sshd_config PermitRootLogin = no'
(109)
Description : une personne malveillante pourrait forcer le mot de passe racine ou masquer son historique de commandes en se connectant directement en tant qu’utilisateur racine. Exécutez la commande « /usr/local/bin/azsecd remediate -r disable-ssh-root-login ». Cette opération ajoute la ligne « PermitRootLogin No » au fichier « /etc/ssh/sshd_config ».
Les connexions à distance à partir de comptes avec des mots de passe vides doivent être désactivées. - '/etc/ssh/sshd_config PermitEmptyPasswords = no'
(110)
Description : une personne malveillante pourrait obtenir un accès par le biais de la recherche de mot de passe. Exécutez la commande « /usr/local/bin/azsecd remediate (/opt/microsoft/omsagent/plugin/omsremediate) -r disable-ssh-empty-passwords ». Cette opération ajoute la ligne « PermitEmptyPasswords no » au fichier « /etc/ssh/sshd_config ».
Vérifiez que l’intervalle du délai d’inactivité SSH est configuré.
(110.1)
Description : aucune valeur de délai d’attente associée à une connexion ne peut permettre à un utilisateur non autorisé d’accéder à une session SSH d’un autre utilisateur. La définition d’une valeur de délai d’attente réduit au minimum le risque que cela se produise. Alors que le paramètre recommandé est de 300 secondes (5 minutes), définissez cette valeur de délai d’attente en fonction de la stratégie de site. Le paramètre recommandé pour ClientAliveCountMax est 0. Dans ce cas, la session cliente se termine après 5 minutes d’inactivité et aucun message de conservation n’est envoyé. Modifiez le fichier /etc/ssh/sshd_config pour définir les paramètres en fonction de la stratégie.
Vérifiez que SSH LoginGraceTime est défini sur une minute ou moins.
(110.2)
Description : le fait de définir le paramètre LoginGraceTime sur un nombre faible réduit le risque d’attaques par force brute sur le serveur SSH. Cela limite également le nombre de connexions simultanées non authentifiées. Alors que le paramètre recommandé est de 60 secondes (1 minute), définissez le nombre en fonction de la stratégie de site. Modifiez le fichier /etc/ssh/sshd_config pour définir les paramètres en fonction de la stratégie, ou exécutez « /opt/Microsoft/omsagent/plugin/omsremediate-r configure-login-grace-time »
Vérifiez que seuls les algorithmes MAC approuvés sont utilisés.
(110.3)
Description : les algorithmes MAC MD5 et 96 bits sont considérés comme faibles et sont connus pour améliorer l’exploitabilité dans les attaques par repli SSH. Les algorithmes faibles continuent d’être particulièrement attentifs à un point faible qui peut être exploité avec une puissance de calcul étendue. Une personne malveillante qui interrompt l’algorithme peut tirer parti d’une position MiTM pour déchiffrer le tunnel SSH et capturer les informations d’identification et les informations. Modifiez le fichier /etc/sshd_config et ajoutez/modifiez la ligne d’algorithmes MAC pour qu’elle contienne une liste séparée par des virgules des d’algorithmes MAC approuvés, ou exécutez « /opt/microsoft/omsagent/plugin/omsremediate-r configure-macs »
Vérifier que la bannière d’avertissement d’ouverture de session à distance est correctement configurée.
(111)
Description : Les messages d’avertissement informent les utilisateurs qui tentent de se connecter au système de leur état légal concernant le système et doivent inclure le nom de l’organisation qui détient le système et toutes les stratégies de surveillance en place. L’affichage d’informations relatives au système d’exploitation et aux correctifs dans les bannières de connexion a également pour effet secondaire de fournir des informations détaillées sur le système aux attaquants qui tentent de cibler des failles de sécurité spécifiques d’un système. Les utilisateurs autorisés peuvent facilement obtenir ces informations en exécutant la commande uname -a une fois qu’ils se sont connectés. Supprimez toutes les instances \m, \r, \s, et \v du fichier /etc/issue.net.
Vérifier que la bannière d’avertissement d’ouverture de session locale est correctement configurée.
(111.1)
Description : Les messages d’avertissement informent les utilisateurs qui tentent de se connecter au système de leur état légal concernant le système et doivent inclure le nom de l’organisation qui détient le système et toutes les stratégies de surveillance en place. L’affichage d’informations relatives au système d’exploitation et aux correctifs dans les bannières de connexion a également pour effet secondaire de fournir des informations détaillées sur le système aux attaquants qui tentent de cibler des failles de sécurité spécifiques d’un système. Les utilisateurs autorisés peuvent facilement obtenir ces informations en exécutant la commande uname -a une fois qu’ils se sont connectés. Supprimez toutes les instances \m, \r, \s, et \v du fichier /etc/issue.
La bannière d’avertissement SSH doit être activée. - '/etc/ssh/sshd_config Banner = /etc/issue.net'
(111.2)
Description : les utilisateurs ne seront pas avertis que leurs actions sur le système sont surveillées. Exécutez la commande « /usr/local/bin/azsecd remediate-r configure-ssh-banner ». Cette opération ajoute la ligne « Banner /etc/azsec/banner.txt » au fichier « /etc/ssh/sshd_config ».
Les utilisateurs ne sont pas autorisés à définir des options d’environnement pour SSH.
(112)
Description : une personne malveillante peut être en mesure de contourner certaines restrictions d’accès sur SSH. Supprimez la ligne « PermitUserEnvironment yes » du fichier « /etc/ssh/sshd_config »
Les chiffrements appropriés doivent être utilisés pour SSH. (Ciphers aes128-ctr,aes192-ctr,aes256-ctr)
(113)
Description : une personne malveillante peut compromettre une connexion SSH faiblement sécurisée. Exécutez la commande « /usr/local/bin/azsecd remediate -r configure-ssh-ciphers ». Cette opération ajoute la ligne « Ciphers aes128-ctr,aes192-ctr,aes256-ctr » au fichier « /etc/ssh/sshd_config ».
Le service avahi-daemon doit être désactivé.
(114)
Description : Un attaquant peut utiliser une vulnérabilité dans le démon Avahi pour obtenir l’accès. Désactivez le service avahi-daemon ou exécutez « /opt/microsoft/omsagent/plugin/omsremediate -r disable-avahi-daemon ».
Le service cups doit être désactivé.
(115)
Description : Un attaquant peut utiliser une faille dans le service cups pour élever ses privilèges. Désactivez le service cups ou exécutez « /opt/microsoft/omsagent/plugin/omsremediate -r disable-cups ».
Le service isc-dhcpd doit être désactivé.
(116)
Description : Un attaquant peut utiliser dhcpd pour fournir des informations erronées aux clients, interférant avec le fonctionnement normal. Supprimez le package isc-dhcp-server (apt-get remove isc-dhcp-server).
Le package isc-dhcp-server doit être désinstallé.
(117)
Description : Un attaquant peut utiliser dhcpd pour fournir des informations erronées aux clients, interférant avec le fonctionnement normal. Supprimez le package isc-dhcp-server (apt-get remove isc-dhcp-server).
Le package sendmail doit être désinstallé.
(120)
Description : Un attaquant peut utiliser ce système pour envoyer des e-mails avec du contenu malveillant à d’autres utilisateurs. Désinstallez le package sendmail (apt-get remove sendmail).
Le package postfix doit être désinstallé.
(121)
Description : Un attaquant peut utiliser ce système pour envoyer des e-mails avec du contenu malveillant à d’autres utilisateurs. Désinstallez le package postfix (apt-get remove postfix) ou exécutez « /opt/microsoft/omsagent/plugin/omsremediate -r remove-postfix ».
L’écoute du réseau postfix doit être désactivée, le cas échéant.
(122)
Description : Un attaquant peut utiliser ce système pour envoyer des e-mails avec du contenu malveillant à d’autres utilisateurs. Ajoutez la ligne « inet_interfaces localhost » au fichier « /etc/postfix/main.cf ».
Le service ldap doit être désactivé.
(124)
Description : Un attaquant peut manipuler le service LDAP sur cet hôte pour distribuer de fausses données aux clients LDAP. Désinstallez le package slapd (apt-get remove slapd).
Le service rpcgssd doit être désactivé.
(126)
Description : Un attaquant peut utiliser une faille dans rpcgssd/nfs pour obtenir l’accès. Désactivez le service rpcgssd ou exécutez « /opt/microsoft/omsagent/plugin/omsremediate -r disable-rpcgssd ».
Le service rpcidmapd doit être désactivé.
(127)
Description : Un attaquant peut utiliser une faille dans idmapd/nfs pour obtenir l’accès. Désactivez le service rpcidmapd ou exécutez « /opt/microsoft/omsagent/plugin/omsremediate -r disable-rpcidmapd ».
Le service portmap doit être désactivé.
(129.1)
Description : Un attaquant peut utiliser une faille dans portmap pour obtenir l’accès. Désactivez le service rpcbind ou exécutez « /opt/microsoft/omsagent/plugin/omsremediate -r disable-rpcbind ».
Le service NFS (Network File System) doit être désactivé.
(129.2)
Description : une personne malveillante peut utiliser NFS pour monter des partages et exécuter/copier des fichiers. Désactivez le service nfs ou exécutez « /opt/microsoft/omsagent/plugin/omsremediate -r disable-nfs ».
Le service rpcsvcgssd doit être désactivé.
(130)
Description : Un attaquant peut utiliser une faille dans rpcsvcgssd pour obtenir l’accès. Supprimez la ligne « NEED_SVCGSSD = yes » du fichier « /etc/inetd.conf ».
Le service nommé doit être désactivé.
(131)
Description : Un attaquant peut utiliser le service DNS pour distribuer de fausses données aux clients. Désinstallez le package bind9 (apt-get remove bind9).
Le package bind doit être désinstallé.
(132)
Description : Un attaquant peut utiliser le service DNS pour distribuer de fausses données aux clients. Désinstallez le package bind9 (apt-get remove bind9).
Le service dovecot doit être désactivé.
(137)
Description : Le système peut être utilisé comme serveur IMAP/POP3. Désinstallez le package dovecot-core (apt-get remove dovecot-core).
Le package dovecot doit être désinstallé.
(138)
Description : Le système peut être utilisé comme serveur IMAP/POP3. Désinstallez le package dovecot-core (apt-get remove dovecot-core).
Vérifier qu’il n’existe aucune entrée + héritée dans /etc/passwd.
(156.1)
Description : Un attaquant peut obtenir un accès en utilisant le nom d’utilisateur « + » sans mot de passe. Supprimez toutes les entrées dans /etc/passwd qui commencent par « +: ».
Vérifier qu’il n’existe aucune entrée + héritée dans /etc/shadow.
(156.2)
Description : Un attaquant peut obtenir un accès en utilisant le nom d’utilisateur « + » sans mot de passe. Supprimez toutes les entrées dans /etc/shadow qui commencent par « +: ».
Vérifier qu’il n’existe aucune entrée + héritée dans /etc/group.
(156.3)
Description : Un attaquant peut obtenir un accès en utilisant le nom d’utilisateur « + » sans mot de passe. Supprimez toutes les entrées dans /etc/group qui commencent par « +: ».
Vérifier que l’expiration du mot de passe est de 365 jours ou moins.
(157.1)
Description : Limiter l’âge du mot de passe réduit aussi la fenêtre d’opportunité pour un attaquant d’exploiter des informations d’identification compromises ou de réussir à compromettre des informations d’identification via une attaque par force brute en ligne. Définissez le paramètre PASS_MAX_DAYS sur une valeur inférieure ou égale à 365 dans /etc/login.defs, ou exécutez « /opt/microsoft/omsagent/plugin/omsremediate -r configure-password-policy-max-days »
Vérifier que le délai en jour d’avertissement de l’expiration du mot de passe est de 7 ou plus.
(157.2)
Description : Le fait de prévenir de l’expiration d’un mot de passe donne aux utilisateurs le temps de penser à un mot de passe sécurisé. Les utilisateurs pris au dépourvu peuvent choisir un mot de passe simple ou le noter à un endroit où il peut être découvert. Définissez le paramètre PASS_WARN_AGE sur 7 dans /etc/login.defs, ou exécutez « /opt/microsoft/omsagent/plugin/omsremediate -r configure-password-policy-warn-age »
Vérifier que la réutilisation des mots de passe est limitée.
(157.5)
Description : Le fait de forcer les utilisateurs à ne pas réutiliser leurs cinq derniers mots de passe réduit la probabilité qu’un attaquant puisse deviner le mot de passe. Assurez-vous que l’option « remember » est définie au moins sur 5 dans /etc/pam.d/common-password ou dans /etc/pam.d/password_auth et /etc/pam.d/system_auth, ou exécutez « /opt/microsoft/omsagent/plugin/omsremediate -r configure-password-policy-history »
Vérifier que l’algorithme de hachage de mot de passe est SHA-512.
(157.11)
Description : L’algorithme SHA-512 fournit un hachage beaucoup plus puissant que MD5, ce qui offre une protection supplémentaire au système en augmentant le niveau d’effort qu’un attaquant doit fournir pour réussir à déterminer les mots de passe. Remarque : Ces modifications s’appliquent uniquement aux comptes configurés sur le système local. Définissez l’algorithme de hachage de mot de passe sur sha512. De nombreuses distributions fournissent des outils pour mettre à jour la configuration de PAM. Pour plus d’informations, consultez votre documentation. Si aucun outil n’est fourni, modifiez le fichier config /etc/pam.d/ approprié et ajoutez ou modifiez les lignes pam_unix.so pour inclure l’option sha512 : password sufficient pam_unix.so sha512.
Vérifier que le nombre minimal de jours entre les changements de mot de passe est de 7 ou plus.
(157.12)
Description : En restreignant la fréquence des changements de mot de passe, un administrateur peut empêcher les utilisateurs de changer leur mot de passe à plusieurs reprises pour tenter de contourner les contrôles de réutilisation des mots de passe. Définissez le paramètre PASS_MIN_DAYS sur 7 dans /etc/login.defs : PASS_MIN_DAYS 7. Modifiez les paramètres utilisateur pour tous les utilisateurs dont le mot de passe est défini pour correspondre : chage --mindays 7, ou exécutez « /opt/microsoft/omsagent/plugin/omsremediate -r set-pass-min-days »
Vérifier que la date du dernier changement de mot de passe de tous les utilisateurs se trouve dans le passé.
(157.14)
Description : Si la date de changement de mot de passe enregistrée par un utilisateur est dans le futur, alors il pourrait contourner toute expiration définie pour le mot de passe. Assurez-vous que le verrouillage d’un mot de passe inactif est de 30 jours ou moins. Exécutez la commande suivante pour définir la période d’inactivité du mot de passe par défaut sur 30 jours : # useradd -D -f 30. Modifiez les paramètres utilisateur pour tous les utilisateurs dont le mot de passe est défini pour correspondre : # chage --inactive 30 .
Vérifier que les comptes système ne se connectent pas.
(157.15)
Description : Il est important de vérifier que les comptes qui ne sont pas utilisés par des utilisateurs normaux ne puissent pas être utilisés pour fournir un interpréteur de commandes interactif. Par défaut, Ubuntu affecte au champ de mot de passe de ces comptes une chaîne non valide. Toutefois, il est également recommandé d’affecter la valeur /usr/sbin/nologin au champ d’interpréteur de commandes dans le fichier de mots de passe. Cela empêche le compte d’être potentiellement utilisé pour exécuter des commandes. Définissez l’interpréteur de commandes pour tous les comptes renvoyés par le script d’audit sur /sbin/nologin.
Vérifier que le groupe par défaut pour le compte racine est GID 0.
(157.16)
Description : L’utilisation de GID 0 pour le compte _root_ permet d’éviter que les fichiers appartenant à _root_ ne deviennent accidentellement accessibles aux utilisateurs sans privilèges. Exécutez la commande suivante pour définir le groupe par défaut de l’utilisateur root sur GID 0 : # usermod -g 0 root.
Vérifier que la racine est le seul compte UID 0.
(157.18)
Description : Cet accès doit être limité au seul compte root par défaut et uniquement à partir de la console système. L’accès administratif doit se faire via un compte sans privilèges à l’aide d’un mécanisme approuvé. Supprimez tous les utilisateurs autres que root ayant l’UID 0 ou attribuez-leur un nouvel UID le cas échéant.
Supprimer les comptes inutiles.
(159)
Description : Pour des raisons de conformité. Supprimez les comptes inutiles.
Vérifier que le service auditd est activé.
(162)
Description : La capture d’événements système fournit aux administrateurs système des informations leur permettant de déterminer si un accès non autorisé à leur système se produit. Installez le package audit (systemctl enable auditd).
Exécuter le service AuditD
(163)
Description : La capture d’événements système fournit aux administrateurs système des informations leur permettant de déterminer si un accès non autorisé à leur système se produit. Exécutez le service AuditD (systemctl start auditd).
Vérifier que SNMP Server n’est pas activé.
(179)
Description : Le serveur SNMP peut communiquer en utilisant SNMP v1, qui transmet les données en clair et ne nécessite pas d’authentification pour exécuter les commandes. Sauf en cas d’absolue nécessité, il est recommandé de ne pas utiliser le service SNMP. Si SNMP est requis, le serveur doit être configuré pour interdire SNMP v1. Exécutez l’une des commandes suivantes pour désactiver snmpd : # chkconfig snmpd off# systemctl disable snmpd# update-rc.d snmpd disable
Vérifier que le service rsync n’est pas activé.
(181)
Description : Le service rsyncd présente un risque de sécurité, car il utilise des protocoles non chiffrés pour la communication. Exécutez l’une des commandes suivantes pour désactiver rsyncd : chkconfig rsyncd off, systemctl disable rsyncd, update-rc.d rsyncd disable ou exécutez « /opt/microsoft/omsagent/plugin/omsremediate -r disable-rsync »
Vérifier que le serveur NIS n’est pas activé.
(182)
Description : Le service NIS est intrinsèquement un système non sécurisé vulnérable aux attaques par déni de service et aux dépassements de tampon et dont l’authentification pour l’interrogation des cartes NIS est médiocre. En règle générale, NIS est remplacé par des protocoles tels que LDAP (Lightweight Directory Access Protocol). Il est recommandé de désactiver ce service, et d’utiliser des services plus sécurisés Exécutez l’une des commandes suivantes pour désactiver ypserv : # chkconfig ypserv off# systemctl disable ypserv# update-rc.d ypserv disable
Vérifier que le client rsh n’est pas installé.
(183)
Description : Ces clients hérités contiennent de nombreuses failles de sécurité et ont été remplacés par le package SSH, plus sûr. Même si le serveur est supprimé, il est préférable de vérifier que les clients le sont également pour empêcher les utilisateurs de tenter d’utiliser ces commandes par inadvertance, et d’exposer ainsi leurs informations d’identification. Notez que la suppression du package rsh supprime les clients pour rsh, rcp et rlogin. Désinstallez rsh à l’aide du gestionnaire de package approprié ou en utilisant l’installation manuelle : yum remove rshapt-get remove rshzypper remove rsh
Désactiver SMB v1 avec Samba.
(185)
Description : SMB v1 présente des vulnérabilités graves et bien connues et ne chiffre pas les données en transit. S’il doit être utilisé pour des raisons professionnelles, il est fortement recommandé de prendre des mesures supplémentaires pour atténuer les risques inhérents à ce protocole. Si Samba n’est pas en cours d’exécution, supprimez le package. Sinon, il doit y avoir une ligne dans la section [global] de /etc/samba/smb.conf : min protocol = SMB2, ou exécutez « /opt/microsoft/omsagent/plugin/omsremediate -r set-smb-min-version ».

Notes

La disponibilité de paramètres de configuration d’invité Azure Policy spécifiques peut varier dans Azure Government et dans d’autres clouds nationaux.

Étapes suivantes

Autres articles sur Azure Policy et la configuration d’invité :