OVH Cloud OVH Cloud

Faille de sécurité majeure dans Ubuntu 5.10

31 réponses
Avatar
name
http://web.linuxfr.org/2006/03/13/20494.html

Une faille de sécurité majeure affectant le système Ubuntu Linux 5.10
vient d'être découverte par Karl Øie. Le mot de passe du premier
utilisateur créé lors de l'installation du système apparaît dans les
fichiers logs de l'installeur.

On retrouve le mot de passe non-hashé dans plusieurs fichiers dont
/var/log/installer/cdebconf/questions.dat qui est accessible en lecture
à tous les utilisateurs. C'est d'autant plus préoccupant que le premier
utilisateur créé sur le système possède les droits sudo sur l'ensemble
du système, ce qui équivaut à un accès root à la machine.

10 réponses

1 2 3 4
Avatar
Prodejeu
On 2006-03-24, Prodejeu wrote:

Sinon se logguer en root c'est _mal_, surtout en graphique (d'ailleurs les ?dm
c'est _mal_)
Justement, Ubuntu n'incite pas à se logguer en root et encore moins en

graphique !


?
J'ai jamais dit le contraire...


Moi non plus ;-)



Avatar
Nicolas George
Prodejeu , dans le message <4423e8ee$0$1154$, a
écrit :
De toute façon à l'install la Ubuntu spécifie un mot de passe root


Non, elle n'en met pas, justement.

Avatar
Prodejeu
Prodejeu , dans le message <4423e8ee$0$1154$, a
De toute façon à l'install la Ubuntu spécifie un mot de passe root


Non, elle n'en met pas, justement.


Personnellement j'ai de nombreuses fois installé et utilisé la Hoary et
la Breezy, et j'ai toujours eu un mot de passe root (inconnu, et
changeable en tapant : sudo su et passwd).
Si je ne me trompe pas, l'absence de mot de passe se traduit par un X
dans /etc/shadow et permet de se logguer sans spécifier le mot passe
(logique parce qu'il n'y en a pas).


Avatar
Nicolas George
Prodejeu , dans le message <4423f87f$0$20873$, a
écrit :
Si je ne me trompe pas, l'absence de mot de passe se traduit par un X
dans /etc/shadow et permet de se logguer sans spécifier le mot passe
(logique parce qu'il n'y en a pas).


Tu te trompes. X dans /etc/shadow signifie effectivement qu'il n'y a pas de
mot de passe, mais la conséquence est qu'on ne peut en aucun cas se loguer
en l'utilisant, puisqu'il n'existe pas. Tu confonds partiellement avec un
mot de passe vide, qui correspond à une chaîne vide dans shadow.

Avatar
Prodejeu
Prodejeu , dans le message <4423f87f$0$20873$, a
Si je ne me trompe pas, l'absence de mot de passe se traduit par un X
dans /etc/shadow et permet de se logguer sans spécifier le mot passe
(logique parce qu'il n'y en a pas).


Tu te trompes. X dans /etc/shadow signifie effectivement qu'il n'y a pas de
mot de passe, mais la conséquence est qu'on ne peut en aucun cas se loguer
en l'utilisant, puisqu'il n'existe pas. Tu confonds partiellement avec un
mot de passe vide, qui correspond à une chaîne vide dans shadow.


Effectivement je me trompe, mais toi aussi. ;-)
Un x à la place du mot de passe dans /etc/passwd ne signifie pas qu'il
n'y a pas de mot de passe mais qu'il est stocké dans /etc/shadow.

Et après vérification, c'est vrai il n'y a pas de mot de passe root.



Pour ajouter quelques arguments au débats voici un extrait du site
ubuntu-fr.org :

