第27章 これは訓練です
- 山崎行政書士事務所
- 5月7日
- 読了時間: 17分
午前七時二十二分。
その通知は、出勤前の社員たちのスマートフォンに届いた。
SafetyBoard通知本日 08:00 より全社避難訓練を実施します。東側定温エリア、倉庫西側ライン、事務棟二階は、訓練対象区域です。警報が鳴った場合も、訓練手順に従ってください。
三枝涼真がその通知を見たのは、第三会議室へ向かう廊下だった。
足が止まった。
訓練?
聞いていない。
三枝は、すぐに通知の詳細を開いた。
送信元は、SafetyBoard。件名は、全社避難訓練のお知らせ。送信者は、safety-drill-coordinator。
見慣れないアカウントだった。
三枝の背中に冷たいものが走った。
昨日、復帰指示を守った。火災警報への信頼を守った。非常用の鍵を再発行し、SafetyBoardの旧支援アカウントを止めた。
その翌朝に、訓練通知。
あまりにも、できすぎている。
三枝は走った。
第三会議室の扉を開けると、黒崎課長がすでに画面を見ていた。
「三枝、見たか」
「はい。訓練なんて予定されていません」
「総務にも確認中だ」
秋山法務総務部長が、別の電話を切った。
「総務では、本日訓練予定はありません。SafetyBoardからの正式配信にも見えますが、送信承認記録が見つかっていません」
望月社長が入ってきた。
「現場は?」
大石倉庫部長の声が、オンラインで割り込んだ。
「現場にも通知が届いてます。昨日の火災警報の翌日なので、かなり動揺しています。何人かが『今日は訓練なのか』と聞いてきています」
山崎行政書士事務所の山崎が、静かに言った。
「すぐに訂正通知を出す前に、確認しましょう。訂正通知も攻撃者が模倣する可能性があります」
三枝は、SafetyBoardの管理画面を開いた。
通知一覧。
そこに、確かにあった。
全社避難訓練のお知らせ送信時刻、午前七時二十二分。送信者、safety-drill-coordinator。状態、送信済み。承認、Training Mode Auto-Approval。
三枝は、唇を噛んだ。
「訓練モードの自動承認です」
黒崎が顔をしかめた。
「そんなものが残っていたのか」
秋山が資料を開いた。
「一昨年の避難訓練時、訓練通知を迅速に配信するために、事前登録された訓練テンプレートは総務承認なしで送れる設定がありました」
山崎が、ホワイトボードに書いた。
訓練モード
その下に、続けた。
訓練通知は、本番の行動を変える。
久我真琴がオンラインで言った。
「昨日は“戻ってよい”でした。今日は“これは訓練です”です。攻撃者は、警報への反応を逆方向から壊しに来ています」
望月が、低い声で言った。
「つまり、本物の警報が鳴った時に、社員が訓練だと思う可能性がある」
「はい」
山崎は答えた。
「だから、訂正の仕方が重要です。単に『誤通知でした』では足りません。今日、警報が鳴った場合はすべて本番として扱う、と明確に出す必要があります」
三枝は、時系列表を開いた。
07:22 SafetyBoardより全社避難訓練通知が配信。社内に本日訓練予定なし。送信者safety-drill-coordinator、承認Training Mode Auto-Approval。訓練モード悪用可能性。
保存。
画面右下に、小さく出る。
保存しました。
その文字を見ても、安心はできなかった。
訓練という言葉は、警報よりも危険な場合がある。
午前七時三十五分。
山崎は、訂正通知の文面をその場で組み立てた。
「最初に、訓練予定がないこと。次に、本日警報が鳴った場合は本番として扱うこと。三つ目に、復帰指示は昨日決めた三条件で確認すること。四つ目に、SafetyBoard単独の通知を信じないこと」
秋山が打ち込む。
【重要】本日、全社避難訓練の予定はありません。先ほどSafetyBoardから配信された避難訓練通知は、現在確認中です。本日、火災警報・避難指示・設備警報が発生した場合は、訓練ではなく実対応として扱ってください。避難時は現場責任者の指示に従い、復帰時は「現場責任者の口頭指示」「設備確認表」「対策本部承認」の三点を確認してください。
大石が読んだ。
「現場向けには、これで分かります」
山崎が言った。
「送信経路は二重化します。SafetyBoardだけではなく、現場責任者の口頭、社内チャット、館内放送。攻撃者が一つの経路を模倣しても、他で確認できるようにします」
望月が頷いた。
「私の名前で出します」
山崎は確認した。
「社長承認として記録します」
三枝は、通知送信前の画面を保存した。
訂正通知の送信は、general-affairs-leadとwarehouse-safety-leadの二名承認。昨日、改修したばかりの復帰指示統制が、そのまま使われる。
送信。
数秒後。
送信完了
同時に、大石が倉庫内放送を入れた。
「本日、避難訓練はありません。警報が鳴った場合は本番として対応します。昨日確認した手順どおり、避難は必ず行ってください。復帰は、現場責任者の指示があるまで行いません」
倉庫内の空気が、少しだけ整った。
三枝は入力した。
07:38 望月社長承認のもと、本日訓練予定なし、警報発生時は実対応扱い、復帰三条件確認を明記した訂正通知をSafetyBoard・社内チャット・館内放送で発信。
保存。
山崎は、静かに言った。
「これで、訓練という言葉による混乱を少し抑えられます」
久我が続けた。
「ただし、攻撃者が次に本物の警報を鳴らす可能性があります」
誰も、それを否定しなかった。
午前七時五十八分。
SafetyBoardの訓練通知送信ログを確認すると、三枝は新しいアカウントに気づいた。
safety-drill-coordinator
作成日。
一昨年。
用途。
避難訓練支援。送信可能テンプレート。
Drill NoticeAll ClearAssembly Area Change
状態。
Active。
MFA通知先。
drill-safety@resilience-training.example
昨日確認した東海レジリエンストレーニングの旧メールだった。
三枝は、深く息を吸った。
「同じ訓練支援会社の旧メールです」
山崎が言った。
「訓練終了時の削除未了が、別アカウントにも残っていた」
三枝は頷いた。
「drill-support-2026だけではありませんでした」
久我が言った。
「訓練モード関係を全件抽出してください。アカウントだけでなく、テンプレート、自動承認、通知先、ダイジェスト、APIトークン」
黒崎がSafetyBoardの設定を開いた。
訓練モード設定。
Training Mode Auto-Approval: EnabledApproved templates: Drill Notice, Assembly Change, All ClearExternal drill coordinators: 3 activeDrill notification archive: Safety-Digest-Archive
黒崎が低く言った。
「三つ残っている」
山崎が聞いた。
「外部訓練支援者が三つActiveということですか」
「はい」
三枝は、非常用統制棚卸し表に追加した。
E-008 SafetyBoard訓練モード外部支援者E-009 訓練通知自動承認E-010 訓練テンプレート
状態。
緊急確認中
三枝は入力した。
07:59 SafetyBoard訓練モードに外部訓練支援者3アカウントがActive、Training Mode Auto-ApprovalがEnabled、Drill Notice等が自動承認対象であることを確認。訓練終了後の外部権限・テンプレート・自動承認削除未了。
保存。
訓練は終わっていた。
だが、訓練モードは終わっていなかった。
午前八時二十分。
東海レジリエンストレーニングとの緊急確認が再開された。
川端は、画面に映るなり頭を下げた。
「昨日のdrill-support-2026に続き、safety-drill-coordinatorについても弊社の訓練支援用アカウントです。契約終了後に削除されるべきでした」
山崎が聞いた。
「本日七時二十二分の訓練通知送信は、御社によるものですか」
「いいえ。弊社では実施していません」
久我が聞いた。
「drill-safetyメールの状況は」
川端は、苦しそうに答えた。
「旧メールボックスは残っていました。昨日の調査で停止準備をしていましたが、完全停止前でした。MFAメールの受信履歴があります」
「クリック履歴は?」
川端は、数秒沈黙した。
「あります。本日七時二十一分にクリックされています。アクセス元は、不審クラウドレンジです」
黒崎が、机を叩きそうになって止めた。
「昨日のうちに止めていれば……」
山崎が、すぐに言った。
「後悔と事実を分けます。昨日確認対象に入り、完全停止前に悪用された可能性。現在の優先は、全訓練支援アカウントと訓練モードの停止です」
望月が言った。
「保全後、停止してください」
三枝と黒崎は、すぐに作業した。
外部訓練支援者3アカウントの状態保全。権限一覧保全。MFA通知先保全。訓練モード設定保全。テンプレート一覧保全。
その後、停止。
safety-drill-coordinator: Disableddrill-support-2026: Disabledsafety-drill-reviewer: DisabledTraining Mode Auto-Approval: Disabled
三枝は入力した。
08:27 東海レジリエンストレーニング一次回答。本日07:21にdrill-safety旧メールのMFAリンククリック履歴あり。safety-drill-coordinatorによる07:22訓練通知送信は同社作業ではない旨。SafetyBoard外部訓練支援者3アカウントおよびTraining Mode Auto-Approvalを保全後停止。
保存。
午前八時四十五分。
Blue Heronからメールが届いた。
件名は、This is a drill。
本文は、短かった。
The best lie is the one you practiced.
最良の嘘は、あなたたちが練習した言葉だ。
その下には、SafetyBoardの訓練通知テンプレートが貼られていた。
本日 08:00 より全社避難訓練を実施します。
三枝は、保全しながら背筋が冷えるのを感じた。
訓練のために作った文面。社員に安心して訓練参加してもらうための文面。それが、攻撃者に使われた。
山崎が言った。
「訓練テンプレートも、非常用手順書と同じです。攻撃利用可能情報です」
秋山が頷いた。
「訓練終了後にテンプレートを削除または内部化する必要がありますね」
大石が言った。
「訓練文面をそのまま本番環境に残すのは危ない」
久我が言った。
「特に、社員に“これは訓練です”と思わせる文面は危険です。攻撃者が使うと、実対応を鈍らせます」
山崎は、ホワイトボードに書いた。
訓練の言葉は、攻撃者の言葉になる。
三枝は入力した。
08:45 不明差出人より件名“This is a drill”のメール受信。SafetyBoard訓練通知テンプレートを提示。“最良の嘘は、練習した言葉”と記載。訓練テンプレートが攻撃利用可能情報であることを確認。
保存。
午前九時三十分。
山崎は、訓練統制の整理を始めた。
訓練統制
一 訓練環境と本番環境を分ける二 訓練支援アカウントは期限付きにする三 訓練テンプレートは訓練後に無効化する四 訓練通知は本番通知と見分けられるが、攻撃者に模倣されにくい形式にする五 訓練終了時にアカウント、通知先、承認者、テンプレート、ログ、アーカイブを閉じる六 訓練中でも、本物の警報は本物として扱う七 訓練予定は必要範囲に限定共有し、外部支援者のアクセスを訓練後に削除する
大石が言った。
「訓練通知を見分けやすくするのは大事ですが、逆に攻撃者にも真似されませんか」
山崎は頷いた。
「はい。だから、見た目だけで判断しないようにします。訓練か本番かは、通知の文面ではなく、事前に承認された訓練予定、現場責任者指示、対策本部確認で判断します」
久我が続けた。
「訓練モードを攻撃者が使っても、本番扱いに倒す設計が必要です」
三枝は、現場カード案を更新した。
訓練通知が来ても、予定にない訓練は本番扱い警報が鳴ったら避難訓練かどうかは、現場責任者と対策本部が確認
大石は頷いた。
「これなら現場に伝わります」
山崎が言った。
「良いです。訓練という言葉より、安全行動を優先する」
三枝は、メモした。
予定にない訓練は、本番。
午前十時十五分。
訓練モード停止後、SafetyBoardで新たなログが検知された。
Training notice send attemptResult: blockedUser: safety-drill-coordinatorReason: account disabled
三枝は、画面を見た瞬間、手を止めた。
攻撃者が、もう一度送ろうとしている。
だが、止まった。
久我が言った。
「効いています」
黒崎が、深く息を吐いた。
「間に合ったな」
山崎が言った。
「失効後拒否ログと同じです。訓練モード停止が機能した証跡です」
三枝は入力した。
10:16 safety-drill-coordinatorによる訓練通知送信試行を検知。結果:account disabledによりblocked。訓練支援アカウント停止措置が有効に機能したことを確認。
保存。
その一行は、また少し明るかった。
攻撃者が戻ってきた。扉は開かなかった。
午前十時四十五分。
Blue Heronからメールが届いた。
件名は、Blocked。
本文は、一行だけ。
You are getting boring again.
また、つまらなくなってきた。
三枝は、保全しながら少しだけ笑った。
「つまらなくて結構です」
大石が画面越しに言った。
「現場も、つまらない方がいいです」
望月が頷いた。
「安全も、セキュリティも、つまらない方がいい時がありますね」
山崎が言った。
「平時の統制は、つまらないものです。しかし、非常時に会社を守ります」
三枝は入力した。
10:45 不明差出人より件名“Blocked”のメール受信。訓練通知再送信失敗に反応した可能性。“つまらなくなってきた”と記載。証跡保全。
保存。
午前十一時三十分。
SafetyBoardの訓練関連アカウントの棚卸しが完了した。
外部訓練支援者3件、停止。訓練通知自動承認、無効化。訓練テンプレート、内部管理へ移管。旧MFA通知先、停止。訓練ダイジェストボット、内部限定化。訓練アーカイブ、閲覧権限見直し。復帰指示承認者、内部責任者に限定。訓練終了チェックリスト、作成。
秋山が言った。
「訓練終了チェックリストにも、終了証明パックを使います」
山崎は頷いた。
「はい。ただし、訓練向けの軽量版を作りましょう」
三枝は作成した。
訓練終了証明パック
一 訓練支援アカウント削除二 訓練通知テンプレート無効化三 訓練モード停止四 外部支援者MFA通知先削除五 訓練資料・地図の共有範囲確認六 アーカイブ閲覧権限確認七 訓練ログ保存八 現場手順への反映有無確認
大石が言った。
「訓練が終わった後に、これをやるんですね」
山崎が答えた。
「はい。訓練は、終わった瞬間から未了を生みます。だから、終わり方を決めます」
三枝は、その言葉を入力した。
訓練は、終わった瞬間から未了を生む。
保存。
午後零時四十分。
社員向けの注意喚起が出された。
本日朝、SafetyBoardから避難訓練通知が配信されましたが、本日訓練予定はありません。今後、予定にない訓練通知を受けた場合は、本番の可能性があるものとして現場責任者へ確認してください。火災警報や避難指示が発生した場合は、訓練かどうかにかかわらず、まず安全行動を取ってください。
社員からの反応は、昨日より落ち着いていた。
「了解しました」「予定にない訓練は本番扱い、覚えました」「現場カードを掲示します」「SafetyBoardだけで判断しないようにします」
三枝は、その反応を見て、少し安心した。
攻撃者は、訓練という言葉で混乱を作ろうとした。だが、会社はそれをルールに変えた。
予定にない訓練は、本番。
単純で、強い。
午後一時二十五分。
久我は、訓練通知を送信しようとした攻撃経路を追っていた。
safety-drill-coordinatorのMFAは、東海レジリエンストレーニングの旧メールで承認。そのメールは、旧訓練連絡用グループへ転送。転送先には、外部講師の個人メールが残っていた。その外部講師は、契約終了後にフリーランスとして別会社の訓練支援に関わっていた。
山崎が、静かに言った。
「訓練サプライチェーンですね」
三枝は、思わず顔を上げた。
通知サプライチェーン。業務地図サプライチェーン。設備通知サプライチェーン。そして、訓練サプライチェーン。
山崎は続けた。
「訓練には、外部講師、支援会社、地図、安否確認、テンプレート、訓練ログ、参加者名簿が関わります。訓練終了後にそれらを閉じなければ、攻撃者が訓練の言葉を使えます」
秋山が言った。
「外部講師の個人メールまで契約終了時に確認する必要がありますね」
「はい」
山崎は答えた。
「少なくとも、訓練システムの通知先・共有先から削除されていることを確認する必要があります」
三枝は、未了事項台帳に追加した。
U-156 訓練サプライチェーン管理未了
責任者。
秋山・大石・三枝
期限。
十四日以内に一次棚卸し
状態。
開始
保存。
午後二時三十分。
Blue Heronからメールが届いた。
件名は、Practice makes habit。
本文は、短い。
People obey what they practice.
人は、練習したことに従う。
三枝は、保全した。
山崎が言った。
「正しい指摘です。だから、正しい練習をする必要があります」
大石が頷いた。
「訓練で、“通知だけでは戻らない”を練習します」
久我が言った。
「訓練自体も攻撃想定に入れましょう。偽訓練通知、偽復帰指示、訓練モード悪用、外部講師アカウント悪用」
望月が言った。
「次回の避難訓練は、山崎先生と久我さんにも入ってもらいます」
山崎は頷いた。
「訓練計画と終了証明まで支援します」
三枝は、訓練計画案に新しい項目を入れた。
偽訓練通知対応訓練
内容。
予定にない訓練通知が届く。社員は本番扱いで現場責任者へ確認。対策本部は通知経路を確認。安全行動を優先。復帰指示は三条件。訓練終了後、外部支援アカウントを削除し、終了証明パックを作る。
山崎が、その案を見て言った。
「良いです。攻撃者が使った手を、次は防御側の練習にします」
三枝は頷いた。
攻撃者のシナリオを、防御の訓練に変える。
また一つ、会社が取り返した。
午後三時四十五分。
取締役会向けに、訓練モード悪用に関する報告が行われた。
望月は、説明した。
「本日朝、SafetyBoardの訓練モードを悪用したとみられる避難訓練通知が配信されました。当社は、訓練予定がないことを確認し、警報発生時は本番扱いとする訂正通知を複数経路で出しました」
取締役の一人が聞いた。
「訓練通知が出ただけで、実被害はあったのですか」
望月は答えた。
「現場の混乱がありました。さらに、本物の警報が発生した場合に訓練と誤認する危険がありました。これは人命安全に関わる重大なリスクです」
山崎が補足した。
「訓練モードは、通常の承認を省略するために設計されていました。本来は訓練運営の効率化が目的です。しかし、契約終了済み外部訓練支援アカウントと旧MFA通知先が残っていたため、攻撃者に悪用される可能性がありました」
監査役が言った。
「訓練も内部統制の対象ですね」
山崎は頷いた。
「はい。訓練は、統制の練習であると同時に、統制そのものです」
三枝は、その言葉を記録した。
訓練は、統制の練習であると同時に、統制そのもの。
午後五時。
SafetyBoardの全訓練系権限とテンプレートの改修が完了した。
訓練通知は、今後、事前登録された訓練計画IDと紐づかなければ送れない。訓練計画IDは、社長または総務責任者承認。外部支援者は、訓練期間中のみ有効。訓練終了時に自動失効。自動失効後、終了証明パックを生成。訓練テンプレートは、訓練終了後に本番環境から非公開化。復帰指示テンプレートは、確認条件必須。
三枝は、テストを実行した。
予定なしの訓練通知。
結果。
Blocked: No active drill plan
予定のない訓練通知は送れない。
三枝は、時系列表に入力した。
17:03 SafetyBoard改修完了。訓練通知は事前承認済み訓練計画ID必須、外部支援者は訓練期間限定、訓練終了時自動失効、終了証明パック生成、復帰確認条件必須化。予定なし訓練通知テストはNo active drill planでBlocked。
保存。
その一行も、明るかった。
午後六時十五分。
Blue Heronからメールが届いた。
件名は、No active drill plan。
本文は、一行。
You are learning to say no.
拒否することを覚えたようだ。
三枝は、保全しながら、静かに思った。
そうだ。
会社は、ようやく拒否できるようになってきた。
古い鍵を拒否する。失効した証明書を拒否する。旧通知先を拒否する。契約終了済みアカウントを拒否する。予定のない訓練を拒否する。戻ってよいという嘘を拒否する。
セキュリティとは、許可することだけではない。
正しく拒否することでもある。
山崎が、三枝の入力を見て言った。
「良い顔をしていますね」
三枝は少し笑った。
「No active drill planで、少し安心しました」
「拒否ログは、良い証跡です」
「はい」
三枝は入力した。
18:15 不明差出人より件名“No active drill plan”のメール受信。予定なし訓練通知拒否に反応した可能性。“拒否することを覚えた”と記載。証跡保全。
保存。
午後八時。
その日の最終会議で、大石は現場の反応を報告した。
「最初は、また何かあったのかと不安がありました。でも、“予定にない訓練は本番扱い”と“戻る前に三つ確認”は分かりやすいと言っています」
秋山が言った。
「社員からも、訓練通知の見分け方を知りたいという質問が来ています」
山崎が答えた。
「見分けるのではなく、確認する、で統一しましょう。見た目は偽装できます。確認経路は統制できます」
望月は頷いた。
「その表現で社内FAQを更新してください」
三枝は入力した。
社内FAQ更新方針:訓練通知を見た目で見分けるのではなく、承認済み訓練計画、現場責任者、対策本部で確認する。
保存。
久我が言った。
「攻撃者は、訓練の言葉を使いました。次は、もしかすると監査、点検、保守、演習、試験、リハーサルという言葉を使うかもしれません」
山崎が頷いた。
「これらは、会社に“本番ではない”と思わせる言葉です」
三枝は、ホワイトボードに書いた。
本番ではないと言う言葉ほど、本番確認する。
望月が、それを見て言った。
「それも社内標語にしましょう」
大石が笑った。
「標語が増えますね」
山崎は、淡々と答えた。
「必要なら増やしましょう」
会議室に、少しだけ笑いが戻った。
午後十時十分。
三枝は、一人でSafetyBoardのログを見ていた。
今日の朝の偽訓練通知。訂正通知。訓練モード停止。再送信ブロック。改修後テスト。No active drill plan。
ログは、一日分の会社の学習を示していた。
攻撃者が、訓練という言葉を使った。会社は、確認という行動で返した。攻撃者が再送しようとした。会社は拒否した。攻撃者が挑発した。会社は記録した。
三枝は、自分のノートに書いた。
訓練は、攻撃者にも学習される。だから、防御側は訓練の後始末まで訓練する。
保存。
山崎が、それを見て言った。
「今日のまとめですね」
三枝は頷いた。
「はい」
山崎は、少しだけ微笑んだ。
「山崎行政書士事務所の資料にも、使わせていただきたいくらいです」
「宣伝ですか」
「啓発です」
三枝は笑った。
「どうぞ」
山崎は、真面目に頷いた。
「ありがとうございます」
午前零時。
三枝は、時系列表の最後に入力した。
00:00 SafetyBoardにおける偽避難訓練通知について、契約終了済み災害訓練支援アカウントsafety-drill-coordinator、旧MFA通知先drill-safety、Training Mode Auto-Approval、外部訓練支援者3件、訓練通知自動承認、訓練ダイジェストボット外部メンバー残存を確認。外部訓練支援者停止、訓練モード無効化、訓練計画ID必須化、予定なし訓練通知ブロック、訓練終了証明パックを開始。
保存。
画面右下。
保存しました。
三枝は、自分のメモにも一行追加した。
予定にない訓練は、本番。本番ではないと言う言葉ほど、確認する。
保存。
第三会議室の外では、倉庫が静かに動いている。
今日は訓練ではなかった。だが、会社はまた一つ訓練した。
攻撃者が用意した嘘を、会社は本番の防御に変えた。
次に「これは訓練です」と言われても。
会社は、まず確認する。必要なら走る。戻る時は、三つ確認する。そして、終わった後に鍵を閉じる。





コメント