bonjour,
Après avoir suivi un cours de sécurité récapitulatif et de débutant sur les droits dans Linux,le professeur nous explique qu'il y a des commandes qui peuvent s'exécuter seulement quand on est root.
Il trouve le chemin de cette commande et montre que quand on est user,cette commande est introuvable.Il suffit alors,étant user,de non pas taper cette commande mais le chemin de la commande pour qu'elle s'exécute.
(Oui,le contenu de la variable PATH est différent selon qu'on soit root ou user)
Ma question naïve vient de suite:
A quoi ça sert de cacher à User des commandes seulement accessibles par Root si étant User elles peuvent quand même s'exécuter bien que + difficilement?
Je connais les droits sous Linux mais là j'ai du louper un truc que j'aimerais bien qu'on m'explique!
merci de votre aide
# Pas une histoire de secret
Posté par gUI (Mastodon) . Évalué à 6.
Salut,
La raison n'est en rien de les cacher mais plutôt de dire "il faut les droits root pour que ça fonctionne bien, donc ça sert à rien qu'ils soient dans ton PATH, tu n'en feras rien". En effet, les outils qui sont dans
sbin
sont des outils système et sans les droits root,fdisk
ne fdiskera pas,fsck
ne fsckera pas,groupadd
ne… enfin t'as compris quoi :)En théorie, la théorie et la pratique c'est pareil. En pratique c'est pas vrai.
[^] # Re: Pas une histoire de secret
Posté par tolemarf . Évalué à -4.
autres questions basiques:
1)si les droits d'un fichier se présentent comme cela:
-rwx------ patrick groupe_de_patrick
le propriétaire de ce fichier est patrick et le groupe est groupe_de_patrick
la commande :
sudo chown : root chemin_du_fichier
est-elle la bonne pour avoir:
-rwx------ root root
?
2)qui dit propriétaire root implique automatiquement groupe root?
3)
a)si j'ai:
-rwx------ patrick groupe_de_patrick
me mettant root puis-je lire,écrire et exécuter le fichier?
b)si j'ai:
-rwx---rwx patrick groupe_de_patrick
me mettant root puis-je lire,écrire et exécuter le fichier?
c)si j'ai:
-------rwx patrick groupe_de_patrick
me mettant root puis-je lire,écrire et exécuter le fichier?
[^] # Re: Pas une histoire de secret
Posté par gUI (Mastodon) . Évalué à 2. Dernière modification le 09 octobre 2020 à 10:45.
moi je tapes
sudo chown root:root
(premier mot = user, 2e mot = groupe)non. par exemple les devices de
/dev
sont souvent en propriétaireroot
et un groupe dédié au type de périphérique (disk
,audio
…). ainsiroot
reste propriétaire de la carte son, mais en me donnant les droitsaudio
j'ai également en tant que utilisateur le droit d'aller y taper dedans directement.non parce que
root
étant nipatrick
ni dans legroupe de patrick
, il estothers
. il n'a donc pas le droit de lire, écrire ni d'exécuterEDIT suite au commentaire de kosnik : en fait si,
root
a la particularité de pouvoir le faire quand même.oui parce que
root
étant nipatrick
ni dans legroupe de patrick
, il estothers
. il a donc le droit de lire, écrire et exécuteroui parce que
root
étant nipatrick
ni dans legroupe de patrick
, il estothers
. il a le droit de lire, écrire et exécuterEn théorie, la théorie et la pratique c'est pareil. En pratique c'est pas vrai.
[^] # Re: Pas une histoire de secret
Posté par kosnik . Évalué à 2.
En théorie, je suis d'accord avec toi, mais en pratique utilisé root dans l'example est un mauvais exemple, car root à tous les droits.
[^] # Re: Pas une histoire de secret
Posté par gUI (Mastodon) . Évalué à 2. Dernière modification le 09 octobre 2020 à 10:45.
ah bin mince, anéfé tu as raison (j'étais persuadé du contraire).
root
peut lire et écrire (mais pas exécuter en fait) un fichier en000
(exemple extrême).En théorie, la théorie et la pratique c'est pareil. En pratique c'est pas vrai.
[^] # Re: Pas une histoire de secret
Posté par Jehan (site web personnel, Mastodon) . Évalué à 6.
En fait certains outils dans
sbin
peuvent être lancé par des utilisateurs normaux (mais sans pouvoir tout faire). Je pense notamment àifconfig
et son successeurip
(mais y en a d'autres, c'est juste l'exemple qui me vient à l'esprit car je l'utilise souvent). Ensuite si on estroot
, ces outils permettent plus de choses (accès à la modification de config des interfaces réseau).Mais c'est vrai qu'énormément d'autres outils présents dans
sbin
ne feront rien du tout sans êtreroot
.L'ajout de
sbin
dans lePATH
est d'ailleurs fait par défaut dans certaines distributions (même pour des users non-root), et pas dans d'autres (mais il suffit soit de mettre le chemin complet, comme indiqué par tolemarf, soit d'éditer sonPATH
soi-même). Il n'y a pas de règle universelle. D'ailleurs il me semble même que certaines distributions poussent à fusionnerbin
etsbin
(de même qu'il y a des actions en cours pour fusionner/
et/usr/
dans pas mal de distributions également), justement à cause de la complexité de savoir où est quoi avec des règles pas toujours claires (puisqu'on le voyait, un outil peut être accessible à tous, mais juste donner des pouvoirs différents selon l'utilisateur). On verra comment tout ça évoluera.En tous les cas, comme le dit gUI, ça n'a rien à voir avec de la sécurité. La limitation des commandes système est implémentées par les droits divers sur les fichiers (permissions, propriétaire/groupe, ACL, sudo, ou tout autre configuration système ou spécifique), pas par leur chemin d'accès. Le chemin d'accès n'est qu'une question d'organisation et de praticité.
Film d'animation libre en CC by-sa/Art Libre, fait avec GIMP et autre logiciels libres: ZeMarmot [ http://film.zemarmot.net ]
[^] # Re: Pas une histoire de secret
Posté par AncalagonTotof . Évalué à 3.
Exact, ifconfig n'est pas dans le PATH d'un utilisateur lambda de Debian, mais il l'est dans celui d'un utilisateur Ubuntu par exemple (la dernière fois que j'ai essayé).
Plus important que le PATH, c'est la gestion des permissions, le contrôle du UID/GID par l'application, etc.
Accessible par défaut ou pas, M. Lambda ne pourra pas faire la même chose que root.
Suivre le flux des commentaires
Note : les commentaires appartiennent à celles et ceux qui les ont postés. Nous n’en sommes pas responsables.