sudo n'est-il pas moins sécurisé que su root?
Le modèle de sécurité à la base est le même, et les deux systèmes partagent une même faiblesse. Tout utilisateur utilisant su root ou sudo doit être considéré comme un utilisateur privilégié. Si le compte de l"utilisateur est compromis par un attaquant, celui-ci peut aussi obtenir les privilèges d"administration et compromettre le système d"exploitation. Les utilisateurs ayant les droits d"administration doivent être protégés avec les mêmes soins que le compte système.
Sur une note plus ésotérique, on remarque que sudo encourage la modification des habitudes de travail, qui peuvent provoquer un impact positif sur la sécurité du système d"exploitation. sudo est habituellement utilisé pour lancer une commande unique, alors que su root est souvent utilisé pour lancer un terminal root et lancer des multiples commandes. L"approche de sudo réduit la possibilité qu"un terminal root soit laissé ouvert indéfiniment sur le poste de travail et encourage l"utilisateur à minimiser leur utilisation des privilèges d"administration.



Source : http://doc.ubuntu-fr.org/applications/sudo


Avatar
Nicolas George
Prodejeu , dans le message <4428e9eb$0$20297$, a
écrit :
Effectivement je me trompe, mais toi aussi. ;-)
Un x à la place du mot de passe dans /etc/passwd ne signifie pas qu'il
n'y a pas de mot de passe mais qu'il est stocké dans /etc/shadow.


Non, je ne me trompe pas : je n'ai pas parlé de /etc/passwd du tout,
uniquement de shadow. Et là, un X, ou un * ou un !, etc., veut bien dire pas
de mot de passe valide.

Avatar
Prodejeu
Prodejeu , dans le message <4428e9eb$0$20297$, a
Effectivement je me trompe, mais toi aussi. ;-)
Un x à la place du mot de passe dans /etc/passwd ne signifie pas qu'il
n'y a pas de mot de passe mais qu'il est stocké dans /etc/shadow.


Non, je ne me trompe pas : je n'ai pas parlé de /etc/passwd du tout,
uniquement de shadow. Et là, un X, ou un * ou un !, etc., veut bien dire pas
de mot de passe valide.


