Comme nous le savons tous, l’utilisateur root est roi et dispose de privilèges illimités sur le système Linux. Cependant, les utilisateurs non root sont limités aux tâches de base. En plus, utilisateurs sudo ne reçoivent qu’un certain degré de privilèges root, selon ce que l’utilisateur root juge approprié pour effectuer des tâches élevées spécifiques.

Des problèmes surviennent lorsque les utilisateurs réguliers ont un accès incontrôlé aux ressources ou sont escaladés vers la racine involontairement. Il s’agit d’un risque de sécurité sérieux qui pourrait entraîner des violations, des modifications indésirables et, dans le pire des cas, la panne du système. Un autre risque potentiel est lorsque les fichiers ont des autorisations de fichiers moins sécurisées. Par exemple, les fichiers de démarrage avec des autorisations d’écriture pour les utilisateurs globaux pourraient facilement être modifiés ou corrompus, entraînant un système cassé.

[ You might also like: Useful Tips for Securing Data and Linux ]

Bien que nous puissions mettre en œuvre la sécurité physique, réseau et des données, un utilisateur malveillant peut contourner les mesures de sécurité et tirer parti de ces failles de sécurité. C’est pour cette raison que la sécurité du système de fichiers doit être prise au sérieux. Il fournit une couche supplémentaire de défense face aux attaques ou aux menaces internes d’employés malveillants qui n’ont pas à faire le gros du travail en contournant les mesures de sécurité pour accéder aux fichiers.

En matière de sécurité du système, nous nous concentrerons sur les points clés suivants:

Publicité
  • Droits d’accès – Autorisations des utilisateurs et des groupes.
  • Appliquez les politiques de mot de passe avec le module PAM.

Droits d’accès – Séparation des utilisateurs et des groupes

Vous devez probablement avoir entendu cela tout sous Linux est considéré comme un fichier. Et si ce n’est pas le cas, c’est un processus. Chaque fichier sur un système Linux appartient à un utilisateur et à un utilisateur de groupe. Il porte également les autorisations de fichier pour 3 catégories d’utilisateurs: Utilisateur (u), Grouper (g), et d’autres (o). Les permissions sont représentées en lecture, écriture et exécution ( rwx ) pour chaque catégorie d’utilisateurs.

rwx        rwx	     rwx
User       Group     Others

Comme vu précédemment, dans le Section de base de Linux, vous pouvez afficher les autorisations de fichier en utilisant le format long du commande ls comme montré.

$ ls -l
Liste Des Fichiers Sous Linux
Liste Des Fichiers Sous Linux

Pour récapituler, les autorisations sont généralement représentées par neuf caractères. Les trois premiers caractères représentent les droits d’accès de l’utilisateur réel propriétaire du fichier. Le deuxième jeu de caractères représente les autorisations du propriétaire du groupe du fichier. Enfin, le dernier ensemble pour les autres utilisateurs ou les utilisateurs globaux. Ces personnages sont perpétuellement dans le lis, écrivez, exécuter (rwx) ordre.

Après les autorisations, nous avons la propriété des utilisateurs et des groupes, suivis de la taille du fichier ou du répertoire, de la date de modification et enfin du nom du fichier.

Modification des autorisations et des propriétés des fichiers / répertoires

Les autorisations utilisateur des fichiers et des répertoires peuvent être modifiées si nécessaire. La règle d’or est d’utiliser le principe de sécurité du moindre privilège. En termes simples, assurez-vous que les utilisateurs disposent des droits d’accès minimum ou des autorisations nécessaires pour effectuer le travail.

Le principe des moindres privilèges restreint les utilisateurs à certains rôles uniquement et, ce faisant, minimise le risque que des attaquants accèdent et modifient des données critiques en exploitant un compte utilisateur à faible levier. Cela réduit également la surface d’attaque et limite la propagation des logiciels malveillants dans le cas où l’attaquant prend le contrôle de votre système.

Par conséquent, si un utilisateur a uniquement besoin d’afficher le contenu d’un fichier ou d’un répertoire, il ne doit pas disposer des autorisations d’exécution ou d’écriture. Au niveau très basique, n’accordez que les moindres autorisations et propriétés requises par l’utilisateur pour accomplir des tâches. Nous avons abordé comment modifier les autorisations et les propriétés des utilisateurs sur les fichiers / répertoires à l’aide des commandes chmod et chown dans le commandes Linux de base sujet.

Mode d’autorisation de sticky bit

Pour que l’administrateur système puisse gérer plus facilement les autorisations, des autorisations spéciales ou des droits d’accès peuvent être accordés à des répertoires entiers. L’une des autorisations spéciales qui peuvent être appliquées pour restreindre la suppression et la modification d’un fichier ou d’un répertoire est le sticky bit.

Bit collant

Dans un scénario où un répertoire partagé accessible à tous les utilisateurs dans le système ou le réseau, il existe un risque potentiel que certains utilisateurs puissent supprimer ou modifier les fichiers à l’intérieur du répertoire. Cela n’est pas souhaitable si vous souhaitez maintenir l’intégrité du contenu du répertoire. Et c’est là que le morceau collant entre en jeu.

