ScreenSaverFakeInputs
Écrit par Gilles LAURENT   
28-10-2017
ScreenSaverFakeInputs - Interdire la simulation d'activité utilisateur de désactiver la mise en veille

Image

Vous travaillez sur votre PC et venez par exemple de lancer un script d'inventaire de votre parc de machines. Vous souhaitez suivre la progression du traitement en temps réel tout en travaillant pendant ce temps sur une autre machine mais il s'agit d'un PC d'entreprise et la stratégie de groupe est configurée pour verrouiller le bureau après x minutes d'inactivité. Que faire ? Bouger périodiquement la souris du PC, déverrouiller la session ou alors chercher sur Internet un exécutable perfectionné simulant l'activité de l'utilisateur ! Il m'arrive parfois de me retrouver dans cette situation et pour cela j'utilise quelques lignes de code VBScript :

--- 8< ---
With CreateObject("WScript.Shell")
  WScript.Echo "Emulating user inputs ..."
  WScript.Echo "Ctrl+C to stop"
  Do
    WScript.Sleep (30*1000)
    .SendKeys ("{F16}")
  Loop
End With
--- >8 ---

Image

J'exécute ce script dans une invite de commande avec le moteur VBScript CScript.exe. Dès que je n'en ai plus besoin alors un simple Ctrl+c permet de mettre fin à la simulation d'activité. Mais si je quitte le bureau ou m'absente temporairement de mon poste de travail et oublie de l'interrompre alors ma session restera ouverte et donc accessible à tout le monde ! Tous mes logiciels et outils seront en libre-service et l'accès au réseau d'entreprise sera possible en mon absence avec mon compte utilisateur du domaine !

Image Et voila comment je viens de ruiner la sécurité du poste de travail de l'entreprise !

L'outil ScreenSaverFakeInputs permet d’empêcher la simulation d'activité utilisateur (événements clavier et souris) de venir perturber le démarrage de l'écran de veille. La configuration est fixée par stratégie locale et concerne tous les utilisateurs de la machine.

Exemple:

Ci-dessous la commande permettant l'activation de la protection fip (-drop).
Cette commande doit être exécutée sous l'autorité Administrateur du poste de travail.
C:\Tools>ScreenSaverFakeInputs.exe -debug -drop
[+] ScreenSaverFakeInputs x64 v1.0.0.1 started
[ ] operating system version=6.3.9600
[ ] commandline=ScreenSaverFakeInputs.exe  -debug -drop
[ ] screensaver is active=true
[ ] screensaver timeout value=600
[ ] screensaver is password protected=true
[ ] screensaver fip is enabled=false
[ ] drops fake inputs=true
[ ] trying to initialize com support ...
[ ] trying to instanciate com component ...
[ ] opening local policy ...
[ ] getting local user policy registry key handle ...
[ ] trying to create fip user policy ...
[ ] setting fip user policy value=true ...
[ ] updating user policy ...
[ ] refreshing user policy ...
[ ] logoff may be required for the configuration to take effect
[ ] freeing resources ...
[+] operation completed successfully
A présent l'écran de veille est protégé par la protection fip (Fake Input Protection).
Les injections de touches clavier et mouvements souris ne viendront plus perturber la période n'inactivité réelle et n'auront donc plus aucun effet sur la mise en veille.

Image La sécurité du poste de travail de l'entreprise n'est plus compromise.

Historique:

Version 1.0.0.1 - 20171028
                                           - Première Release Publique

Plateformes supportées:
Windows 7 et versions supérieures

Usage:
ScreenSaverFakeInputs [options]
Aide en ligne:
ScreenSaverFakeInputs x64 v1.0.0.1 (c) 2017 Gilles LAURENT
Prevents fake inputs to interfere with the screensaver timeout
Usage : ScreenSaverFakeInputs [options]
Options :

-allow      Allows fake inputs to prevent the screensaver from timed-out
-debug      Executes ScreenSaverFakeInputs in debug mode
-delete     Removes policy
-drop       Drops virtual inputs
-state      Returns the fake inputs protection state

Examples :

    ScreenSaverFakeInputs -drop
Téléchargement:
Guide PDF: -
Archive: ssfip.zip

Dernière mise à jour : ( 28-10-2017 )