86 votes

Comment "casser" un système de manière convaincante pour un utilisateur non technique ?

Pour diverses raisons qui ne relèvent pas de la compétence de Super Utilisateur, j'ai été chargé de désactiver temporairement l'un de mes propres systèmes. J'ai le contrôle total de l'administration et je possède ce système. Il fonctionne sous Windows 7 SP1. Je veux faire ça bien - quelque chose de crédible, de contestable et d'artistique. J'ai jeté un coup d'œil à ces mais la plupart d'entre elles sont indéniables.

Idéalement, je voudrais quelque chose que je puisse déclencher à un moment programmé, et qui ressemble à une erreur matérielle - BSODs, redémarrages aléatoires et autres, ou problèmes de connectivité aléatoires. J'aimerais également être sournois et ne pas être sur le système lorsque cela se produit (j'ai quelques heures pour faire fonctionner le système, mais je préfère ne pas avoir à le faire). être au système lorsque l'enfer se déchaîne). Comment dois-je m'y prendre ? J'aimerais obtenir le semblant de au hasard des erreurs, assez souvent pour être gênantes, plutôt que de faire tomber le système. Je n'ai pas besoin qu'il passe l'épreuve d'un utilisateur technique, j'ai juste besoin qu'il soit aussi ennuyeux que possible.

Comment dois-je m'y prendre ?

61voto

That Brazilian Guy Points 6556

El interface de ligne de commande pour le DiskCryptor Le logiciel de cryptage de partition open source comprend un -bsod le wiki indique que le paramètre

Effacer toutes les clés en mémoire et génère un BSOD

(c'est moi qui souligne).

Vous pouvez utiliser Planificateur de tâches de Windows pour programmer son exécution à un moment donné, et il devrait générer un BSOD comme souhaité. Je n'ai pas testé cette solution, car je ne suis pas actuellement sous Windows, mais elle est censée fonctionner dans les versions 32 et 64 bits de Windows 2000, XP, Server 2003, Vista, Server 2008 et 7.

Mais ne vous arrêtez pas à cela :

Vous pouvez utiliser cet outil de redémarrage pour afficher des messages personnalisés à l'aspect cryptique qui demandent un redémarrage et l'effectuent après X secondes. Définissez X à une valeur vraiment faible. Définissez plusieurs événements dans le planificateur de tâches. Vous pouvez également utiliser un outil de redémarrage qui n'affiche aucun message, ou la fonction fonction d'arrêt intégrée .

Enfin, il y a aussi NotMyFault

Notmyfault est un outil que vous pouvez utiliser pour faire planter, bloquer et provoquer des fuites de mémoire du noyau sur votre système Windows. Il est utile pour apprendre à identifier et à diagnostiquer les pilotes de périphériques et les problèmes matériels, et vous pouvez également l'utiliser pour générer des fichiers de vidage d'écran bleu sur les systèmes qui se comportent mal.

20voto

DenDenDo Points 239

Un script d'AutoHotKey que j'utilisais souvent pendant les fêtes de dortoir pour empêcher les gens ivres d'abîmer mon PC tout en le laissant allumé pour la musique.

a::return
;...
; repeat for other lowercase letters
z::return
A::return
; repeat for other uppercase letters
Z::return
1::return
;...
0::return

f1::return
;...
f12::return

LButton::return
RButton::return
MButton::return
#::return
#r::return
Delete::return
Enter::return
^!Delete::return
^+Esc::return
Space::return
LWin::return
!f4::return
Up::return
Down::return
Left::return
Right::return

;hold appskey and press z and 9 to unlock
;picked those three because they are far away from each other and unlikely to be pressed simultaneously even when buttonmashing
appskey & z::
  If GetKeyState("9","P")
  Suspend
  ExitApp
return

Mettez-le en mode de démarrage automatique et l'ordinateur ne réagit à aucune entrée (tous les boutons sont remaniés pour ne rien faire, tout ce que vous pouvez faire est de déplacer la souris). La seule façon de résoudre ce problème est de redémarrer Windows en mode sans échec avec le démarrage automatique désactivé ou en connaissant la combinaison secrète.

Il y a une autre façon de procéder en utilisant :

f11::blockinput,on
f12::blockinput,off

Mais il peut nécessiter des privilèges d'administrateur (et peut donc être simplement choisi pour ne pas être exécuté lorsqu'il est demandé après un redémarrage), et il ne désactive pas Ctrl + Alt + Del .

