20

В рамках задачи, связанной с несколькими операционными системами (тестирование целостности компьютера), мне нужно найти самый быстрый способ воспроизвести настоящий «синий экран смерти» (BSOD) на компьютере с Windows. Любая версия XP или более поздняя будет работать.

Как говорит Шинрай :

Таким образом, в основном вы пытаетесь сделать BSOD машиной настолько быстрым, насколько это возможно, но только один раз, и вы не можете прикоснуться к машине до того, как часы начнут работать?

Да, это именно то, что я пытаюсь сделать.

Мне интересно, есть ли простые команды или действия, которые приведут к тому, что Windows станет бесполезной и выплюнет синий экран. Любые указатели были бы очень полезны.

Ограничения:

  • Не могу написать скрипт / программу
  • Не могу связываться с оборудованием
  • Должен быть в состоянии сделать это в рамках Windows
  • Не может быть подделкой

Мне нужно иметь возможность загружаться в Windows, а затем воспроизводить BSOD на лету. Таким образом, аппаратные решения и решения с обязательной загрузкой хороши, но они не соответствуют этим правилам.


ВЫВОДЫ
Я прибыл на конкурс, готовый реализовать метод BSOD Шинрея. Оказалось, что не было никаких особых правил включения и выключения компьютера, только то, что вы не можете связываться с оборудованием. Я проверил свою клавиатуру - она была USB, поэтому я знал, какую клавишу редактировать. Нам сказали начать, и я быстро нашел и отредактировал ключ и перезагрузил. К счастью, это были голые компьютеры, и не нужно было запускать много служб, что приводило к довольно быстрой перезагрузке. Оглядевшись, я увидел, как люди возятся с реестром, но никто не перезагружал их компьютер. Я сделал комбинацию клавиш, и окна BOOM извергли прекрасный BSOD (то, что операционная система действительно хороша).

Я закончил тем, что выиграл, и у меня было только одно, что сказать: «Я счастлив, что еду домой на свою Linux-коробку».

Спасибо Shinrai за выигрышное решение!

3 ответа3

21

Фактически существует инструмент разработчика, встроенный в большинство версий Windows для генерации BSOD по команде. Вот как вы вызываете это в Windows 7 на клавиатуре USB или PS/2 (я полагаю, что это то же самое для XP/Vista на USB, хотя эта статья не говорит об этом, хотя я могу ошибаться):

Прежде чем клавиатура может вызвать сбой системы, необходимо убедиться в следующих трех настройках:

Если вы хотите, чтобы файл аварийного дампа записывался, вы должны включить такие файлы дампа, выбрать путь и имя файла и выбрать размер файла дампа. Для получения дополнительной информации см. Включение файла дампа в режиме ядра.

Для клавиатур PS/2 необходимо включить сбой, вызванный клавиатурой, в реестре. В разделе реестра HKEY_LOCAL_MACHINE\System\CurrentControlSet\Services\i8042prt\Parameters создайте значение с именем CrashOnCtrlScroll и установите для него значение REG_DWORD, равное 0x01.

На USB- клавиатурах необходимо включить сбой, вызванный клавиатурой, в реестре. В разделе реестра HKEY_LOCAL_MACHINE\System\CurrentControlSet\Services\kbdhid\Parameters создайте значение с именем CrashOnCtrlScroll и установите для него значение REG_DWORD, равное 0x01.

Вы должны перезагрузить систему, чтобы эти настройки вступили в силу.

После этого сбой клавиатуры можно инициировать с помощью следующей последовательности горячих клавиш: Удерживая крайнюю правую клавишу CTRL, дважды нажмите клавишу SCROLL LOCK.

Затем система вызывает KeBugCheck и выдает проверку на ошибку 0xE2 (MANUALLY_INITIATED_CRASH). Если аварийные дампы не были отключены, файл аварийных дампов записывается на этом этапе.

Если к аварийному компьютеру подключен отладчик ядра, то после записи файла аварийного дампа компьютер перейдет в отладчик ядра.

5

Это старая документированная техника. Должно работать как минимум до Vista:

Найти в regedit:

HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\i8042prt\Parameters\

Создайте ключ DWORD с именем CrashOnCtrlScroll и установите его значение равным 1.

...

Чтобы сгенерировать BSOD, удерживайте правый CTRL и дважды нажмите ScrollLock.

3

Вы можете включить инициируемые вручную сбои , выполнив эти изменения реестра.

Если BIOS может переключать адаптер жесткого диска вашей системы между собственным SATA и традиционным режимом ATA (и, возможно, IRRT), переключение в другой режим, в котором установлена Windows, обычно приводит к ошибке BOOT_VOLUME_INACCESSIBLE. Я уверен, что отключение ACPI (если это возможно в BIOS), когда Windows была установлена с включенным ACPI, также приведет к появлению синего экрана при загрузке.

winlogon.exe с помощью Process Explorer в Sysinternal приводит к появлению синего экрана, но это не традиционный экран "Обнаружена проблема, и Windows была закрыта для защиты вашего компьютера ...".

Это также может вас заинтересовать - BlueScreen Screen Saver от Sysinternals.

Всё ещё ищете ответ? Посмотрите другие вопросы с метками .