Un sticky bit est une autorisation de fichier spéciale définie sur un fichier ou un répertoire entier. Il accorde uniquement au propriétaire de ce fichier / répertoire l’autorisation de supprimer ou d’apporter des modifications au contenu du fichier ou du répertoire. Aucun autre utilisateur ne peut supprimer ou modifier le fichier / répertoire. Il a la valeur symbolique de t et une valeur numérique de 1000.

Pour activer un sticky bit sur un répertoire, utilisez le commande chmod comme suit:

$ chmod +t directory_name

Dans l’exemple ci-dessous, nous avons appliqué un sticky bit au répertoire appelé test. Dans le cas d’un répertoire, tout le contenu héritera des permissions de sticky bit. Vous pouvez vérifier les autorisations de sticky bit en utilisant le ls -ld commander. Assurez-vous de remarquer le t symbole à la fin des autorisations de fichier.

$ ls -ld test
Définir Sticky Bit Sous Linux
Définir Sticky Bit Sous Linux

Si un autre utilisateur tente de supprimer le répertoire ou de modifier le fichier à l’intérieur du répertoire, il est accueilli par un Permission refusée Erreur.

Autorisation De Sticky Bit Refusée
Autorisation De Sticky Bit Refusée

Et c’est l’essentiel de l’autorisation de fichier stick bit.

Surveillance des autorisations SUID et SGID

le SUID (Définir l’ID utilisateur) est une autre autorisation de fichier spéciale qui permet à un autre utilisateur régulier d’exécuter un fichier avec les autorisations de fichier du propriétaire du fichier. Il est généralement désigné par une valeur symbolique s à la partie utilisateur des autorisations de fichier au lieu d’un x qui représente les autorisations d’exécution. Le SUID a une valeur numérique de 4000.

le SGID, (Définir l’ID de groupe) permet à un utilisateur normal d’hériter des autorisations de groupe du propriétaire du groupe de fichiers. Plûtot que le x pour les autorisations d’exécution, vous verrez un s dans la partie groupe des autorisations de fichier. le SGID a une valeur numérique de 2000.

Aussi pratique qu’ils soient, le SUID et SGID les autorisations sont associées à des risques de sécurité et doivent être évitées à tout prix. En effet, ils accordent des privilèges spéciaux aux utilisateurs réguliers. Si un intrus se faisant passer pour un utilisateur régulier tombe sur un fichier exécutable appartenant à l’utilisateur root avec un SUID un peu mis dessus, ils peuvent utiliser cette faille et exploiter le système.

Pour trouver tous les fichiers avec SUID bit défini sous Linux, exécutez le commande de recherche en tant qu’utilisateur root.

$ find / -perm -4000 type -f

Pour les répertoires exécutés:

$ find / -perm -4000 type -d

Pour trouver tous les fichiers avec SGID bit set run:

$ find / -perm -2000 type -f

Pour les répertoires, exécutez:

$ find / -perm -2000 type -d

Pour supprimer le SUID bit sur un fichier, exécutez la commande chmod comme indiqué:

$ chmod u-s /path/to/file

Pour supprimer le bit SGID d’un fichier, exécutez la commande:

$ chmod g-s filename /path/to/file

Appliquer les politiques de mot de passe avec le module PAM

Il n’est pas rare que les utilisateurs définissent des mots de passe faibles. Un bon nombre définit des mots de passe courts, simples et faciles à deviner pour éviter de les oublier lors de la connexion. Bien que pratiques, les mots de passe faibles peuvent facilement être violés à l’aide de scripts d’attaque par force brute.

le PAM module ( Module d’authentification enfichable ) est un module qui permet aux administrateurs système d’appliquer des politiques de mot de passe sur les systèmes Linux. Pour ce faire, vous avez besoin du pam_pwquality module fourni par le libpam_pwquality bibliothèque. le pam_pwquality Le module vérifie la force d’un mot de passe par rapport à un ensemble de règles et un dictionnaire système et identifie les choix de mots de passe faibles.

Pour installer le pam_pwquality module sur Ubuntu 18.04 et versions ultérieures, exécutez:

$ sudo apt install libpam_pwquality

Pour RHEL / CentOS 8, exécutez la commande:

$ sudo dnf install libpwquality

Le fichier de configuration se trouve à l’emplacement suivant:

  • Sur les systèmes Debian – /etc/pam.d/common-password
  • Sur les systèmes RedHat – /etc/pam.d/system-auth

Configuration de la politique de mot de passe

Avant de commencer à modifier le PAM fichier de configuration, examinons d’abord la collecte d’informations sur les contrôles de vieillissement des mots de passe.

Détails de l’ancienneté du mot de passe

Ceux-ci peuvent être trouvés dans le /etc/login.defs déposer.

Le fichier contient les contrôles de mot de passe clés suivants:

  • PASS_MAX_DAYS: Nombre maximum de jours pendant lesquels un mot de passe peut être utilisé.
  • PASS_MIN_DAYS: Nombre minimum. de jours autorisés entre les changements de mot de passe.
  • PASS_WARN_AGE: Nombre de jours d’avertissement donné avant l’expiration d’un mot de passe.

