Retourner à la page d'accueil

Pas de commentaire

Enregister un commentaire

auteur
message
captcha

 

News [vista] Le monde à l'envers

Vous aimez les logiciels libres. Mais vous n'êtes pas sectaire, alors vous utilisez aussi Internet Explorer de temps en temps, ne serait-ce que pour vérifier que le tap de votre QEMU fonctionne toujours. Alors vous serez sûrement surpris comme moi de voir le message suivant sur le site d'AWStats :

AWStats

Je passe évidemment sur l'envolée lyrique concernant l'emprise de Microsoft sur le monde sur l'Internet (à peu près au niveau des trolls du vendredi soir à 18h) pour m'intéresser à :

It's more secure against viruses and spyware

Forcément, je highlight immédiatement sur "secure" et "virus". Donc Firefox serait plus sécurisé qu'IE ? Pas si sûr... Depuis Vista, un mécanisme de sécurité a été apporté à Windows : les niveaux d'intégrité (IL) (cf. article de N. Ruff dans MISC 34). Ils définissent le degré d'interaction possible entre un processus et le système (typiquement le registre et le système de fichiers), selon quatre principaux niveaux :

  • Low integrity level (0x1000)
  • Medium integrity level (0x2000)
  • High integrity level (0x3000)
  • System integrity level (0x4000)

NDS : il existe aussi un niveau Untrusted (SID S-1-16-0000) sur lequel je n'ai pas trouvé énormément d'information, et tous les niveaux intermédiaires qui n'ont pas de nom particulier (ex : 0x1020).

Le but de ce mécanisme est de pouvoir gérer des droits d'accès différents au système selon la criticité de l'application (genre Paint vs IE) et ce pour un même utilisateur.

Un binaire non "Vista aware", comme par exemple Firefox, va s'exécuter au niveau moyen. Il pourra donc interagir avec le système avec les pleins privilèges de l'utilisateur. IE/Vista est un peu plus malin puisqu'il s'exécute en mode dit "Protégé", c'est-à-dire avec un niveau d'intégrité bas. Son interaction avec le système est beaucoup plus faible. En cas d'exploitation de faille, il pourra faire énormément moins de chose que si c'est Firefox qui se fait exploiter. Cela va de soit, un processus fils hérite de l'IL du processus père et un processus ne peut qu'abaisser son propre IL.

Pour être plus précis, sans l'accord de l'utilisateur, IE ne pourra écrire que dans les répertoires suivants :

%userprofile%\AppData\Local\Microsoft\Windows\Temporary Internet Files\Low
%userprofile%\AppData\Local\Temp\Low
%userprofile%\AppData\Roaming\Microsoft\Windows\Cookies\Low
%userprofile%\AppData\Local\Microsoft\Windows\History\Low

Pour le registre :

HKCU\Software\LowRegistry

Ce mécanisme n'est carrémenent pas superflu puisque, pour mémoire, c'est le seul qui ait à peu près tenu le coup lors de la faille ANI (bien qu'il n'empêche pas l'exécution de code arbitraire). Mais il n'est cependant pas parfait, en particulier parce qu'un processus de niveau bas peut toujours lire, mais pas écrire, dans des fichiers de niveau moyen.

Il est prévu que Firefox supporte le mode protégé de Vista dans une prochaine version. En attendant, il reste toujours possible de le configurer à la main pour qu'il se lance en IL bas :

C:\Program Files\Mozilla Firefox>icacls firefox.exe /setintegritylevel low
D:\Donnees>icacls profil_firefox /setintegritylevel (OI)(CI)low

Mais une question vient immédiatement à l'esprit : avec IE en mode protégé, il reste possible d'enregistrer un téléchargement par exemple sur le bureau, alors que l'IL bas devrait l'interdire. IE est en fait en communication RPC avec un processus de niveau moyen (un "broker") nommé ieuser.exe. La question est donc maintenant de savoir s'il est possible de s'évader du niveau d'intégrité bas. La réponse est oui... Mais c'est normalement patché dans Vista SP1, ouf :D

Posté par Sylvain le 23/04/2008 à 00:06:29
0 commentaire
[ Site créé par Sylvain SARMEJEANNE ]
Cette page a été générée par mes scripts en 0.004 secondes :)
[Valid XHTML 1.1!] [Valid CSS!] [[Valid RSS]]