Désolé mais je ne comprend pas bien ce que tu veux dire.
D'après la doc : X est valide tandis que * et ! n'y sont pas et ne
signifient pas absence de mot de passe, mais mot de passe incorrect.
Voiçi un extrait du man :
/etc/shadow contient les mots de passe cryptés des utilisateurs [ Ndt : plus exactement, le résultat du cryptage d'une chaîne de longueur nulle avec le mot de passe comme clé de cryptage ] ainsi qu'éventuellement des informations sur l'âge des mots de passe :

Nom de connexion
Mot de passe crypté
Nombre de jours écoulés depuis le 1er janvier 1970 jusqu'au dernier changement de mot de passe
Nombre de jours durant lesquels le mot de passe est encore valide
Nombre de jours après lesquels le mot de passe doit être changé
Nombre de jours avant l'expiration du mot de passe impliquant l'avertissement de l'utilisateur
Nombre de jours après l'expiration provoquant la désactivation du compte
Numéro du jour depuis le 1er janvier 1970 à partir duquel le compte a été désactivé
Champ réservé


Le champ mot de passe doit être rempli. Le mot de passe crypté comprend 13 à 24 caractères pris dans l'alphabet réduit a-z, A-Z, 0-9, . et /. Consultez crypt(3) pour plus d'informations sur le traitement de cette chaîne.
La date de dernière modification du mot de passe est donné par le nombre de jours écoulés depuis le 1er janvier 1970 jusqu'au dernier changement de mot de passe. Le mot de passe ne peut être changé jusqu'à ce que le nombre de jours indiqués soit écoulé, et doit être changé après que le nombre maximum de jours indiqué. Si le nombre minimum de jours requis est plus grand que le nombre maximum de jours de validé, ce mot de passe ne peut pas être changé par l'utilisateur.
Un compte est considéré comme inactif et est désactivé si le mot de passe n'est pas changé dans l'intervalle spécifié après l'expiration du mot de passe. Un compte est également désactivé le jour indiqué quelles que soient les autres informations d'expiration.
Cette information est prioritaire sur tous les autres champs présents dans /etc/passwd.
Ce fichier ne doit pas être accessible en lecture par les utilisateurs normaux afin de maintenir la sécurité des mots de passe, en particulier contre les attaques aux dictionnaires.



Avatar
Nicolas George
Prodejeu , dans le message <4429448a$0$26137$, a
écrit :
Désolé mais je ne comprend pas bien ce que tu veux dire.
D'après la doc : X est valide tandis que * et ! n'y sont pas et ne
signifient pas absence de mot de passe, mais mot de passe incorrect.


La doc n'explique pas comment est utilisé le mot de passe. Pour vérifier que
le mot de passe fourni par l'utilisateur est valide, on appelle crypt sur le
mot de passe fourni, et on compare le résultat à ce que contient le champ de
shadow. Comme ni X tout seul ni ! ni * ne sont des résultats possibles de
crypt, le résultat sera toujours différent, ce qui veut bien dire qu'il
n'existe pas de mot de passe valide.

Voiçi un extrait du man :


Leçon numéro 1 : ne pas lire les traductions de man.

Avatar
Prodejeu
La doc n'explique pas comment est utilisé le mot de passe. Pour vérifier que
le mot de passe fourni par l'utilisateur est valide, on appelle crypt sur le
mot de passe fourni, et on compare le résultat à ce que contient le champ de
shadow. Comme ni X tout seul ni ! ni * ne sont des résultats possibles de
crypt, le résultat sera toujours différent, ce qui veut bien dire qu'il
n'existe pas de mot de passe valide.


OK !
C'est à peu près ce que je te disais juste au dessus :

D'après la doc : X est valide tandis que * et ! n'y sont pas et ne
signifient pas absence de mot de passe, mais mot de passe incorrect.



A l'exception du fait qu'un X seul n'est pas valide, je te l'accorde,
mais c'est vrai pour n'importe quel caractère seul ou n'importe quel
chaîne de moins de 13 caractères.
Ce que je ne comprenais pas c'est pourquoi tu parlais précisément d'un x ?
Ca m'a embrouillé parce que le x seul à un sens pour le fichier /etc/passwd.





Leçon numéro 1 : ne pas lire les traductions de man.


Je ne t'ai pas attendu pour lire le man en anglais, bien que dans le cas
de shadow(5) je ne vois pas vraiment la différence.

The password field must be filled. The encryped password consists of 13 to 24 characters from the 64 character alphabet a thru z, A thru Z, 0 thru 9, . and /. Refer to crypt(3) for details on how this string is interpreted.


Je l'avais mis dans la langue du fil et pour éviter d'embrouiller choses
plus qu'elles ne l'étaient.


Quoiqu'il en soit et pour en revenir au thème du fil, tu dois avoir
raison en ce qui concerne le contenu de /etc/shadow sur une ubuntu.

Il n'en reste pas moins qu'il s'agit d'une bonne solution pour protéger
le système d'un utilisateur qui est à la fois débutant et administrateur
de sa machine (N'oublions pas que nous l'avons tout plus ou moins été un
jour ;-) ) comme c'est TRES souvent le cas chez le particulier.


Avatar
Nicolas George
Prodejeu , dans le message <442a8a05$0$25387$, a
écrit :
Ce que je ne comprenais pas c'est pourquoi tu parlais précisément d'un x ?


Parce que « X », « * » et « ! » sont les caractères usuellement employés à
cet effet.

Je ne t'ai pas attendu pour lire le man en anglais, bien que dans le cas
de shadow(5) je ne vois pas vraiment la différence.


Bon, alors leçon numéro 2 : avoir des pages de man à jour.

Il n'en reste pas moins qu'il s'agit d'une bonne solution pour protéger
le système d'un utilisateur qui est à la fois débutant et administrateur
de sa machine


Ah oui, bien sûr. Je suis d'accord avec ça depuis le début.

1 2 3 4