{USB Protection} – Protéger votre ordinateur à l’aide d’une clef USB

Coucou à tous,

 

Je suis très régulièrement confronté dans mon travail à des personnes qui trop souvent oubli de verrouiller leurs ordinateurs ...
Des ordinateurs qui je dois l'avouer contiennent des données sensibles  !!!
Alors je m'amuse à faire quelques gentilles blagues ..

  • Mettre un fond d'écran sexy
  • Passer le clavier d'Azerty en Qwerty
  • Inverser l'écran
  • Activer les options handicapés (Loupe, Clavier visuel, contraste, ...)

Mais ça ne suffit pas à vaincre les mauvaises habitudes.
Alors j'ai réfléchi ...

Mes idées

Plusieurs solutions me sont venus à l'esprit :

  • Utiliser la caméra de l'ordinateur et le verrouiller lorsque le visage n'est plus détecté
  • Créer un périphérique USB que l'on contrôle à distance par radio fréquence qui verrouille l'ordinateur
  • Créer une clé USB qui lorsqu'elle n'est pas branchée verrouille l'ordinateur

Mes expériences

Travaillant actuellement dans un service public en tant que prestataire, j'ai pu côtoyer de près une solution assez basique le verrouillage d'ordinateur avec une carte à puce et un mot de passe.
L'inconvénient d'une telle solution, c'est qu'il faut disposer du matériel nécessaire pour lire les cartes à puce, et donc dépenser de l'argent ... mais pas seulement il faut que tous les ordinateurs soient sur le même réseaux ... il faut un logiciel pour administrer tout ça ...

La solution

J'ai trouvé un truc payant nommé "Predator USB" ...
J'ai pu constater qu'il s'agit d'un exécutable, donc côté "code source" on ne sait pas vraiment ce que l'on installe ...

Personnellement je ne suis jamais trop rassuré d'installer des trucs que je ne connais pas sur mon PC
Alors j'ai décidé de me faire ma propre clé USB "predator" avec un code source ouvert  !Le principe de fonctionnement :

  1. Je branche ma clé USB sur un poste de travail
  2. J’exécute le script ".vbs" qui se trouve sur celle-ci
  3. Le script va continuellement contrôler si la clef USB est branchée.
  4. Si celle-ci n'est pas branchée, il verrouille automatiquement le poste de travail.

Le script fonctionnera jusqu'au redémarrage de l'ordinateur :
Cela permet de pouvoir utiliser la clef USB sur n'importe quel ordinateur sans installation ni persistance.

Product ID et Vendor ID

Chaque matériel qui est branché sur votre ordinateur contient un PID et un VID (Product ID et Vendor ID), ce sont des informations qui permettent à votre ordinateur d'identifier le matériel, l'équivalent de la marque et du modèle du véhicule.

C'est cette information que je vais utiliser pour détecter la clé USB.

Petite précision :
Il ne s'agit pas d'une solution de remplacement de votre mot de passe.
Il s'agit d'une solution qui permet de verrouiller votre ordinateur facilement.
Si vous accrochez la clef USB à votre téléphone, croyez-moi vous n'oublierez jamais de la débrancher de l'ordinateur ;)

 

Le Script

 

Pour les anglophones les indications sont dans l'entête du script.
Pour les autres mes petits francophones ;)
Il vous faut tout d'abord copier ce script sur votre clé USB sous le nom de "protection-dyrk.vbs"
Ensuite, il vous faut éditer le script et laisser vide la variable REF_UID 

REF_UID = ""

Assurez-vous de n'avoir aucune autre clef USB de branché sur l'ordinateur.
Lancez le script ....
Vous devriez voir apparaître ceci

Il s'agit du "Product ID" et du "Vendor ID" de la clef USB (ci-dessus il s'agit d'un exemple, les vôtres seront bien entendu différent  ;)
Notez bien cette information car vous aurez ensuite à la mettre dans la variable REF_UID 

REF_UID = "05DC-A81D"

