OS X Lion : un mot de passe qui se réinitialise trop facilement ?

Christophe Laporte |
Le blog Defence in Depth qui suit depuis des années de très près la façon dont Apple protège les mots de passe dans Mac OS X vient de faire une belle découverte. Sous Lion, la commande terminal dscl permet de changer le mot de passe sans avoir à entrer l'ancien.



Pour cela, il suffit de taper l’instruction suivante : dscl localhost -passwd /Search/Users/NOMDEL’UTILISATEUR. Un mot de passe vous sera alors demandé. Ce qui est gênant dans cette affaire, c’est qu’il est possible de réaliser cette opération sans avoir les privilèges administrateur et/ou sans avoir à saisir votre ancien mot de passe…

Alors est-ce grave ? Oui et non… Car si une personne veut vous faire des misères en utilisant cette méthode, il faut qu’elle dispose d’un accès physique à votre machine ou à la limite d’un accès SSH à votre ordinateur.

Mais une telle possibilité n’est pas nouvelle en soi : il existe d’ores et déjà un moyen similaire de modifier le mot de passe de n’importe quel utilisateur sans être un hacker de haut vol si vous avez accès à l’ordinateur... Il suffit de démarrer sur la partition de restauration, ouvrir le terminal et taper l’instruction resetpassword (lire : Astuce : réinitialiser le mot de passe admin sur OS X Lion).



En attendant qu’Apple rectifie le tir, il existe plusieurs manières de se prémunir : il est recommandé notamment de désactiver l’ouverture de session automatique (qui d’un point de vue sécurité a toujours été une saloperie), de suspendre les comptes invité, ainsi que de paramétrer le système de manière à ce qu’il vous demande votre mot de passe après la suspension d’activité ou le lancement de l’économiseur d’écran.



CNET qui propose quelques conseils suggère également de désactiver l’accès au terminal aux utilisateurs qui n’en ont pas besoin.

De manière générale, pour améliorer la sécurité de votre ordinateur, deux options (complémentaires) sont à envisager. La première consiste à activer FileVault, qui protège les données de votre disque dur en chiffrant son contenu. Sur les SSD, cette option n’a quasiment aucun impact sur les performances. En démarrant sur la partition de secours, vous ne pourrez pas faire grand-chose tant que vous n’aurez pas entré votre mot de passe.

Seconde option à considérer et que l’on peut activer via l’Utilitaire de mot de passe du programme interne inclus dans la partition de restauration, la possibilité d’exiger un mot de passe lorsque vous démarrez sur un autre support que votre disque dur interne (ou SSD).



Toutes ces précautions sont à étudier, mais le plus important avant tout est de savoir quel degré de sécurité vous désirez avoir.
avatar Skittou | 

Que se passe-t-il si on a activé FileVault et que quelqu'un parvient malgré tout à modifier votre le mot de passe utilisateur, par exemple via la méthode décrite ci-dessus?

avatar Lucieaus | 

On parle des failles de sécurité de Microsoft, mais au moins chez eux elles ne sont pas accessibles au premier venu.

avatar melaure | 

Quand je pense à certains sur d'autres news qui térrorisaient ceux qui voulaient rester sur SL en leur affirmant que leur OS étaient devenu totalement non sécurisé du jour au lendemain après la sortie de Lion, et qu'on lit ce genre de grosse faiblesse sur Lion ... Ils auraient mieux fait de la fermer ! Et Lion n'est pas prêt de venir chez moi ;)

Il faut qu'Apple patch ça très vite en tout cas.

avatar mugu | 

mais que fait apple?

avatar Kiros | 

En même temps pour taper l'instruction dans terminal, il faut avoir accès a la machine et qu'une session soit ouverte, donc pas besoin de mot de passe pour avoir accès a tout.

avatar Kiros | 

C'est comme dire, "une fois chez moi, mes verrous se ferme de l'intérieur a la main".

avatar Aurélien-A | 

Pour info l'ouverture de session automatique est désormais désactivée par défaut sous Lion.

