Cette page concerne le compte superutilisateur root
sous Linux, l’enracinement des téléphones et autres périphériques, et explique brièvement comment gérer l’accès root et les autres accès privilégiés.
Qu’est-ce qu’un utilisateur Root ?
Root est le compte superutilisateur sous Unix et Linux. Il s’agit d’un compte d’utilisateur à des fins administratives et dispose généralement des droits d’accès les plus élevés sur le système.
Habituellement, le compte utilisateur root est appelé root
. Cependant, sous Unix et Linux, tout compte avec l’ID utilisateur 0 est un compte root, quel que soit son nom. Il est assez courant pour certains administrateurs système d’avoir leurs propres comptes root sur un système, avec leurs propres mots de passe.
Gestion des accès privilégiés
La gestion des comptes privilégiés fait référence à la gestion de l’accès aux comptes privilégiés, y compris les comptes root. Le déploiement d’outils de gestion des accès privilégiés est important pour les organisations, car les comptes root sont si puissants. La plupart des cybercriminels sont perpétrés par des acteurs internes, tels que les administrateurs système. Il est important de rendre des comptes sur ce qu’ils font pour dissuader les délits d’initiés et les fraudes. De plus, de nombreuses réglementations et bonnes pratiques en matière de cybersécurité nécessitent le déploiement d’outils de gestion des accès privilégiés.
Les outils de gestion des accès privilégiés permettent de consigner et de surveiller les accès. Généralement, chaque connexion root et chaque commande exécutée en tant que root sont enregistrées.
Les mots de passe des comptes privilégiés ne doivent jamais être partagés. Les mots de passe partagés sont beaucoup plus susceptibles d’être mal utilisés, leurs mots de passe ont tendance à rester inchangés pendant de longues périodes et fuient souvent lorsque les employés changent d’emploi. De plus, comme ils ne relèvent de la responsabilité personnelle de personne et qu’ils trient les connaissances communes entre pairs, ils ont tendance à ne pas faire preuve de la même diligence que les comptes personnels et sont souvent envoyés par courrier électronique ou consignés dans des notes, des fichiers et des gestionnaires de mots de passe.
Un compte utilisateur root est une sorte de compte privilégié. Les autres comptes privilégiés comprennent les comptes de service et les comptes système.
Windows dispose de comptes d’administrateur local et d’Administrateur de domaine au lieu de comptes root.
Un compte superutilisateur est un terme générique pour les comptes root, les comptes administrateur Windows et d’autres comptes similaires avec des privilèges généralement illimités sur les systèmes.
Utilisation de SUDO et d’autres outils pour éliminer le besoin de comptes Root
Des outils tels que sudo peuvent être utilisés pour permettre aux utilisateurs sélectionnés d’exécuter les commandes sélectionnées en tant que root. Tous les outils de gestion des accès privilégiés offrent également cette fonctionnalité. Tous ces outils peuvent également enregistrer les commandes exécutées en tant que root pour rendre compte de ce qui est fait en tant que root.
Accès root
L’accès root signifie effectuer quelque chose en utilisant les privilèges root. Dans les systèmes basés sur Linux, cela signifie pouvoir faire quelque chose en utilisant l’ID utilisateur 0, c’est-à-dire en tant que root.
Avoir un accès root signifie généralement pouvoir se connecter à un compte root sur le serveur ou pouvoir exécuter des commandes en tant que root sur le serveur, par exemple en utilisant un outil d’escalade de privilèges tel que sudo
.
Privilèges Root
Le compte root possède des privilèges root. Cela signifie qu’il peut lire et écrire tous les fichiers du système, effectuer des opérations en tant qu’utilisateur, modifier la configuration du système, installer et supprimer des logiciels et mettre à niveau le système d’exploitation et / ou le micrologiciel. En substance, il peut faire à peu près n’importe quoi sur le système.
Il est généralement préférable d’utiliser des comptes de service dédiés pour l’exécution d’applications et la gestion de divers sous-systèmes de systèmes d’exploitation. L’accès au compte root doit être limité au nombre minimum absolu de personnes et d’utilisations.
SELinux et d’autres Moyens de limiter les privilèges Root
Les comptes Root sont très puissants et peuvent presque tout faire sur un ordinateur. Divers systèmes d’exploitation ont des mécanismes pour limiter ce que les comptes root peuvent faire. Ces systèmes sont principalement utilisés dans des entreprises sensibles à la sécurité avec des équipes de sécurité dédiées et dans certaines organisations militaires et gouvernementales.
SELinux est un outil populaire pour limiter ce que peuvent faire les processus exécutés en tant que root. Il est principalement destiné à limiter l’exposition aux vulnérabilités des processus de serveur (tels que les serveurs Web). Cependant, le shell de l’administrateur n’est qu’un programme normal, et SELinux peut également être utilisé pour limiter ce qui peut être fait à partir du shell.
SELinux est également fréquemment utilisé pour rendre l’évacuation des conteneurs plus difficile.
SELinux est inclus et activé par défaut dans Red Hat Enterprise Linux et CentOS Linux. Sur ces systèmes, si root ne peut pas accéder à un fichier ou effectuer une opération, la raison la plus courante est que la stratégie SELinux empêche l’opération.Apparmor est un autre outil similaire à SELinux.
Les systèmes utilisant une sécurité à plusieurs niveaux n’ont pas nécessairement de compte root ou leurs droits d’accès peuvent être sévèrement limités. Cependant, de tels systèmes sont rarement utilisés en dehors des environnements militaires classés.
Le système d’exploitation FreeBSD dispose d’indicateurs de fichier, définis à l’aide de la commande chflags
, qui peut être utilisée pour empêcher même root d’effectuer certaines opérations sur les fichiers.
Utilisateur Root sur Mac
Apple Mac possède également un compte root. Par défaut, il n’est utilisé qu’en interne. Pour activer le compte racine pour les connexions, suivez ces instructions.
Accès SSH Au Compte Root
SSH (Secure Shell) est souvent utilisé pour se connecter à des serveurs distants en tant que root. Cependant, la configuration par défaut dans OpenSSH empêche la connexion root à l’aide de mots de passe. Pour activer la connexion root, modifiez la valeur de l’option de configuration PermitRootLogin dans /ssh/sshd_config.
Définir des indicateurs d’id utilisateur sur les fichiers Exécutables
Une chose que les administrateurs système et les auditeurs doivent savoir, c’est que sous Linux et Unix, les programmes peuvent être exécutés à l’aide d’un ID utilisateur particulier en changeant le propriétaire de l’exécutable en cet utilisateur et en définissant le bit setuid
dans les autorisations de fichier. Par exemple, chown rootexecutable && chmod 4755 executable
définit l’exécutable pour qu’il s’exécute en tant que root, peu importe qui l’exécute. Il est courant pour les pirates (novices) de cacher des portes dérobées dans les systèmes en créant un exécutable approprié avec le jeu de bits setuid
. C’est quelque chose qui est souvent analysé dans les analyses de sécurité de base.
Mode Utilisateur unique et Récupération des mots de passe Root perdus
Le mode utilisateur unique est un mode spécial dans lequel les ordinateurs Linux, Unix et Mac peuvent être démarrés. Le démarrage en mode mono-utilisateur nécessite normalement un accès physique à l’ordinateur et est généralement utilisé pour récupérer le mot de passe root s’il a été perdu ou pour réparer le système d’exploitation ou restaurer les données en cas de panne ou de corruption catastrophique.
Attention, la vulnérabilité du micrologiciel Intel AMT peut être utilisée par des attaquants pour démarrer des systèmes en mode mono-utilisateur. Par conséquent, il est important de s’assurer que le micrologiciel du BIOS a été mis à niveau sur tous les serveurs Intel sur lesquels la technologie Intel Active Management Technology (AMT) est activée.
Certains systèmes d’exploitation peuvent être configurés pour exiger le mot de passe root afin de démarrer en mode utilisateur unique. Avec ces systèmes, il est particulièrement important d’avoir le mot de passe du compte root stocké en toute sécurité, par exemple dans un coffre-fort.
Tant que le cryptage du disque n’est pas utilisé, il est généralement possible de récupérer un système où le mot de passe root a été perdu en retirant le disque de l’ordinateur, en le connectant à un autre ordinateur en tant que deuxième disque, en le montant, puis en modifiant le fichier de mot de passe sur le disque monté pour effacer le mot de passe root (par exemple, modifiez /mnt/etc/shadow
et copiez le mot de passe crypté pour root à partir d’un autre compte, éventuellement à partir d’un autre ordinateur avec le même système d’exploitation).
Si le chiffrement du disque est utilisé et que le mot de passe du chiffrement du disque est connu, il peut toujours être possible de monter le disque sur un autre ordinateur (en fournissant le mot de passe à l’aide d’outils appropriés, tels que cryptsetup
).
Si la clé de chiffrement du disque a été perdue, il peut être impossible de récupérer le système. La meilleure option dans ce cas est probablement de réinstaller le système d’exploitation et de restaurer ses données à partir d’une sauvegarde.
Périphériques enracinés
L’enracinement peut également faire référence à l’échappement des privilèges normalement autorisés pour les applications s’exécutant sur des périphériques restreints, tels que les iPhones, les iPads, les téléphones Android et les tablettes. L’idée de base est de vous donner un accès root sur votre téléphone, afin que vous puissiez installer des applications arbitraires, modifier la configuration de l’appareil ou installer votre propre système d’exploitation.
Notez que l’enracinement de votre appareil n’est pas pris en charge par le fabricant, exploite généralement des vulnérabilités non documentées dans les systèmes d’exploitation et qu’il n’y a aucune garantie sur la qualité des outils d’enracinement ou les motivations des personnes derrière eux. UTILISEZ-LES À VOS RISQUES ET PÉRILS ! Ils peuvent annuler votre garantie, rendre votre appareil inutilisable ou mettre vos données en danger.
Les fournisseurs corrigent souvent les vulnérabilités de sécurité que les outils d’enracinement exploitent. Ainsi, les outils sont très spécifiques à la version. Lorsqu’une nouvelle version de l’appareil ou de son système d’exploitation sort, les anciens outils peuvent cesser de fonctionner. Par conséquent, l’état de la technique change rapidement et les anciens articles sur l’enracinement peuvent être obsolètes.
Chaque boîte à outils d’enracinement est différente. Certains systèmes d’enracinement nécessitent que le téléphone soit connecté à un ordinateur; d’autres sont des applications exécutées sur l’appareil. Certains peuvent même fonctionner sans fil, exploitant les vulnérabilités des téléphones. Cependant, les vulnérabilités nécessaires à la dernière méthode peuvent également être utilisées pour planter des logiciels malveillants, et ces vulnérabilités sont corrigées par les fabricants le plus rapidement possible.
Il y a aussi un article de Wikipedia sur l’enracinement qui explique de quoi il s’agit.
L’enracinement peut également aider à libérer de l’espace de stockage sur l’appareil. Voir Les Six Meilleures Façons de Libérer de l’Espace de stockage d’un appareil Android.
Les logiciels malveillants peuvent également utiliser les mêmes techniques que les logiciels d’enracinement. Voyez 10 millions de téléphones Android infectés par des applications d’enracinement automatique toutes-puissantes.
Alors que l’enracinement est légal dans la plupart des pays, il pourrait être illégal dans d’autres. Le Digital Millenium Copyright Act (DMCA) des États-Unis dispose apparemment d’une exemption le permettant. La Directive européenne sur le droit d’auteur autorise apparemment l’enracinement dans le but d’installer des logiciels alternatifs. Vous devriez consulter votre propre avocat si la légalité est un problème dans votre pays.
Comment rooter un iPhone / iPad?
Dans le monde Apple, l’enracinement du système d’exploitation IOS sur les iPhones, iPads et autres appareils est généralement appelé jailbreaking.
-
Le jailbreak d’un iPhone ou d’un iPad est-il sûr?
-
5 Raisons de Jailbreaker Votre iPhone – et 5 Raisons de Ne Pas
-
Comment jailbreaker un iPhone ou un iPad sous iOS 10 ou iOS 9
-
Comment Jailbreaker votre iPhone: Le Guide Toujours à jour
-
Jailbreak iPhone: Tout ce que vous devez savoir
-
Guide de Jailbreak
-
Jailbreak dans le Wiki iPhone
-
Jailbreaking iOS dans Wikipedia
Comment rooter Android?
Les outils pour enraciner un appareil Android incluent:
-
Kingo Roo
-
CF-Auto-Root
-
Towelroot
-
Framaroot
-
OneClickRoot
-
dr.fone toolkit
Ces articles peuvent fournir des informations générales:
-
Tout ce que vous devez savoir sur l’enracinement de votre Android
-
15 meilleures applications root pour Android
-
Comment Rooter n’importe quel appareil
-
Comment Rooter votre téléphone Android
Quelques fabricants, tels que LG, HTC et Motorola ont publié des instructions d’enracinement officielles pour certains de leurs modèles. Les téléphones Google Nexus ont un processus d’enracinement de document à l’aide de la commande fastboot oem unlock
.