概要
自分が離席中に、誰かが PC にログインしたかどうかを、特別なソフトを一切使わずに、Windows の基本機能のみで解消する方法があります。
Windows に標準搭載されている “イベントビューアー” と “タスクスケジューラ” を使い侵入検知システムを自作するものです。
この記事では、Windows への不正なサインイン (パスワード間違いなど) が試みられた瞬間に、デスクトップに警告ポップアップをリアルタイムで表示させる、方法を記載しました。
※この記事で紹介する設定は、Windows のシステム動作に深く関わります。設定を間違えると、意図しない動作を引き起こす可能性もゼロではありません。必ず自己責任で実行してください。
イベント 4625 について
まず、「何が起きたら」通知を出すか、その”引き金”を決めます。今回は “サインインの失敗” を検知し、ポップアップを出す仕組みです。
Windowsは、PC 上で起きたほぼ全ての出来事を “イベント” として記録しています。サインインの失敗も、実はしっかりと記録されているのです。
- イベントID: 4625
- 内容: アカウントのログオンに失敗しました。
この “イベントID: 4625” を使い、このイベントが発生したことを Windows 自身に監視させます。

監査ポリシーを有効にする
管理者として実行したコマンドプロンプトまたは PowerShell で、以下のコマンドを実行します。
これにより、サインインの “成功” と “失敗” の両方を記録 (監査) するように設定します。
auditpol /set /category:"ログオン/ログオフ" /success:enable /failure:enable

タスクスケジューラの設定方法
“タスクスケジューラ” を使い、イベント ID 4625 を常に監視し、検知したらポップアップを起動させます。
1.Window sキー + R キーを同時押しし、[ファイル名を指定して実行] にて taskschd.msc と入力してタスクスケジューラを起動します。

2. 右側の操作ペインから”タスクの作成”をクリックします。

3. [全般] タブにて、名前に “不正ログイン検知アラート” など、分かりやすい名前を付けます。

4. [トリガー] タブにて、[新規] ボタンをクリックします。

5. [タスクの開始] を [イベント時] に設定し、”設定” を [カスタム]、”新しいイベントフィルター” をクリックします。

6.[XML] タブを選択し、[手動でイベントを選択する] にチェックを入れます。
※その際、警告画面が出ますが、[はい] をクリックします。

7. 以下のコードを貼り付け、右下の [OK] をクリックします。
これが “イベントID 4625だけを監視する” という命令になります。
<QueryList>
<Query Id="0" Path="Security">
<Select Path="Security">*[System[EventID=4625]]</Select>
</Query>
</QueryList>

8.次に [操作] タブから [新規] をクリックします。

9. “新しい操作” 画面では、”プログラム/スクリプト” にて “powershell.exe” と入力し、”引数の追加 (オプション)” には以下コマンドを入力します。
その後、[OK] をクリックします。
-ExecutionPolicy Bypass -Command "& {[System.Reflection.Assembly]::LoadWithPartialName('System.Windows.Forms'); [System.Windows.Forms.MessageBox]::Show('警告:アカウントへの不正なサインインが試行されました!', 'セキュリティ警告', [System.Windows.Forms.MessageBoxButtons]::OK, [System.Windows.Forms.MessageBoxIcon]::Warning)}"

10. すべて完了後、[OK] をクリックします。

11. テストします。PC を一回ロックし 、間違ったパスワードを入力します。その後、正しいパスワードを入力し、ロックを解除します。
“セキュリティ警告” と Powershell 画面が出ます。これらは閉じて問題はありません。

※一点注意があり、 “ユーザーがログオンしているときのみ実行する” 設定のため、この通知機能は PC 起動直後の、誰もログオンしていない状態でのサインイン失敗は検知してポップアップを表示することができません。
あくまで、1回ログインした PC で誰かが、本当に悪意があって利用した時にのみ使うことができる手法です。
PC のロックは必ずしよう
PCのスクリーンロックは、情報資産を保護するための最も基本的なセキュリティ対策の一つです。オフィスでの離席時や公共の場での利用中にこの操作を怠ると、以下に示すような重大なリスクに繋がる可能性があります。
不正操作および、なりすまし行為
スクリーンロックがされていないPCを第三者が操作可能な状態にあることは、正規の利用者になりすまして行動されるリスクを内包します。ブラウザやアプリケーションに保存された認証情報を用いて、社内の業務システムやクラウドサービスへ不正にアクセスされる可能性があります。 これにより、利用者の権限で機密情報の閲覧や改ざんが行われるだけでなく、チャットツールや電子メールを用いて本人になりすましたメッセージが発信され、組織全体の信用を損なう事態も想定されます。
機密情報および個人情報の漏洩
PC内部に保存されている顧客情報、技術資料、経理データといった機密情報や個人情報が、窃取・漏洩する危険性が高まります。 第三者による不正な操作は、単に情報を盗み見るだけでなく、USBメモリ等の外部記憶媒体へデータをコピーされたり、インターネット経由で外部へ送信されたりする可能性があります。情報が一度外部へ流出すれば、その拡散を完全に防ぐことは極めて困難です。
デバイスの制御権喪失(乗っ取り)
第三者がPCを不正に操作し、OSのパスワードや設定を変更することで、デバイスそのものが乗っ取られるリスクが考えられます。 正規の利用者だけが知る新たなパスワードを設定されてしまった場合、本来の持ち主であるにもかかわらず、自身のPCへアクセスできなくなります。これにより業務が完全に停止するだけでなく、デバイスの制御権を取り戻すために多大な時間とコストを要する可能性があります。
PCの紛失・盗難時における被害の甚大化
万が一、ノートPC等の紛失や盗難が発生した場合、スクリーンロックの有無が被害の大きさを決定的に左右します。ロックがされていない状態では、第三者は何ら障壁なく内部の全データにアクセスできます。 この状態は、前述した情報漏洩や不正操作のリスクを最大限に高め、企業の信用の失墜、取引先や顧客からの損害賠償請求、ひいては事業継続そのものに重大な影響を及ぼす最悪の事態に発展しかねません。
意図しない誤操作の発生
セキュリティ上の脅威とは性質が異なりますが、キーボード上に物が置かれた、あるいは子供やペットが誤って触れたといった不測の事態により、意図しない操作が発生する可能性があります。 これにより、重要なファイルが削除されたり、設定が不用意に変更されたりするなど、業務上の混乱を招く原因となり得ます。スクリーンロックは、このような物理的な誤操作を防ぐ上でも有効な手段です。
また、IPA も同様に日常における情報セキュリティ対策の1つとして、PC のロックを挙げています。
そのため、日々の生活で PC のロックは習慣づけましょう。
8.パソコン等の画面ロック機能の設定
日常における情報セキュリティ対策 | 情報セキュリティ | IPA 独立行政法人 情報処理推進機構 より引用
第三者に見られたり、操作されたりしないようパソコンやスマートフォン等には画面ロックを設定してください。席を離れる際、パソコンは画面ロックをかけましょう。また、スマートフォンは放置しないようにしてください。