Y a-t-il un moyen de forcer un programme qui nécessite normalement des privilèges administratifs (via UAC) à s'exécuter sans eux ? (c'est-à-dire sans invite UAC et sans accès système étendu.)
Ajouté : Sans modifier l'exécutable lui-même.
Malgré la réponse de James, j'ai trouvé quelques façons de le faire presque :
- En modifiant l'exécutable, je peux supprimer l'entrée
trustInfo
du manifeste (ou le manifeste entièrement, afin que je puisse en utiliser un externe), permettant au programme de démarrer sans UAC. Malheureusement, cela modifie l'exécutable, qui se ferme peu de temps après en raison d'un test de somme de contrôle interne. - En utilisant Process Explorer, je peux le lancer en tant qu'Utilisateur Limité. Cependant, cela semble le limiter significativement plus que je ne le voudrais (il s'exécute comme Internet Explorer en Mode Protégé et peut donc accéder à significativement moins que ce que peut mon utilisateur standard non élevé).
2 votes
Vous spécifiez de ne pas modifier l'exécutable, pourtant la modification du fichier .exe est l'une de vos méthodes tentées?
3 votes
@ekaj J'ai seulement précisé que après avoir découvert que ça ne fonctionnerait pas ;)
0 votes
Pourriez-vous peut-être préciser le programme, même si vous ne l'utilisez plus? Cela pourrait aider les gens à savoir ce qu'il essaie d'accéder qui nécessite des privilèges administratifs
0 votes
Malheureusement pas. Cependant, ce n'est pas particulièrement pertinent : UAC est déclenché par un programme demandant une élévation pendant la création du processus (le moyen habituel - comme dans ce cas - est avec un manifeste). Une fois qu'un processus est lancé, il ne peut pas changer son statut d'élévation - peu importe les ressources restreintes auxquelles il essaye d'accéder.
0 votes
Si un programme n'a pas de manifeste et refuse de s'exécuter sans privilèges d'administration, il est très probable que cela soit dû à la Détection de l'Installateur UAC. J'ai posté cette question et misha256 a une bonne solution. Je l'ai testée et je peux confirmer que cela fonctionne. superuser.com/questions/857616/… J'ai fait quelques recherches et j'ai découvert qu'il n'y a aucune raison que la Détection de l'Installateur existe. Notez que si les privilèges d'administration sont dus à une entrée TrustInfo dans un manifeste, évidemment cela ne fonctionnera pas.
0 votes
Mis à part l'exécution via l'interface graphique de Process Explorer, il est possible de lancer avec
psexec.exe -l
. Parfois c'est mieux car cela nécessite moins d'actions manuelles. Cependant, cela limitera le processus aux permissions du groupe "utilisateurs", tout comme avec l'option Exécuter en tant qu'utilisateur limité de Process Explorer.