Vous êtes à présent prêt à utiliser la clef !
Il vous suffit de relancer le script  !

 

 

Et voilà, ce script va contrôler que la clef USB.
Si votre clé USB est débranchée votre session va automatiquement se verrouiller.
Si quelqu'un déverrouille votre session et que la clé n'est toujours pas branchée ... la session va se reverrouiller.
Voici le code :

'	
'
' Usb Windows Locker
' Dyrk.org
' 2018 - 2019
'
' 1) Copy this script on Usb Key
' 2) Set REF_UID's variable in the script to ""
' 3) Start the script
' 4) Put the displayed PID/VID in the REF_UID's variable
' 5) The key is ready Start the Script
'
'
'

Option Explicit
Dim oWMISrv, collDvcs, collUSBDvcs, iUSBDvc , iDvc, sDvcID, sPID, sVID,Content,UID, REF_UID,objShell,stopV

REF_UID = ""
'REF_UID = "05DC-A81D"
stopV = True

Function ReplaceX(ByVal sValue, ByVal sPattern, ByVal sNValue)
Dim oReg : Set oReg = New RegExp
oReg.Pattern = sPattern
ReplaceX = oReg.Replace(sValue, sNValue)
Set oReg = Nothing
End Function

if REF_UID <> "" then
Wscript.Echo "Protection is running"
End if

While 1 = 1 and stopV <> False
Content = ""
Set objShell = WScript.CreateObject("WScript.shell")
Set oWMISrv = GetObject("winmgmts:\\.\root\cimv2")
Set collDvcs = oWMISrv.ExecQuery("Select * From Win32_USBControllerDevice")
For Each iDvc In collDvcs
If InStr(iDvc.Dependent, "VID_") Then ' Except keychain drives
sDvcID = ReplaceX(iDvc.Dependent, ".*""(.*)""", "$1")
sPID = ReplaceX(sDvcID, ".*PID_([^\\]*).*", "$1")
sVID = ReplaceX(sDvcID, ".*VID_([^&]*).*", "$1")
Set collUSBDvcs = oWMISrv.ExecQuery("Select * From Win32_PnPEntity Where DeviceID = '" & sDvcID & "' and Description like '%mass%'")
For Each iUSBDvc in collUSBDvcs
UID = sVID & "-" & sPID
if (REF_UID = "" or UID = REF_UID) Then
Content = Content & " Name : " & iUSBDvc.Description & vbCrLf
Content = Content & " PID/VID : " & UID & vbCrLf
Content = Content & String(80, "-") & vbCrLf
End if
Next
Set collUSBDvcs = Nothing
End If
Next
if REF_UID <> "" and Content = "" Then
objShell.run "cmd /c rundll32.exe user32.dll,LockWorkStation"
ElseIf Content <> "" and REF_UID = "" then
Wscript.Echo Content
stopV = False
Else
'Wscript.Echo "Ok"
end if
Wend


Set objShell = Nothing
Set collDvcs = Nothing
Set oWMISrv = Nothing

 

Conclusion

J'espère que ce script vous sera utile, je me suis amusé à le développer en tout cas.
Surtout, comme je l'ai dit plus haut, il ne s'agit pas de remplacer votre mot de passe par cette option (qui est assez simple à contourner pour une personne expérimentée), il s'agit de mettre en place un outil qui verrouille ou vous fait penser à verrouiller votre session.
Ce genre de petit projet est assez simple, mais je pense qu'il est assez utile.
C'est un moyen efficace de mettre sans gros moyens, certains réflexes en entreprise ou chez soi.
En attendant, je vous souhaite à tous une excellente journée et je vous dis à bientôt !

 

 

5 comments

Répondre à Shoooryuken Annuler la réponse

Votre adresse e-mail ne sera pas publiée. Les champs obligatoires sont indiqués avec *

Ce site est protégé par reCAPTCHA et le GooglePolitique de confidentialité etConditions d'utilisation appliquer.