LoginSignup
3
1

More than 1 year has passed since last update.

【BSOD】Windowsで意図的にブルースクリーンを発生させる方法5選

Posted at

本記事の対象者

・ダンプファイルの解析をする目的で、意図的にブルースクリーンを発生させたい人
・セキュリティ関連の技術者で、どうしたらWindowsでブルースクリーンが発生してしまうのか知りたい人
Microsoftに恨みがあって、WindowsをBSODにしてやりたい人

他人のコンピューターでBSODを発生させると、刑事・民事上の責任を問われる可能性があります。必ず仮想環境で実行してください。

方法1. 重要なプロセスを〇す

Windowsの続行が困難な程重要なプロセスが強制終了された場合、BSODになります。

具体的には、「wininit.exe」「ntoskrnl.exe」「svchost.exe」などです。

bsod.bat
taskkill /IM:svchost.exe /F

通常のWindows環境では「wininit.exe」などをセキュリティ上の理由で強制終了できない場合があるらしいです。

方法2. システム破壊

WindowsディレクトリのSystem32あたりを管理者権限で削除して再起動すると、ブルースクリーンになります。

bsod.bat
rem 注意: 管理者権限で実行しないとアクセス拒否されてブルースクリーンになりません
rd /s /q %systemroot%/System32/

ただし、実行には時間がかかる上に復旧するにはOSを再インストールする他ないので、あまりオススメしません。

方法3. 開発者用の方法を使う

以下のレジストリに「CrashOnCtrlScroll」という名前の32ビットキーを作り、値を「1」とします。

HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\kbdhid\Parameters

OSを再起動し、キーボードの右側のCtrlを押しながら「Scroll Lock」を2回押すとブルースクリーンになります。
ただし、右Ctrlの無いキーボードを使っている場合には実行できません。ご注意を。

方法4. 脆弱性(バグ)を利用する

ブラウザから、以下のURLを開くとBSODが発生します。

\\.\globalroot\device\condrv\kernelconnect

以下、 https://security.srad.jp/story/21/01/19/1922232/ から引用

問題のパスは「\.\globalroot\device\condrv\kernelconnect」というもので、先日NTFSの脆弱性を公表して話題になったJonas Lykkegaard氏が昨年10月、BSoDを引き起こす方法としてさらっとツイートしていた。当時は特に注目されなかったが、NTFSの脆弱性公表に伴って発掘されたようだ。このパスはコンソールドライバー(condrv.sys)を示すWin32デバイス名前空間パスだが、Lykkegaard氏はカーネルモード/ユーザーモードのプロセス間通信に使うものだと考えているという。このパスを使用するには属性の付加が必要だが、属性を付加しないでアクセスした場合に適切なエラーチェックが行われず、BSoDが発生するとのこと。

私の手元のEdge環境では、「ファイルが見つかりません」となってしまい、実現できませんでしたが、2021年の2月ごろまでのビルドのWindowsであれば実現できるらしい。(根拠無し)

方法5. 外部アプリを使う

「NotMyFault」と呼ばれる、意図的にブルースクリーンを発生させるアプリを利用すればクリック一回でBSODを出せます。

こちらはエラーの種類や、ブルースクリーンの色を変更できる(もはやブルースクリーンじゃないんだが)ので便利です。

最後に

BSODを発生させると、メモリーの内容が自動的に「%systemroot%\MEMORY.DMP」に保存されます。
あとは、このファイルを外部のツールなどで解析してください。

3
1
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
3
1