bin
n'a pas été correctement pour rien pendant toute la durée de vie de Linux.
Comme les niveaux d'exécution et la init
génération à getty
cause des enregistrements /etc/inittab
, le bin
compte était obsolète dans le monde Unix avant même que Linux ne soit inventé. C'est une idée des années 80 qui a été brisée par l'invention et l'adoption du NFS (Network File System) et de son nobody
utilisateur. Sa présence continue dans les bases de données des comptes d'utilisateurs à la fin des années 2010, lorsque les gens du monde commercial Unix ont cessé activement son utilisation dans les années 1990, témoigne de l'inertie.
L'idée était que l' bin
utilisateur possédait divers répertoires tels que /bin
et /usr/bin
(et en fait certains des autres mentionnés sur /unix//a/448799/5132 tels que /usr/mbin
et /usr/5bin
) et le non-set-UID / non- les fichiers set-GID qu'ils contiennent. Il possédait également des fichiers et des répertoires doco, tels que des pages de manuel.
(Dans des cas plus extrêmes, sur certains Unices, il appartenait même /
et /etc
, bien que ce dernier soit une erreur reconnue dans la création d'une image de système d'exploitation SunOS. Le premier était juste stupide.)
Ainsi, l'autorisation d'exécuter des mises à jour logicielles, en tant qu'utilisateur bin
, n'était pas une autorisation générale, en tant que superutilisateur, pour effectuer une quelconque action contre le système. L'upgrader logiciel n'a pas pu lire / écrire les fichiers des utilisateurs privés, accéder aux boîtes aux lettres, etc. qui pourrait bien sûr mettre à jour les logiciels en tant que superutilisateur.
Plusieurs autres entrées de compte spéciales dans votre /etc/passwd
fichier doivent avoir des mots de passe. Ce sont les comptes administratifs - bin
, daemon
, sys
, uucp
, lp
et adm
. […] La principale raison de l'existence de ces comptes est la propriété sécurisée des commandes, des scripts, des fichiers et des périphériques. Et certains administrateurs installent des mots de passe pour ces comptes et les utilisent réellement. […] Un bin
compte sans mot de passe est extrêmement utile pour un disjoncteur système.
- Rebecca Thomas et Rik Farrow (1989). Guide d' administration UNIX System V . Prentice Hall. ISBN 9780139428890. p. 452.
NFS a été inventé au début des années 1980 et a complètement brisé cette idée.
C'était déjà sur un terrain instable, comme l'indique la citation susmentionnée. Cela est dû au fait que la possibilité de mettre à jour les fichiers image du programme pour les utilitaires de base que le superutilisateur a exécutés naturellement, comme /bin/ls
par exemple, est un vecteur direct pour obtenir des privilèges de superutilisateur, et la division de l'accès lors de l'utilisation d'un bin
compte a simplement été accidentellement empêchée. modifier les mauvais répertoires plutôt qu'empêcher un malfaiteur d'accéder au superutilisateur.
L'avènement de NFS l'a mis en évidence. Bien que NFS ait un mécanisme pour remapper le compte superutilisateur à un compte utilisateur non système ordinaire, il n'en avait pas de même pour les comptes non root comme bin
. Donc, si quelqu'un pouvait bin
accéder à un client NFS, cela lui donnait bin
accès aux fichiers du système d'exploitation sur un serveur NFS. En effet, cela a permis à un superutilisateur sur un client NFS, qui autrement serait remappé à un utilisateur non système ordinaire sur le serveur, d'obtenir un accès propriétaire aux fichiers et répertoires du système d'exploitation du serveur.
C'était de notoriété chown
publique au début des années 1990, et à cette époque, la sagesse était de faire des trucs qui appartenaient bin
au superutilisateur, de boucher ce trou qui était déjà devenu un élément de rapport standard dans les outils d'audit de sécurité Unix et a été mis en garde contre dans les goûts du doco d'installation pour Sendmail.
En ce qui concerne les questions de M. Hess, cette idée n'a jamais été adoptée sur Debian, qui n'a vu le jour que des années après qu'elle était connue pour être une mauvaise idée dans le monde Unix, qui en effet savait que c'était une mauvaise idée avant Linux lui-même. a été inventé. Les systèmes d'exploitation BSD dont l' histoire fait retour dans les années 1980 étirement ont depuis longtemps fait disparaître la propriété réelle, mais qui conservent néanmoins le compte d'utilisateur dans la base de données de compte. FreeBSD converti bin
: bin
propriété en root
: wheel
propriété en 1998 , par exemple.
Lectures complémentaires