Outils de développement · Docker exécuté vers Docker compose converter
--privileged, --cap-add et --device : ce qu'ils signifient dans un fichier Compose
· Pourquoi c'est important
menu fixe composer sécurité
Un indicateur désactive la majeure partie de l'isolation de Docker. Cet article explique ce que --privileged accorde réellement, les alternatives les plus étroites et à quoi elles ressemblent sousprivilege:, cap_add: et devices: après la conversion.
Le forum a déclaré ajouter --privileged — le conteneur fonctionne maintenant et l'isolement qui rendait les conteneurs attrayants a en grande partie disparu
Le forum a déclaré ajouter --privileged - le conteneur fonctionne maintenant et l'isolement qui rendait les conteneurs attrayants a en grande partie disparu. Preuve : --privileged devient privilégié vrai sans mention de sécurité. Reproduisez le moindre privilège avec des littéraux jetables. Associez chaque occurrence source à des appareils à capacités privilégiées ; réserver le confinement de l'hôte et l'accès pour l'examen de la destination.
L'incident de sécurité révèle également qu'une limite distincte de l'incident de sécurité est que --device est reconnu mais averti et omis comme dépendant de l'hôte. Preuve : --device est reconnu mais averti et omis comme dépendant de l'hôte. Cette contrainte de moindre privilège est un point d’arrêt. Inspectez les appareils à capacités privilégiées sans comportement de fabrication, puis documentez une vérification de l'hôte pour le confinement et l'accès de l'hôte.
Que fait --privileged : toutes les fonctionnalités, accès à tous les appareils et confinement détendu de Seccomp et AppArmor
Ce que fait --privileged : toutes les fonctionnalités, l'accès à tous les appareils et un confinement détendu de Seccomp et AppArmor. Preuve : les effets de confinement de l'hôte ne peuvent pas être énumérés à partir du texte de la commande. Tracez les jetons de moindre privilège dans les appareils à capacités privilégiées. Séparez les valeurs ordonnées des champs de dernière valeur ; le confinement de l'hôte et l'accès se font en dehors de la collecte.
Une limite de mécanisme de sécurité connexe est qu'une limite de grammaire de sécurité distincte est que l'accès Zigbee requis ne peut pas être déduit d'une ancienne commande privilégiée. Preuve : l’accès Zigbee requis ne peut être déduit d’une ancienne commande privilégiée. Utilisez ce fait de moindre privilège pour prédire un membre ou un scalaire dans les appareils à capacités privilégiées. Vérifiez les avertissements avant de décider quoi que ce soit concernant le confinement et l'accès de l'hôte.
Capacités à la place — cap_add : avec NET_ADMIN, SYS_TIME ou autres comme version étroite, et cap_drop : ALL comme référence
Capacités à la place — cap_add : avec NET_ADMIN, SYS_TIME ou autres comme version étroite, et cap_drop : ALL comme référence. Preuve : --cap-add et --cap-drop deviennent des listes ordonnées explicites. Jugez la sérialisation du moindre privilège à partir de son modèle. Citer les appareils à capacités privilégiées protège les types mais ne donne aucune preuve opérationnelle du confinement et de l'accès de l'hôte.
La deuxième observation de sérialisation de sécurité est qu'une limite de sortie de sécurité distincte est qu'une clé privilégiée visible prend en charge la révision tandis que les avertissements préservent les lacunes. Preuve : une clé privilégiée visible prend en charge la révision tandis que les avertissements préservent les lacunes. Cette sortie de moindre privilège sépare les paramètres du contexte indisponible. Gardez les appareils à capacités privilégiées visibles et vérifiez le confinement et l'accès de l'hôte de manière indépendante.
--le périphérique est reconnu mais délibérément pas converti ; ajouter manuellement une liste de périphériques spécifiques à l'hôte
Appareils à la place — --device /dev/ttyUSB0 devenant des appareils :, la vraie raison habituelle pour laquelle les gens ont recherché --privileged. Preuve : --le périphérique est reconnu mais averti et omis comme dépendant de l'hôte ; --le périphérique est reconnu mais délibérément pas converti ; ajoutez manuellement une liste de périphériques spécifiques à l'hôte. Arrêtez-vous à l'exception de moindre privilège au lieu de deviner. Tout ajout de périphériques aux capacités proches des privilèges nécessite une raison spécifique au déploiement liée au confinement et à l'accès de l'hôte.
Une autre contrainte d'exception de sécurité est que pour cette section de sécurité, conservez l'original de la commande et des avertissements de cette section de sécurité à côté de ce fichier candidat. Preuve : le référentiel ne donne aucune preuve d'exécution ou historique plus large. Conservez la commande de moindre privilège d'origine à côté des avertissements. La comparaison montre quelles capacités privilégiées les appareils contiennent et quelle décision de confinement et d'accès de l'hôte reste manuelle.
Une modification de déprivilège nécessite le jugement de l'opérateur, car ce convertisseur ne peut pas déduire les appareils ou les capacités requis.
Exemple concret : déprivilégier une commande de pont Zigbee — remplacer --privileged par une entrée de périphérique et une seule capacité. Preuve : l'accès Zigbee requis ne peut être déduit d'une ancienne commande privilégiée ; Une modification de déprivilège nécessite le jugement de l'opérateur car ce convertisseur ne peut pas déduire les appareils ou les capacités requis. Créez l'exemple de moindre privilège à partir de noms synthétiques. Rendre chaque élément de périphérique à capacités privilégiées traçable sans exposer le confinement de l'hôte de production ni les détails d'accès.
Le même exemple de sécurité démontre que pour cette section de sécurité, conservez l'original de la commande et des avertissements pour cette section de sécurité à côté de ce fichier candidat. Le fait de moindre privilège apparié doit être visible dans les appareils à capacités privilégiées. Enregistrez cette ligne et évitez les hypothèses sur le confinement et l'accès de l'hôte.
Lecture du YAML converti en tant que révision - privilégié : vrai se démarque dans une différence d'une manière qu'un indicateur dans une ligne de shell ne le fait pas
Lecture du YAML converti en tant que révision - privilégié : true se démarque dans une différence d'une manière qui ne le fait pas pour un indicateur dans une ligne de shell. Traduisez la conséquence du moindre privilège en une différence observable entre les dispositifs de capacités privilégiées. Docker est propriétaire du dernier verdict de confinement et d'accès de l'hôte.
L'implémentation des conséquences de sécurité montre également qu'une limite distincte d'effet de sécurité est que --privileged devient privilégié vrai sans approbation de sécurité. Divisez les responsabilités en matière de moindre privilège : la conversion écrit les appareils dotés de capacités privilégiées, le référentiel supprime les secrets et les opérateurs valident le confinement et l'accès de l'hôte.
Ce que cela ne couvre pas : accès au GPU, profils seccomp personnalisés et contextes de sécurité Kubernetes
Ce que cela ne couvre pas : accès GPU, profils seccomp personnalisés et contextes de sécurité Kubernetes. Preuve : la réservation GPU et les profils personnalisés ne sont pas générés. Limitez la portée du moindre privilège aux branches de périphériques à capacités privilégiées indiquées ici. Les formulaires voisins et les valeurs par défaut ne peuvent pas répondre aux questions de confinement et d'accès de l'hôte.
Une limite de portée de sécurité supplémentaire découle d'une limite de sécurité distincte : les effets de confinement de l'hôte ne peuvent pas être énumérés à partir du texte de la commande. Traitez cette limite de moindre privilège comme une exclusion. Préférez les appareils dotés de capacités privilégiées précises aux suppositions sur le confinement et l’accès de l’hôte.
Le privilège est visible lorsqu'il est mappé, mais l'accès aux appareils non pris en charge reste un avertissement plutôt qu'une clé générée
À retenir : le privilège doit être explicite et minimal – et le convertisseur le rend visible sous forme de clés que vous pouvez remettre en question. Preuve : le moindre privilège requiert une conception humaine au-delà de la conversion ; Le privilège est visible lorsqu'il est mappé, mais l'accès aux appareils non pris en charge reste un avertissement plutôt qu'une clé générée. Auditez le moindre privilège en tant qu’option source, champ de modèle, ligne de périphériques de capacités privilégiées et avertissement. Supprimez les secrets avant de vérifier le confinement et l'accès de l'hôte.
Enfin, la source de sécurité confirme conserver la commande d'origine pour cette section de sécurité et avertit à côté de ce fichier candidat que la conclusion de sécurité améliore l'auditabilité pour cette section de sécurité sans promettre d'équivalence shell pour cette section de sécurité, l'analyse reste en dehors de la garantie de sécurité. Fermez le moindre privilège de manière étroite : les appareils à capacités privilégiées sont candidats ; Le confinement de l'hôte, l'accès et l'équivalence du shell ne sont pas des garanties.