avatar Orus | 

Je ne partage pas du tout votre optimisme. Là c'est de de pire en pire. C'est carrément gravissime, inexcusable. La cerise sur le gâteau de bugs (berk!), Lion le boulet.
Une ligne de commande pour changer le mot de passe, nous tombons bien bas.
"En attendant qu’Apple rectifie le tir, il existe plusieurs manières de se prémunir :" Oui réinstaller Snow Leopard, c'est la meilleurs méthode.
Apple semble désormais plus préoccupé à nous sortir des gadgets iTruc qu'a nous sortir des produits finis pour le Mac. Inquiétant.

avatar jlb_ | 

Vous êtes allés un cran plus loin ? Je n'ai pas Lion mais dans SL on a le même phénomène. Quand on va un cran plus loin on a droit à :

Permission denied. Please enter user's old password:

@orus et d'autres: Evitez de commenter des choses que vous ne comprenez visiblement pas

avatar philus | 

Si vous me laissez un pc sous la main, je peux vous changer le mot de passe admin en moins de 1 minute. il suffit de le rebooter sur un cd ou une mémoire usb avec ce qu'il faut dessus.

C'est enfantin et ça n'a jamais choqué personne

avatar XiliX | 

D'un autre coté... si vous perdez le mot de passe de l'utilisateur, comment vous faites pour changer le mot de passe de l'utilisateur ? Soit en passant par cette ligne de commande, soit en passant par la récupération. Dans les deux cas il faut avoir accès à l'ordinateur.

C'est évident que la meilleure solution est d'empêcher l'accès à ces deux fonctionnement. Mais alors, comment réinitialiser le mot de passe de l'utilisateur en cas de perte de celui-ci ?

Biensur je parle ici le cas d'un utilisateur admin.

avatar AlexZen | 

Euh ... Je dois être débile mais si le mec est devant la machine, pourquoi aurait il besoin de changer le mot de passe pour y accéder ?

La sécurité et la paranoïa sont par moment un peu trop liés a mon goût.

D'ailleurs que ce soit Microsoft ou Apple c'est exactement pareil.

avatar Lucieaus | 

@alexzen

Si une autre personne est devant la machine, elle a juste à changer le mot de passe avec la manip pour ensuite pouvoir faire tout ce qu'elle veut dessus.

avatar kagou | 

En effet il faut au minimum qu'un tel utilitaire demande l'ancien mot de passe. Sinon, il ne doit être visible/accessible/et donc utilisable que par root, donc avec re-demande du mot de passe admin.

avatar sylko | 

Oui, il y a pleins de méthodes ...et alors http://osxdaily.com/2011/08/24/reset-mac-os-x-10-7-lion-password
Pour celles et ceux qui perdent leur mot de passe, c'est bien pratique. Faut arrêter d'être paranos.

avatar jeff34 | 

Bah ! Cette commande n'est pas nouvelle. Elle fonctionne aussi sur SL.
Rectif. LeMDP de l'utilisateur dont on veut changer le pass est demandé pour confirmer le changement.
Est-ce pareil sur Lion ?

avatar ondex | 

Pas besoin d'être en face de l'ordi. Une faille dans un navigateur peut permettre l'exécution de cette commande. Si par malchance l'utilisateur a activé SSH, l'ordinateur est ouvert à tous les vents.

avatar Moonwalker | 

Dans Préférences Système>Utilisateurs et Groupes l'ancien mot de passe est requis pour en saisir un nouveau.

Ce n'est pas le cas avec cette commande. Donc c'est bien une faille.

Elle est mineure mais la sécurité est une chaine. Un maillon faible compromet la sécurité de l'ensemble.

avatar rom54 | 

mon-mac:~ [u]test[/u]$ dscl localhost -passwd /Search/Users/[u]the_admin[/u]
New Password:
Permission denied. [b]Please enter user's [u]old[/u] password:[/b]

