Raisons pour lesquelles vous ne devriez pas implémenter Docker sans sudo

Docker est l'une des plates-formes de conteneurs les plus utilisées et est très populaire parmi les ingénieurs et les développeurs de logiciels. Il est livré avec un puissant outil d'interface graphique (CLI) pour la gestion des conteneurs Docker et d'autres tâches connexes.

Par défaut, vous avez besoin des privilèges root pour exécuter toutes les commandes liées à Docker sous Linux. Bien sûr, vous pouvez modifier ce paramètre afin de rendre l'exécution plus confortable et exécuter des commandes Docker sans privilèges d'utilisateur root, mais vous devez être conscient des implications en matière de sécurité. Vérifier Comment utiliser l'outil Conteneurs Docker dans un système Linux.

Raisons pour lesquelles vous ne devriez pas implémenter Docker sans sudo - Linux

Quelle est la surface d'attaque dans Docker ?

La "surface d'attaque" est le nombre de points d'attaque, comme le nombre de fenêtres, qu'un utilisateur malveillant peut utiliser pour s'introduire dans votre système et faire des ravages. En général, les systèmes informatiques doivent avoir des surfaces d'attaque minimales pour minimiser les risques de sécurité.

En général, la surface d'attaque de Docker est minimale. Les conteneurs s'exécutent dans un environnement sécurisé et isolé et n'affectent pas le système d'exploitation hôte, sauf configuration contraire. De plus, les conteneurs Docker n'exécutent que des services minimaux, ce qui les rend plus sécurisés.

Vous pouvez configurer un système Linux pour contrôler Docker sans privilèges sudo. Cela peut être approprié dans les environnements de développement, mais peut constituer une grave vulnérabilité de sécurité dans les systèmes de production. Voici pourquoi Docker n'est jamais implémenté sans sudo.

1. La possibilité de contrôler les conteneurs Docker

Sans privilèges sudo, toute personne ayant accès à votre système ou serveur peut contrôler tous les aspects de Docker. Il a accès à vos fichiers journaux Docker et peut arrêter et supprimer des conteneurs à volonté ou par erreur. Vous pouvez également perdre des données critiques qui sont vitales pour la continuité des activités.

Si vous utilisez des conteneurs Docker dans des environnements de production, les temps d'arrêt entraînent la perte de diverses données et de la confiance.

2. Prenez le contrôle des répertoires du système d'exploitation hôte

Docker Volumes est un service puissant qui vous permet de partager et de gérer des données de conteneur en les écrivant dans un dossier spécifié sur le système d'exploitation hôte.

L'une des plus grandes menaces liées à l'exécution de Docker sans sudo est que n'importe qui sur votre système peut prendre le contrôle des répertoires du système d'exploitation hôte, y compris le répertoire personnel.

Tout ce que vous avez à faire est d'exécuter une image Linux Docker, par exemple une image Ubuntu, et de la monter dans votre dossier personnel avec la commande suivante :

docker run -ti -v /:/hostproot ubuntu bash

Étant donné que les conteneurs Linux Docker s'exécutent en tant qu'utilisateur root, cela signifie essentiellement que vous avez accès à l'intégralité du dossier de départ.

La commande ci-dessus téléchargera, exécutera et installera la dernière image Ubuntu dans votre répertoire personnel.

Dans le Terminal pour les conteneurs Docker, allez dans le répertoire /prothôte Utiliser la commande cd:

cd /hostproot

Raisons pour lesquelles vous ne devriez pas implémenter Docker sans sudo - Linux

Affiche la liste du contenu de ce répertoire à l'aide de la commande ls Tous les fichiers du système d'exploitation hôte désormais disponibles dans votre conteneur. Désormais, vous pouvez manipuler des fichiers, afficher des fichiers confidentiels, masquer et afficher des fichiers, modifier des autorisations, etc.

3. Installez des logiciels malveillants

Une image Docker bien conçue peut s'exécuter en arrière-plan et altérer votre système ou collecter des données sensibles. Pire encore, un utilisateur malveillant pourrait propager du code malveillant sur votre réseau via des conteneurs Docker.

Il existe de nombreux cas d'utilisation pratiques pour les conteneurs Docker, et chaque application s'accompagne d'un ensemble différent de menaces de sécurité. Vérifier Comment installer l'outil Docker sur un système Linux.

Sécuriser les conteneurs Docker sous Linux

Docker est une plateforme puissante et sécurisée. L'exécution de Docker sans sudo augmente la surface d'attaque et rend votre système vulnérable. Dans les environnements de production, il est fortement recommandé d'utiliser sudo avec Docker.

Avec autant d'utilisateurs sur le système, il devient très difficile d'attribuer des autorisations à chaque utilisateur. Dans de tels cas, suivre les meilleures pratiques de contrôle d'accès peut vous aider à assurer la sécurité de votre système. Vous pouvez voir maintenant Qu'est-ce que le contrôle d'accès et pourquoi en avez-vous besoin ?

source
Aller au bouton supérieur