Les valeurs par défaut sont indiquées ci-dessous.

Vieillissement Des Mots De Passe Linux
Vieillissement Des Mots De Passe Linux

le PASS_MAX_DAYS L’attribut limite le nombre de jours pendant lesquels un utilisateur peut utiliser son mot de passe. Lorsque cette valeur est atteinte ou que le mot de passe expire, l’utilisateur est obligé de modifier son mot de passe pour se connecter au système. Par défaut, cette valeur est définie sur 99999, qui se traduit par 273 années. Cela n’a pas beaucoup de sens en ce qui concerne la sécurité car l’utilisateur peut continuer à utiliser son mot de passe pendant toute sa durée de vie.

Vous pouvez définir cette valeur sur une valeur significative, par exemple 30 jours, comme indiqué.

PASS_MAX_DAYS  30

Après 30 jours, l’utilisateur sera obligé de changer son mot de passe pour un autre.

le PASS_MIN_DAYS L’attribut précise la durée minimale pendant laquelle les utilisateurs peuvent utiliser leur mot de passe avant de le modifier. Qu’est-ce que ça veut dire? Si, par exemple, cette valeur est définie sur 15 jours, l’utilisateur ne pourra plus modifier son mot de passe avant 15 jours.

PASS_MAX_DAYS  15

le PASS_WARN_AGE L’attribut spécifie le nombre de jours pendant lesquels un utilisateur recevra un avertissement concernant l’expiration imminente de son mot de passe avant son expiration. Par exemple, vous pouvez définir ce délai sur 7 jours, comme indiqué.

PASS_MAX_DAYS  7

REMARQUE: Ces contrôles de mot de passe ne fonctionnent pas avec les comptes préexistants. Ils ne sont appliqués qu’aux nouveaux comptes créés après la définition des règles.

Définition de la complexité du mot de passe avec le module PAM

Avant de modifier le /etc/pam.d/common-password fichier, créez une copie de sauvegarde. Dans cet exemple, nous avons créé le common-password.bak fichier de copie de sauvegarde.

$ sudo cp /etc/pam.d/common-password /etc/pam.d/common-password.bak

Ouvrez ensuite le fichier.

$ sudo vim /etc/pam.d/common-password 

Localisez la ligne ci-dessous.

password        requisite          pam_pwquality.so retry=3
Définition De La Complexité Des Mots De Passe Avec Pam
Définition De La Complexité Des Mots De Passe Avec Pam

le réessayez L’option définit le nombre maximum de fois où vous devez entrer le bon mot de passe avant d’obtenir une erreur. Par défaut, il est défini sur 3. Il ne s’agit que d’une seule option et nous allons inclure plusieurs options.

Ajoutez les attributs suivants à la ligne:

minlen=10 difok=3 lcredit=-1 ucredit=-1 dcredit=-1 ocredit=-1 reject_username 

Étoffons ces attributs.

  • minlen = 10: Définit la taille minimale acceptable pour le mot de passe. Dans ce cas, 10 caractères.
  • difok = 3: Il s’agit du nombre maximum de caractères présents dans le mot de passe précédent.
  • lcredit = -1: Il s’agit du nombre minimum de caractères minuscules qui doivent être présents dans le mot de passe.
  • ucredit = -1: Le est le nombre maximum de caractères minuscules qui doivent être présents dans le mot de passe.
  • dcredit = -1: Le nombre minimum de caractères numériques à définir dans le mot de passe.
  • ocrédit = -1: Le nombre minimum de caractères spéciaux, par exemple @, #, & qui doivent être définis dans le mot de passe.
  • rejet_username: Cette option déclenche le rejet du mot de passe si le mot de passe est le nom d’utilisateur au format direct ou inversé.

Si vous essayez de créer un nouvel utilisateur qui ne respecte pas les stratégies de mot de passe, vous allez vous heurter à de telles erreurs, comme indiqué.

Créer Un Nouvel Utilisateur Sous Linux
Créer Un Nouvel Utilisateur Sous Linux
Résumé

Ceci conclut le sujet sur la sécurité du système et les principes fondamentaux de la sécurité en général. Dans tout le chapitre, nous avons mis en lumière les mesures de sécurité de base que vous pouvez mettre en œuvre pour protégez votre système Linux contre les logiciels malveillants les utilisateurs tels que les pirates informatiques ou les employés mécontents.

.

Rate this post
Publicité
Article précédentStarline de Google montre la promesse et les dangers des discussions en 3D: un aperçu en profondeur
Article suivant«C’est comme faire du vélo» – Ninja à son retour à Fortnite
Avatar
Violette Laurent est une blogueuse tech nantaise diplômée en communication de masse et douée pour l'écriture. Elle est la rédactrice en chef de fr.techtribune.net. Les sujets de prédilection de Violette sont la technologie et la cryptographie. Elle est également une grande fan d'Anime et de Manga.

LAISSER UN COMMENTAIRE

S'il vous plaît entrez votre commentaire!
S'il vous plaît entrez votre nom ici