des bugs qui n'en sont pas n'en sont pas!
Pourquoi est ce qu'on repand ce genre de [b]rumeur, maintenant [/b]?
Lion est le plus securisé des OS GP actuellement. C'est ce que dit C.Miller, et si lui ne considere pas cette commande comme une faille....

PS
[i]Ok pour la modération, je concède avoir reagit un peu vivement suite a l'énormité de cette annonce et remettre en cause le professionnalisme de l'auteur n'était pas très intelligent[/i]

A noter que Lionel sur Macbidouille.com c'est aussi fait avoir :(

je persiste donc a dire qu'il s agit de desinformation et de manipulation

avatar kyfran19 | 

Sous Lion il y a ce problème de facilité a changer le mot de passe pour avoir accès a la machine cette mais sur Snow Leopard comme j'ai moi même, il y a le problème de ne plus pouvoir accéder a sa session après la mise en veille de l'écran ..

Effectivement, j'ai paramétrer mon iMac pour qu'il me demande un mot de passe après chaque rallumage de l'écran .. Mon mot de passe étant uniquement constituer de chiffres, quand je le tape cela me dit mot de passe incorrect .. Je le tape donc dans le champ ' nom d'utilisateur ' pour vérifier que je l'écrit bien && la je voit que les touches de mon clavier sont complètement inverser .. C'est assez embêtant car je ne peut plus accéder a ma session après la mise en veille de l'écran .. Je suis a chastes fois obliger s'éteindre le mac et de le débrancher pour ensuite le rallumer .. Quelqu'un aurais une solution ?

Merci

avatar kyfran19 | 

@kyfran19 :
Chaque fois*

avatar iBook 68 (non vérifié) | 

A se demander si ça vaut encore la peine de mettre un mot de passe. Je vais faire pareil avec ma voiture, je vais laisser les clés sur le contact, moteur en marche...

avatar ybart | 

Le problème n'est pas tant le changement du mot de passe par un utilisateur ayant un accès physique (même si ce n'est pas terrible que ce soit possible aussi simplement: laisser sa session sans surveillance pendant 5 minutes suffit).

Il est par contre possible pour un programme apparemment innocent de faire cette modification, ou un site Web via une faille navigateur, ce qui est autrement plus gênant !

avatar Bigdidou | 

"avant de pouvoir changer le mot de passe il faut encore rentrer l'ancien mot de passe"
Ben non, pas ici, justement. C'est là qu'est le problème.

"Faudrait verifier avant de publier n'importe quoi."
A toi l'honneur...

avatar babgond | 

donc dans une université un étudiant pourrait réinitialiser le compte admin local de la machine ?

car c'est bien beau de dire qu'il faut un accès physique et qu'il faut désactiver le compte invité, mais un utilisateur avec un login sur AD ou OD peuvent réinitialisé les mots de passe...

avatar tokamac | 

Le souci existe surtout pour les parcs de Mac avec plusieurs comptes non administrateurs. Maintenant les utilisateurs mal intentionnés vont pouvoir changer le mot de passe admin sans avoir à le connaître et faire ce qu'ils veulent sur la machine, et même activer root et se balader où ils veulent.

avatar Mouchitana | 

petite question, est t'il possible de changer le mot de passe d'une autre session ?

Car si oui le problème se pose pour les Mac ou il y a plusieurs session.
Un utilisateurs qui se connecte via son compte qui est sur un serveur peu changer le mot de passe du compte admin et faire ensuite ce qu'il veut, c est extremement dangereux pour des entreprises ou associations ou un grand nombre se connecte via des sessions distantes et dont les accès sont bridées.

avatar tokamac | 

MacG, vous avez écrit : "il existe d’ores et déjà un moyen similaire de modifier le mot de passe de n’importe quel utilisateur sans être un hacker de haut vol si vous avez accès à l’ordinateur... Il suffit de démarrer sur la partition de restauration, ouvrir le terminal et taper l’instruction resetpassword"

Sauf qu'il y a une mesure de protection contre ça. Il suffit d'avoir activé le mot de passe du firmware EFI depuis cette même partition de restauration.

