Exécution d'applications sous un compte administrateur

Principes

Certaines applications ou tâches diverses nécessitent d'être exécutées avec des privilèges de compte administrateur. Or si l'utilisateur en cours n'appartient pas à ce groupe, cela est impossible. Afin de contourner cette difficulté, Microsoft a prévu deux outils :

Le problème majeur posé par ces deux outils est que l'administrateur doit être présent physiquement près de l'ordinateur de l'utilisateur afin de saisir de façon interactive son nom et mot de passe (et si l'administrateur communique ces informations, cela remet en cause la sécurité du système).

En particulier, ni SU, ni RUNAS ne permettent d'intégrer dans une ligne de commande le mot de passe de l'administrateur, qui doit obligatoirement être saisi dynamiquement (exception faite de RUNAS sous Windows XP PRO, avec le commutateur /savecred, qui permet de mémoriser ce mot de passe pour une exécution ultérieure, mais qui est peu pratique).

Le script xrunas.vbs que j'ai écrit contourne cette difficulté, mais la sécurité est considérablement compromise, puisque le mot de passe du compte administrateur va apparaître en clair dans la commande du script.

C'est pourquoi j'ai conçu SUPEREXEC, logiciel utilitaire (écrit en Delphi 7), qui affranchit de la contrainte de saisie en temps réel du mot de passe tout en garantissant la sécurité du système.

SUPEREXEC fonctionne sous les systèmes d'exploitation suivants :
  • Windows 2000 (Professionnel et Serveur)
  • Windows XP (Professionnel et Édition Familiale)
  • Windows 2003

Il ne fonctionne pas sous Windows NT4 car certaines fonctions (chiffrement, gestion de processus, gestion réseau) manquent sous ce système.

Il permet de préparer une exécution, en enregistrant dans la Base de Registres (branche HKLM) les informations chiffrées suivantes :

TOUTES ces informations sont intégralement CHIFFRÉES dans la Base de Registres.
(à l'aide de l'API de chiffrement de Windows)

SUPEREXEC se compose de 2 exécutables :

Dans les versions antérieures à la V2.0, il n'y avait qu'un seul exécutable, qui détectait le niveau de privilèges de l'utilisateur, et servait aussi bien à la préparation qu'à l'exécution des applications. Compte tenu de la taille grossissante du logiciel (1,1 Mo) il a été décidé de scinder en 2 ces fonctionnalités, afin d'obtenir une taille raisonnable pour le module runtime (110 ko).

Préparation des applications (mode administrateur)

SUPEREXEC fonctionne à la fois localement et à distance, si bien qu'il est possible de gérer de la même façon aussi bien l'ordinateur local que les ordinateurs de n'importe quel groupe de travail ou domaine accessible depuis le réseau.

Quand un administrateur lance SUPEREXEC, une boite de dialogue s'affiche :
(cliquer sur les zones pour obtenir des détails)

Pour plus d'informations, consulter le fichier d'aide compilé SuperExec.chm
(ce fichier est fourni également avec le logiciel)

Enregistrement du journal Effacement du journal Paramétrage de SuperExec Saisie du nom et du mot de passe Administrateur Quitter SuperExec Créer une nouvelle application Modifier l'application sélectionnée Supprimer l'application sélectionnée Supprimer les applications périmées Appliquer les modifications Vérifier les  informations inscrites dans la Base de Registres Effacer toutes les listes d'applications de l'ordinateur sélectionné Copier les fichiers vers l'ordinateur distant Aide générale Légende des icônes Applications Menu Réseau Ce champ permet de saisir le nom d'un ordinateur n'apparaissant pas dans la liste des domaines et ordinateurs. Cela peut se produire si un administrateur a volontairement caché cet ordinateur (commande net config server /hidden:yes) Utilisateurs Journal
Attention dans le choix des applications autorisées!
Il faut absolument, dans la mesure du possible, éviter d'autoriser des applications permettant de lancer d'autres applications, car ces dernières seront exécutées également avec des privilèges administrateur.

Par exemple si on autorise le processeur de commandes (%systemroot%\system32\CMD.EXE), l'utilisateur pourra exécuter n'importe quel autre logiciel, script, composant enfichable,..., avec des droits administrateur.

Exécution des applications (Mode utilisateur)

Il permet l'exécution d'application via SE (avec les privilèges administrateur)

Un utilisateur non administrateur peut ainsi lancer une application :

Différents contrôles sont réalisés :

Téléchargement et installation

SUPEREXEC est entièrement gratuit.

Il s'installe (sous un compte administrateur) à partir d'un fichier auto extractible installSE.exe
(lui même contenu dans un fichier compressé installSE.zip)
Le programme d'installation est bilingue.
Tout comme le logiciel, il est disponible pour l'instant en français et en anglais.




L'installation extrait 4 fichiers :

Aucun autre fichier n'est nécessaire.
Un raccourci est créé sur le bureau ainsi que deux raccourcis dans le menu démarrer (un pour lancer SUPEREXEC et un pour le désinstaller)

Le choix de la langue se fait au cours de l'installation, mais il est possible de la changer à tout moment dans SuperExec.

installSE.zip 1961 ko

Historique