Prendre une photo après avoir entré un mauvais mot de passe

15

Existe-t-il un moyen pour un ordinateur portable exécutant Windows 7 de prendre une photo à l'aide de la webcam après avoir entré le mauvais mot de passe utilisateur?

Tour
la source

Réponses:

10

Vous voudrez peut-être vérifier le gestionnaire de connexion KeyLemon . C'est la seule solution que j'ai trouvée proche de ce dont vous avez besoin. Fonctionne sur XP, Vista, 7 et 8. Malheureusement, cette fonctionnalité n'est présente que dans la version payante.

Depuis la page produit:

Suivi des pirates de l'air

Avec la fonction de suivi des pirates de l'air, vous pouvez voir des photos de:

  • qui était devant votre ordinateur avant le verrouillage automatique des fenêtres
  • qui a tapé un mauvais mot de passe lorsque l'ordinateur était verrouillé

Avis de non-responsabilité: je ne suis en aucun cas lié au produit ou à la société.

Ce gars brésilien
la source
5

Quelle question cool. Voici ma solution (inspirée en partie par la réponse de Keltari):

Exigences

  • Une version quelque peu récente de Windows (probablement Vista ou version ultérieure)
  • Un périphérique vidéo compatible DirectShow (probablement tout ce que Windows reconnaît comme un appareil photo, etc.)
  • ffmpeg.exe ( http://ffmpeg.org/ )

snapshot_login_failure.cmd (placez-le dans un dossier avec ffmpeg.exe)

@echo off

:: Get date and time independent of regional settings. Source: http://stackoverflow.com/questions/203090/how-to-get-current-datetime-on-windows-command-line-in-a-suitable-format-for-us
for /F "usebackq tokens=1,2 delims==" %%i in (`wmic os get LocalDateTime /VALUE 2^>NUL`) do if '.%%i.'=='.LocalDateTime.' set ldt=%%j
set datetime=%ldt:~0,4%_%ldt:~4,2%_%ldt:~6,2%_%ldt:~8,2%_%ldt:~10,2%_%ldt:~12,2%

:: Capture snapshot through DirectShow using FFmpeg and save to disk. Change name of video adapter and save path.
ffmpeg.exe -f dshow -i video="USB 2.0 UVC HD Webcam" -vframes 1 E:\snapshot_%datetime%.jpg

snapshot_login_failure.xml (importez-le en tant que tâche du planificateur Windows)

<?xml version="1.0" encoding="UTF-16"?>
<Task version="1.3" xmlns="http://schemas.microsoft.com/windows/2004/02/mit/task">
  <RegistrationInfo>
    <Date>2013-07-06T23:32:34.0732602</Date>
    <Author>Zoe\Zero3</Author>
  </RegistrationInfo>
  <Triggers>
    <EventTrigger>
      <Enabled>true</Enabled>
      <Subscription>&lt;QueryList&gt;&lt;Query Id="0" Path="Security"&gt;&lt;Select Path="Security"&gt;*[System[Provider[@Name='Microsoft-Windows-Security-Auditing'] and EventID=4625]]&lt;/Select&gt;&lt;/Query&gt;&lt;/QueryList&gt;</Subscription>
    </EventTrigger>
  </Triggers>
  <Principals>
    <Principal id="Author">
      <UserId>S-1-5-19</UserId>
      <RunLevel>LeastPrivilege</RunLevel>
    </Principal>
  </Principals>
  <Settings>
    <MultipleInstancesPolicy>IgnoreNew</MultipleInstancesPolicy>
    <DisallowStartIfOnBatteries>false</DisallowStartIfOnBatteries>
    <StopIfGoingOnBatteries>true</StopIfGoingOnBatteries>
    <AllowHardTerminate>true</AllowHardTerminate>
    <StartWhenAvailable>false</StartWhenAvailable>
    <RunOnlyIfNetworkAvailable>false</RunOnlyIfNetworkAvailable>
    <IdleSettings>
      <StopOnIdleEnd>true</StopOnIdleEnd>
      <RestartOnIdle>false</RestartOnIdle>
    </IdleSettings>
    <AllowStartOnDemand>true</AllowStartOnDemand>
    <Enabled>true</Enabled>
    <Hidden>false</Hidden>
    <RunOnlyIfIdle>false</RunOnlyIfIdle>
    <DisallowStartOnRemoteAppSession>false</DisallowStartOnRemoteAppSession>
    <UseUnifiedSchedulingEngine>false</UseUnifiedSchedulingEngine>
    <WakeToRun>false</WakeToRun>
    <ExecutionTimeLimit>PT1H</ExecutionTimeLimit>
    <Priority>7</Priority>
  </Settings>
  <Actions Context="Author">
    <Exec>
      <Command>E:\snapshot_login_failure.cmd</Command>
      <WorkingDirectory>E:\</WorkingDirectory>
    </Exec>
  </Actions>
</Task>

Remarques

  • Vous devez ajuster le nom de l'appareil et les chemins d'accès en fonction de votre système. Peut-être que les comptes d'utilisateurs dans le fichier de tâches aussi.
  • Vous devrez peut-être activer la journalisation des connexions ayant échoué pour les événements d'échec de connexion Windows 7 inexistants?
  • L'événement d'échec de connexion se déclenche après avoir cliqué sur OK dans la boîte de dialogue "Nom d'utilisateur ou mot de passe incorrect bla bla" et pas immédiatement après avoir entré des informations de connexion non valides
  • Il y a un délai notable s'il est déclenché tôt après l'affichage de l'écran de connexion pendant le démarrage (lorsque Windows démarre toujours des services et que le système est lié aux E / S)
Zero3
la source
Consultez la réponse @ TimberWolf2016 ( superuser.com/a/1072012/235441 ) si vous rencontrez des problèmes avec cette approche.
Zero3
4

Désolé d'avoir relancé un vieux fil, mais je poste cela comme une aide pour quiconque trébuche à ce sujet à l'avenir ..

Le processus de Zero3 a fonctionné pour la plupart, et beaucoup de cudos pour lui! Mais, je ne l'ai fait fonctionner qu'après avoir activé la journalisation des tentatives de connexion infructueuses, puis fait un clic droit sur l'ID d'événement dans les journaux et sélectionné "attacher une tâche à cet événement" au lieu d'importer la tâche via XML, probablement quelque chose à faire avec les autorisations, car je devais taper mon mot de passe administrateur pour créer la tâche.

Une autre chose, qui m'a paru étrange, est que la tâche qui a été déclenchée n'a pas reconnu le fichier .cmd en tant que programme / script. pour résoudre ce problème, j'ai créé un fichier .bat simple nommé run.bat dans le même répertoire avec le code ci-dessous, et j'ai plutôt demandé à la tâche de démarrer le fichier de commandes, et donc d'exécuter le .cmd.

Une sorte de façon hop-scotch pour le faire fonctionner, mais je suis très heureux de mon succès grâce à ce fil, et je suis tenté de faire un tutoriel vidéo sur ce processus :)

Merci beaucoup à tous!

Remarque: j'utilise Windows 10 Pro x64

Le code run.bat:

Start "" "C:\<filepath to .cmd>"
TimberWolf2016
la source
Merci pour vos commentaires! Ce serait probablement plus approprié comme commentaire (s) à ma réponse, mais je suppose que vous n'avez peut-être pas encore assez de représentants pour ajouter des commentaires. Je vais en ajouter un pour vous afin que les gens le remarquent!
Zero3
3

Oui, si vous connaissez Windows MSGINA, vous pouvez en théorie créer un événement de connexion personnalisé qui démarrera l'appareil photo sur l'ordinateur portable et prendra une photo et l'enregistrera dans un dossier personnalisé

Référence: http://technet.microsoft.com/en-gb/library/bb742447.aspx

Élitisme
la source
2
Notez que GINA n'est que XP et plus ancien, le Vista + est différent
Scott Chamberlain
3

une connexion non valide a un journal comme Event ID: 529dans le journal des événements de sécurité. Vous pouvez écrire un script qui surveille cet ID, puis exécuter une commande qui prendrait une photo ... mais vous ne savez pas comment faire la deuxième partie ...

Keltari
la source
1
Approche intéressante
That Brazilian Guy