avatar Gofannon | 

Ce "hack" ne fonctionne que si l'autre utilisateur (celui visé) est EGALEMENT loggué. Dans le cas contraire, l'ancien mot de passe de cet utilisateur est demandé.

Prière de rectifier l'article.

Voici la source originale : http://www.defenceindepth.net/2011/09/cracking-os-x-lion-passwords.html

avatar Guillou69 | 

[quote]Skittou [20/09/2011 10:46]

Que se passe-t-il si on a activé FileVault et que quelqu'un parvient malgré tout à modifier votre le mot de passe utilisateur, par exemple via la méthode décrite ci-dessus?[/quote]

Effectivement, très bonne question...

avatar pwetpwet | 

"Alors est-ce grave ? Oui et non… "
Toujours aussi comiques chez MacGé à ce que je vois...

avatar bugman | 

Ca peut faire un petit malware sympa.

avatar liocec | 

@alexzen :
+1

avatar BenAddict | 

@mugu

avatar redchou | 

En attendant qu'Apple corrige cette pseudo-faille vous pouvez faire :
$ sudo chmod 100 /usr/bin/dscl

avatar rom54 | 

desinformation flagrante, cette commande et son fonctionnement existe au moins depuis Leopard.

Lorsqu'on tape la commande en question, la commande demande un mot de passe pour changer effectivement pour ce nouveau mot de passe! Testez le truc
depuis votre session taper la ligne de commande mais mettez un autre compte que le votre...

Qu'un utilisateur puisse changer son mot de passe n'est ni une nouveaute ni une faille de securité. Ca existe dans tous les Unix et heureusement.

Ce qui serait grave c'est qu'un utilisateur, sans droit administrateur, ait acces aux fichiers des autres sessions.:. C'est possible sur Windows, ou les sessions sont cosmetiques, mais pas sur les Unix et donc les Mac...

avatar rom54 | 

@ bigdidou
testes la procedure...
mon-mac:~ test$ dscl localhost -passwd /Search/Users/the_admin
New Password:
Permission denied. Please enter user's old password:

@babgond
ben non, on peut changer le mot de passe que de la session ouverte.
On peut pas changer le mot de passe des autres sessions... sans avoir leurs mot de passe.
Donc pas de danger pour les comptes administrateurs (d'ailleurs il devrait y avoir qu'un seul compte administrateur)

avatar kagou | 

Bon ben je rajoute ma couche. J'ai créé un second utilisateur. Je me loggue avec. Je lance un terminal et la commande qui va bien et il me refuse. Permission refusée - Entrez l'ancien mot de passe de l'utilisateur.

Il est où le trou alors ?

avatar rom54 | 

@ kagou
"Il est où le trou alors ?"

dans l'annonce!

Sinon des failles de securites majeures permettant de prendre le control d'une app y en a la pelle, il suffit d'avoir installe Flash, Acrobat reader ou Java.
Les fichiers PDF sont aussi de bonnes portes d'entrees.
On peut aussi regarder du cote de Skype ou du champion toutes categorie: MSN (ou sa version Web Facebook)
Et en plus celles la sont multiplateformes

avatar kagou | 

Depuis le site original :
http://www.defenceindepth.net/2011/09/cracking-os-x-lion-passwords.html

1) This only works for the LOGGED IN USER
2) Running the command with a different user will prompt you for old password
3) Running the directory query with a different user will not expose the hash

So, basically, the article should say, "These issues are present for the logged in user only, not any other user". Which is of course why you shouldn't use your Macintosh with your admin user account.

Also, none of this will expose the Keychain.

avatar Gofannon | 

@kagou

Même si les différents articles sont tous, au mieux, imprécis, il faut noter qu'il est donc possible de changer le mot de passe de l'utilisateur loggué. Si cet utilisateur a les droits administrateur, ceci permet à un programme tiers de prendre le contrôle de la machine.

avatar jeff34 | 

