Qu’est-ce que la virtualisation UAC ?
UAC signifie « Contrôle de compte d'utilisateur ». Il s’agit d’un domaine de gestion de logiciels qui isole les composants essentiels du système d’exploitation des modifications potentiellement dommageables. Il s'agit du niveau d'accès appelé « root » dans les systèmes de type Unix et, dans les systèmes Windows, sous le nom de privilèges d'administrateur.
La rencontre la plus fréquente que les utilisateurs de Windows rencontrent avec l'UAC se produit lorsqu'ils tentent d'installer un nouveau logiciel. Ce message contextuel demandant une autorisation afin de permettre l'installation est le visage public de l'UAC.
En savoir plus sur l'UAC
Le contrôle de compte d'utilisateur est intégré à Windows depuis Windows Vista en 2006 et il a été inclus dans Serveur Windows depuis la version 2008.
Le système UAC permet aux logiciels installés par l'utilisateur de s'exécuter dans la zone utilisateur du lecteur et uniquement aux logiciels installés par le Administrateur Le compte a accès aux ressources système. Le logiciel installé par l'administrateur peut être exécuté par des utilisateurs sans accès aux ressources système ou exécuté par l'administrateur pour obtenir cet accès au système.
Le but de l’UAC est de renforcer la sécurité du système. Il est supposé que l'administrateur dans un environnement professionnel sécurisé n'est accessible que par un professionnel de l'informatique qui installera uniquement des logiciels autorisés et vérifiés. En revanche, on ne peut pas toujours faire confiance aux utilisateurs pour prendre des précautions concernant ce qu’ils téléchargent.
Les utilisateurs peuvent facilement être amenés à télécharger malware qui est intégré dans une image ou un fichier PDF. Sans le privilège Administrateur, les logiciels qui accèdent au point final via un compte utilisateur ne pourront pas accéder aux services importants.
Les zones du disque bloquées pour les comptes d'utilisateurs incluent les répertoires %ProgramFiles%, %Windir%, %Windir%system32. Le service UAC bloque également l'accès en écriture au chemin de registre HKEY_LOCAL_MACHINESoftware.
La fenêtre contextuelle UAC
Cette fenêtre contextuelle d'autorisation est un élément clé de l'UAC. Il déclenche un paramètre dans le système d’exploitation pour soit faciliter les actions dans les répertoires sensibles du système d’exploitation avec autorisation, soit bloquer cet accès si l’autorisation est refusée.
L'accès au système ne devrait être nécessaire que pendant l'installation et la mise à jour du logiciel. Les variables de fonctionnement, le stockage temporaire et les données de session doivent tous être stockés dans dossiers appartenant à l'utilisateur . Les paramètres système ne doivent être écrits que dans un dossier partagé et modifiable , tel que %programdata%.
L'organisation rigide des données et des paramètres profite à tous les utilisateurs. Si un utilisateur d'un appareil est en mesure de personnaliser le logiciel, ces préférences personnelles n'ont pas d'impact sur les autres utilisateurs de cet ordinateur.
Virtualisation
Il existe plusieurs types de virtualisation. L'objectif général de cette stratégie est d'utiliser le logiciel afin de créer un environnement qui imite une vraie ressource , comme un serveur séparé ou le matériel d’un PC.
L'un des types de virtualisation les plus largement mis en œuvre est un « machine virtuelle ,' ou Machine virtuelle . Il s’agit d’un système d’exploitation distinct qui flotte au-dessus du véritable système d’exploitation. Il fournit les services dont un logiciel a besoin du système d'exploitation sans permettre à ce logiciel d'obtenir un accès réel et direct au système d'exploitation réel.
La machine virtuelle médiateur entre le logiciel et le système d'exploitation. Dans certains cas, cette configuration peut permettre à un logiciel écrit pour un système d’exploitation de s’exécuter sur un ordinateur sur lequel ce système d’exploitation n’est pas réellement installé. Par exemple, il est possible d'exécuter un logiciel écrit pour Linux sur un ordinateur doté du les fenêtres système opérateur. Si un environnement virtuel est disponible pour interpréter les demandes du logiciel compatibles Linux en requêtes que Windows peut comprendre – c'est comme un interprète.
Virtualisation UAC
Dans le cas d'une virtualisation UAC, la VM exploite Windows et s'exécute sur Windows. Le but du double système d’exploitation n’est pas d’assurer la compatibilité des systèmes d’exploitation mais de répondre aux besoins validés. logiciel existant qui a réellement besoin d'accéder à ces zones du système lorsqu'il est exécuté par les utilisateurs.
Plutôt que de servir d'intermédiaire entre deux systèmes d'exploitation différents, la virtualisation UAC fournit les services dont le logiciel a besoin pour s'exécuter dans un compte utilisateur sans rompre l'isolation stricte du système de l'UAC. L'accès aux dossiers dont le logiciel a besoin est bloqué et ce fait entraînerait le blocage ou la chute du programme.
La mise en œuvre de la virtualisation UAC était une étape nécessaire afin de combler l'introduction de Contrôle d'accès des utilisateurs . Sans cette mesure provisoire, une grande partie des logiciels conçus pour fonctionner sous Windows cesseraient de fonctionner. Même si les éditeurs de logiciels viendraient, avec le temps, écrire de nouvelles versions de leurs produits, la réécriture complète requise par l'UAC aurait pris du temps. Ces modifications majeures sont généralement réservées aux nouvelles éditions et ne sont pas comptabilisées comme des mises à jour.
Les éditeurs de logiciels spécialisés dans les produits pour Windows ne pouvaient pas se permettre radier l'investissement déjà fait dans leurs produits. Lorsque de nouvelles éditions sont produites, les fournisseurs calculent leur durée de vie et attendent que tous les coûts aient été récupérés avant d'écrire de nouvelles versions.
La virtualisation UAC établit une correspondance entre les demandes de dossiers système des logiciels existants et les dossiers appartenant aux utilisateurs que Windows s'attend désormais à ce que les logiciels utilisent lorsqu'ils sont exécutés à partir de comptes d'utilisateurs.
Grâce à la virtualisation UAC, logiciel qui écrit dans C:Program Files
Le manifeste de candidature
Tous les logiciels n’auront pas besoin d’accéder aux zones protégées du système. Certains programmes se téléchargent sous forme de fichiers exécutables et s'exécutent où qu'ils résident sur l'ordinateur. La principale question de savoir si un programme doit ou non écrire des fichiers dans des répertoires réservés se résume à une question d'organisation des besoins d'accès aux dossiers.
Le programme d'installation signale au système d'exploitation quel accès au dossier le programme attend à la fois pour l'installation et à chaque fois qu'il est exécuté via les entrées du fichier Manifeste de candidature . Il s'agit d'un document XML qui accompagne les programmes dans un package d'installation.
Une valeur requise de niveau d'autorisation dans le fichier est la clé pour savoir si Windows appellera la virtualisation UAC pour ce programme à chaque fois qu'il est exécuté. Les valeurs possibles pour requestExecutionLevel sont :
- commeInvoker Exécutez avec le même jeton d'accès que le processus parent.
- le plus élevéDisponible Acquérir les privilèges les plus élevés que l’utilisateur actuel peut obtenir.
- exigerAdministrateur Ce programme ne peut s'exécuter qu'en tant qu'administrateur.
Windows utilisera toujours la virtualisation UAC pour les logiciels signalés avec le besoin d'accès requireAdministrator. Ce type de logiciel provoquera toujours l'apparition de la fenêtre contextuelle d'autorisation UAC à chaque exécution. Ce statut est celui par défaut. Ainsi, s'il n'y a pas de manifeste d'application ou si la déclaration d'autorisation d'exécution requise est manquante, le logiciel aura automatiquement le statut requireAdministrator et sera toujours virtualisé.
Lorsque la virtualisation UAC est invoquée
La virtualisation UAC est un mécanisme intégré à Windows, elle ne peut pas être appliquée à volonté. Il n’existe aucun package d’hyperviseur UAC en circulation. Ce n’est pas un utilitaire dans un framework de développement et il n’existe pas d’API pour cela. En bref, vous ne pouvez pas contrôler l'utilisation de la virtualisation UAC .
Le processus de virtualisation UAC ne s'applique pas à tous les logiciels. Voici quelques circonstances à garder à l’esprit pour déterminer si la virtualisation UAC sera utilisée pour une application :
- La virtualisation UAC n'est invoquée pour le logiciel que lorsqu'il est exécuté à partir d'un compte utilisateur. Les applications exécutées en tant qu’administrateurs n’en ont pas besoin.
- La virtualisation UAC doit être activée et active sur l'hôte.
- Les programmes exécutés dans un environnement 64 bits n'ont pas besoin de virtualisation UAC. Cela ne s'applique qu'aux logiciels 32 bits.
- Le compte utilisateur doit avoir un accès en écriture aux fichiers dans le chemin d'accès au fichier d'origine.
Gestion du contrôle des comptes d'utilisateurs
Le comportement du contrôle de compte d'utilisateur peut être modifié sur chaque ordinateur exécutant Windows. Cette option est disponible dans le Paramètres menu et vous pouvez y accéder en cliquant sur le Paramètres icône de rouage dans le Commencer puis en tapant Contrôle de compte d'utilisateur dans la barre de recherche Paramètres.
L'écran des paramètres de contrôle de compte d'utilisateur est présenté sous forme de curseur. Cela donne à l'utilisateur la possibilité de basculer entre l'un des quatre paramètres pour l'UAC. Ces options sont :
- Toujours aviser
- M'avertir uniquement lorsque des programmes tentent d'apporter des modifications à mon ordinateur
- M'avertir uniquement lorsque des programmes tentent d'apporter des modifications à mon ordinateur (ne pas assombrir mon bureau)
- Jamais notifier
Ci-dessous, vous trouverez un peu plus de détails sur chacune de ces options.
Toujours aviser
C'est le cadre le plus rigide. Il appelle la fenêtre contextuelle de notification lorsqu'un programme est sur le point d'être installé ou mis à jour et lorsque vous, ou tout autre programme, essayez de modifier les paramètres Windows. Il gèlera toutes les tâches sur l'ordinateur jusqu'à ce que vous répondiez.
Cette option est recommandée pour les ordinateurs sur lesquels de nouveaux logiciels sont fréquemment installés et pour les personnes qui visitent des sites Web inconnus.
M'avertir uniquement lorsque des programmes tentent d'apporter des modifications à mon ordinateur
Il s'agit de la valeur par défaut pour l'UAC. Il avertira l’utilisateur de l’ordinateur lorsque des programmes tenteront d’installer un logiciel ou d’apporter des modifications à votre ordinateur. Il n’affichera pas la fenêtre contextuelle d’autorisation lorsque vous apporterez vous-même des modifications aux paramètres de votre ordinateur. Il gèlera toutes les tâches sur l'ordinateur jusqu'à ce que vous répondiez.
Cette option est recommandée pour ceux qui installent fréquemment de nouveaux logiciels et visitent des sites Web inconnus, mais ne souhaitent pas être avertis de leurs propres actions modifiant les paramètres Windows.
M'avertir uniquement lorsque des programmes tentent d'apporter des modifications à mon ordinateur (ne pas assombrir mon bureau)
Cette option provoque une fenêtre contextuelle d'autorisations lorsque des programmes tentent d'installer un logiciel ou d'apporter des modifications à l'ordinateur, mais elle n'avertira pas les utilisateurs qui modifient manuellement les paramètres Windows. Contrairement aux deux options précédentes, ce paramètre ne gèlera pas les autres tâches et n'attendra pas de réponse.
Cette option n'est recommandée que si, pour une raison quelconque, le processus de notification fonctionne lentement sur l'ordinateur au point de devenir un sérieux inconvénient pour l'utilisateur.
Jamais notifier
Cette option désactive le contrôle d'accès utilisateur. Vous n’obtiendrez en aucun cas la fenêtre contextuelle des autorisations.
Cette option crée un risque de sécurité.
Virtualisation du registre
Virtualisation du registre est l'application de la virtualisation UAC au registre système. Le but de cette fonctionnalité est de bloquer l'accès aux entrées du registre global tout en permettant aux logiciels nécessitant un tel accès de continuer à fonctionner. À mesure que l'UAC interprète l'accès aux dossiers et détourne les actions d'écriture vers des répertoires contrôlés par l'utilisateur, la virtualisation du registre fait basculer les tentatives d'écriture dans des variables globales vers des clés de registre de compte utilisateur plus sûres.
Comme pour la virtualisation UAC basée sur des fichiers, le logiciel poursuit toutes ses procédures pré-écrites, créant et mettant à jour les valeurs des clés de registre sans endommager ces zones de registre globales.
La virtualisation du registre n'est mise en œuvre que pour permettre aux systèmes existants de continuer à fonctionner. Le besoin de ce service est probablement, à l'heure actuelle, presque complètement disparu . Tout logiciel écrit après 2006 n'aura pas besoin du service de virtualisation du registre car il aurait dû être écrit conformément aux directives des développeurs Microsoft. Ces directives expliquent la différence entre l'utilisation des entrées de registre globales et les clés de registre disponibles pour les comptes d'utilisateurs.
L'avenir de la virtualisation UAC
La virtualisation UAC a été créée pour assurer la compatibilité ascendante lorsque Microsoft a lancé sa nouvelle architecture. Il s'agit d'une méthode permettant d'empêcher les logiciels existants de tomber en panne car ils ne sont plus autorisés à écrire dans les fichiers dont les chemins et les noms sont codés en dur.
Cela montre que la virtualisation UAC n'a pas d'avenir – tout tourne autour du passé. Le système de virtualisation UAC est devenu progressivement plus redondant au fil du temps. L'UAC faisant partie de Windows depuis 2006, c'est une certitude environnementale depuis 25 ans. Les chances qu'un logiciel écrit il y a plus de 25 ans soit toujours actif sans nouvelle version ou mise à jour sont minces. D'une part, les vieux logiciels sont très sujet aux attaques des pirates informatiques . Les scanners de vulnérabilité recherchent particulièrement les anciens logiciels lorsqu’ils sondent les ordinateurs et les réseaux à la recherche d’un accès.
Virtualisation UAC dans Windows 10
Si vous utilisez Windows 10, vous pouvez décider de rechercher votre paramètre de virtualisation UAC et voir si la fonction est activée.
Pour ce faire :
- Appuyez sur le bouton Windows plus « R » pour ouvrir un Courir boîte.
- Taper secpol.msc et appuyez sur « OK » pour ouvrir le Stratégie de sécurité locale application.
- Dans le Stratégie de sécurité locale fenêtre, développez Politiques locales et cliquez sur Options de sécurité dans le panneau de gauche.
- Faites défiler la liste des politiques dans le panneau principal jusqu'à ce que vous arriviez à Contrôle de compte d'utilisateur : virtualisez les échecs d'écriture de fichiers et de registre vers des emplacements par utilisateur .
L'état de ce paramètre doit être Activé . Si ce n'est pas le cas :
- Double-cliquez sur la ligne Contrôle de compte d'utilisateur. Une fenêtre contextuelle apparaîtra.
- Clique sur le Activé bouton radio.
- Cliquez sur D'ACCORD pour fermer la fenêtre contextuelle.
Autres méthodes de protection du système
Un utilisateur Windows typique ne devrait pas avoir à s'inquiéter de la virtualisation UAC et un concepteur de logiciel destiné à être utilisé sous Windows n'a pas non plus besoin de se soucier de la virtualisation UAC, car les pratiques de programmation Windows actuelles rendent ce service inutile.
Il existe un système de sécurité Windows complet qui protège les appareils contre la falsification et il existe quelques paramètres que vous pouvez consulter dans Windows afin d'améliorer la protection du système.
Le premier que vous pourriez regarder est Autoprotection , qui empêche les logiciels malveillants d'interférer avec et de modifier les paramètres antivirus de votre appareil. Pour vérifier que cette option est activée :
- Taper Sécurité Windows dans le champ de recherche du menu Démarrer.
- Sélectionnez le Application de sécurité Windows à partir des résultats.
- Cliquer sur Protection contre les virus et les menaces.
- Regardez en bas du panneau principal de cet écran et cliquez sur Gérer les paramètres .
- Autoprotection est la quatrième option sur cet écran. Assurez-vous qu'il est allumé.
Vous devez également vous assurer que Protection en temps réel , Protection fournie par le cloud , et Soumission automatique des échantillons sont allumés.
L'autre substitut majeur à la protection de la virtualisation UAC est le Accès aux dossiers contrôlé système. Cela empêche les logiciels malveillants de modifier les extensions des fichiers pour les masquer ou de modifier les noms des dossiers système. Ceci est également accessible à partir du Paramètres de protection contre les virus et les menaces écran sur lequel vous avez allumé Autoprotection .
- Dans le Paramètres de protection contre les virus et les menaces écran. Faites défiler jusqu'à Gérer l'accès contrôlé aux dossiers et cliquez dessus.
- Dans l'écran suivant, qui est Protection contre les rançongiciels , déplacez le curseur pour Accès aux dossiers contrôlé à Sur .
- Vous serez redirigé vers la fenêtre contextuelle d'autorisation du contrôle de compte d'utilisateur. Cliquer sur Oui pour permettre le changement.
Conclusion
La virtualisation UAC a été une mesure provisoire qui a permis à la vaste bibliothèque de logiciels disponibles pour Windows de continuer à fonctionner. Sans cette solution, une grande partie des applications disponibles pour Windows auraient cessé de fonctionner lors de l'introduction de Windows Vista.
Au fil du temps, la virtualisation UAC est devenue de plus en plus inutile. Cependant, comme vous l'avez vu, il est toujours sous Windows 10 et vous verrez probablement qu'il est activé sur votre ordinateur.
La solution de virtualisation pour l'UAC était intelligente et ses méthodes s'avéreraient utiles dans tout scénario de protection du système. En fait, de nombreux systèmes de sécurité fonctionnent sur la virtualisation, les classant comme « appareils virtuels .» L'isolation du système d'exploitation et des applications fonctionne dans les deux sens. Cela peut également empêcher les pirates informatiques d'accéder au logiciel et de le falsifier en bloquant la voie d'accès via le système d'exploitation.
FAQ sur la virtualisation UAC
Dois-je désactiver la virtualisation UAC ?
La virtualisation UAC est un élément fondamental de la stratégie de sécurité de Micorosft pour Windows. La désactivation de l'UAC vous fait perdre le bénéfice des procédures de sécurité natives.
Comment faire un exécutable non soumis à la virtualisation UAC ?
Il existe deux manières d'exempter un exécutable de la virtualisation UAC. La première consiste à concevoir le logiciel comme un package portable qui n’a pas besoin d’être installé mais qui s’exécutera sous forme de fichier à l’emplacement où il a été téléchargé. L'autre façon d'éviter que la virtualisation UAC ne se déclenche lors de l'exécution du programme. L'autre méthode consiste à inclure un manifeste d'application avec son programme d'installation. Celui-ci doit contenir une entrée pour requestExecutionLevel avec une valeur définie sur asInvoker ou plushighAvailable.