18voto

Thomas Weller Points 5255

Et si Écran bleu ? Cet économiseur d'écran a fonctionné une fois sur le PC d'un collègue. Le crash était si convaincant que j'ai réinitialisé son PC pendant son absence. Je pensais lui faire une faveur en ne le laissant pas attendre le processus de démarrage :-)

Running Notmyfault /crash devrait également générer un BSOD. Veillez à configurer Windows pour qu'il ne redémarre pas, afin qu'il affiche réellement l'écran bleu.

Ce morceau de code C++ exécute 8 threads en priorité en temps réel, ce qui devrait provoquer un blocage du processeur à 100 %, même sur les processeurs i7 modernes. Vous ne pouvez rien faire d'autre que d'appuyer sur le bouton de réinitialisation.

void WasteTime()
{
    int priority = 15;
    ::SetThreadPriority(::GetCurrentThread(), priority);
    while (true)
    {
    }
}

int _tmain(int argc, _TCHAR* argv[])
{   
    ::SetPriorityClass(::GetCurrentProcess(), 0x100);
    for(int i=0; i<7; i++)
    {
        LPDWORD threadid = 0;
        ::CreateThread(NULL, 64*1024, (LPTHREAD_START_ROUTINE)&WasteTime, NULL, 0, threadid);
    }

    WasteTime();

    return 0;
}

13voto

Caleb Xu Points 1613

Eh bien, c'est quelque chose que l'on ne voit pas souvent sur SU. Pour mettre en scène un vrai BSOD sur un ordinateur, utilisez la fonction kbdhid clé de registre. L'article complet où j'ai trouvé cela est le suivant http://pcsupport.about.com/od/tipstricks/ht/makebsodxp.htm Notez que vous devez utiliser Ctrl + Scroll Lock pour déclencher le BSOD en suivant ces instructions. Ce n'est pas un problème, si vous associez cette fonction à celle du planificateur de tâches et à VBScript ou à d'autres scripts. En utilisant VBScript, vous pouvez simuler des pressions de touches. Ainsi, au moment où vous voulez que tout se passe, appelez un tel fichier VBScript, simulez la touche Ctrl + Scroll Lock et vous avez un BSOD. De plus, ce BSOD contient "MANUALLY_INITIATED" ou quelque chose de ce genre, mais un utilisateur non technique ne le remarquerait probablement pas.

Si vous voulez juste des petites erreurs matérielles ennuyeuses mais non fatales pour le système, vous pouvez probablement script avec VBScript pour désactiver les interfaces matérielles ici et là. J'ai personnellement joué avec des script qui activent et désactivent de manière répétée les verrous Num, Cap et Scroll, un autre qui ouvre et ferme de manière répétée le lecteur de CD, un autre qui ne laisse pas le lecteur de CD s'ouvrir, inverse la souris, change la disposition du clavier, change la profondeur de couleur, change la langue, etc. De tels script peuvent être trouvés assez facilement sur Internet (ou une compréhension de base du VBScript est tout ce qui est nécessaire). Notez qu'une fois qu'un tel script est activé, l'hôte script doit être terminé à partir du gestionnaire de tâches pour que les effets se dissipent, ou vous devez vous déconnecter/reconnecter ou redémarrer l'ordinateur. Faites preuve de prudence dans cette voie. Une fois que vous avez tous vos scripts, vos programmes BSOD ou tout autre élément que vous souhaitez déployer, il suffit d'utiliser la fonction de planification des tâches intégrée à Windows pour programmer l'exécution de ces éléments, puis de vous asseoir et de regarder.

9voto

DroBuddy Points 1

La connectivité pourrait être réalisée facilement avec quelques fichiers batch ; un pour ipconfig /release et un pour ipconfig /renew à des moments prédéterminés, programmés dans le planificateur de tâches de Windows. Il existe même une case à cocher dans la fenêtre "Créer une tâche", en bas à gauche, pour masquer la tâche !

SistemesEz.com

SystemesEZ est une communauté de sysadmins où vous pouvez résoudre vos problèmes et vos doutes. Vous pouvez consulter les questions des autres sysadmins, poser vos propres questions ou résoudre celles des autres.

Powered by:

X