N'empeche que comme sur SL la demande de confirmation avec le mot de passe actuel pour effectuer le changement est quand meme une sécurité supplémentaire et qui ne m'a jamais choqué bien au contraire.

avatar rom54 | 

@ Gofannon
"Même si les différents articles sont tous, au mieux, imprécis"

C'est bien le problème, cette imprécision fait boule de neige et la "découverte" anecdotique faites par le bidouilleur, enfin l'expert en sécurité en question sur son blog..., passe du statut de curiosité a celui de la catastrophe du siecle faisant de Lion une passoire comme Windows.
La façon dont sont formulées les choses pousse a mettre des news avec des titres allant dans ce sens alors que le détail de l'article indique le contraire....

"il faut noter qu'il est donc possible de changer le mot de passe de l'utilisateur loggué"

Comme l'utilisateur peut le faire par l'interface graphique une fois qu'il a ouvert sa session...

"ceci permet à un programme tiers de prendre le contrôle de la machine."

Non, pas plus que n'importe quel logiciel peut agir sur la session sur laquelle il tourne...

A moins que le comportement que décrt l' auteur, et présenté de manière outranciere comme une faille, ne soit accompagné d un buffer overflow potentiellement exploitable, ca n'a pas d'impact sur la securité dans la realité.

Avant d'avancer des choses comme celles la il faudrait essayer d'utiliser la chose dans un script... pour voir ce qu'on pourait en faire. A quoi peut servir de changer le mot de passe d'un utilisateur dont la session est ouverte???

Et pour mettre terme aux éventuelles supputations et délires que feraient les curieux qui iraient lire l'article original: casser le mot de passe grâce au hash que l'on peut obtenir est une perte de temps! On a pas besoin de ca pour tenter une attaque de type dictionary ou bruteforce pour casser le mot de passe d'un compte, c'est un truc a quoi s'amusent tout les eleves dans les ecoles d'inge informatique... Et la MacOS X n'est pas plus a l'abri que n'importe que autre OS...

avatar Jimmy_ | 

Utilitaire de mot de passe du programme interne est aussi une véritable passoire. Il est trés facile de le faire sauter et la procédure n'a rien de secret.

avatar ce78 | 

@ skittou. "Que se passe-t-il si on a activé FileVault et que quelqu'un parvient malgré tout à modifier votre le mot de passe utilisateur, par exemple via la méthode décrite ci-dessus?"
Cette hypothèse est impossible, me semble-t-il, car pour changer le mot de passe, il faut que le disque soit déchiffré, et pour le déchiffrer il faut le mot de passe FileVault. Quand on active FileVault, on change la phase de boot. Le mot de passe est demandé avant la phase de démarrage, et non pas avant l'ouverture de la session.
Pour sécuriser le tout, le mieux est alors de doter l'EFI d'un mot de passe, comme ça, impossible de démarrer sur un disque externe.
FileVault rend réellement les données inaccessibles à quiconque n'a pas le mot de passe (sauf la NSA peut-être, mais ça ne vous concerne pas je suppose ?...).

@ Jimmy : le firmware EFI a été modifié et le mot de passe du programme interne n'est plus du tout une passoire. Le seul moyen consiste à amener l'ordi dans une Apple Store, et encore, il n'est même pas certain qu'ils arriveront à débloquer l'ordo si on a perdu le mot de passe de l'EFI.

avatar notasa | 

@mugu

Du fric.

avatar knowledging | 

Bonjour

Merci Rom54...

avatar ELC FX | 

Non mais de la dire que c'est un danger :
File Vault demande un autre mot de passe et en peut toujours limiter l accès au terminal

avatar Mach1 | 

Il est possible d'inclure cette commande en mode Shell dans une application banale écrite en RealBasic.
La commande unix 'id user' donnera le nom d'utilisateur et le logiciel fera le reste.
Il pourra même envoyer tous ces renseignements sur un site ftp.
Je l'ai testé et ça marche.
Le danger est bien là.

avatar ICoppo | 

Franchement grave je tombe des nues.

Pages

CONNEXION UTILISATEUR