製品コラム
セイテクエンジニアのブログ 製品コラム セキュリティ監視の基本-BOM for Windows活用例
2024年06月26日配信
2025年04月25日更新
執筆者:セイ・テクノロジーズ エバンジェリスト
社内の何者かが管理者のパスワードを盗み取ろうとしている、そんな兆候はイベントログに記録される監査ログを調べればいち早く察知できます。しかし、IT担当者がイベントログを常に監視するのは現実的ではありません。何を監視するべきかわかっているのなら、自立分散型サーバー監視ソフト「BOM for Windows ver.8.0 SR1(以下、BOM)」の強力で柔軟な監視機能にお任せください。BOMの「イベントログ監視」や「カスタム監視」機能を活用して、セキュリティ侵害の兆候や、IDの不適切な状態を効率よく監視しましょう。
Windowsが標準で備える監査ログ機能は、Active Directoryやローカルユーザーアカウントの使用状況を把握し、セキュリティ侵害の兆候をいち早く察知する手段として、古くからよく知られています。監査ログの有効化設定や、どのログに注目するべきかについては、以下のドキュメントが参考になるでしょう。監査ログは、既定で有効になっているものと、そうでないものがあるので、ドキュメントを参考に監査が必要な項目の監査ポリシーをドメインまたはローカルコンピューターで編集してください(画面1)。
Active Directory の侵害の兆候を監視する(Microsoft)
Windows イベント ログの監査ポリシーを構成する(Microsoft)
ログを活用した Active Directory に対する攻撃の検知と対策(PDF)(一般社団法人 JPCERT コーディネーションセンター)
画面1 必要十分な情報を取得できるように、監査ポリシーを適切に設定する
ログオン失敗や認証失敗関連で監視するべき監査ログとしては、表1のようなものがあります。重要な点は、監査ログの消去を監視することです。悪意のあるユーザーは、特権を得て不正な行為に及び、その痕跡を消すために監査ログや、その他のイベントログ(システムログなど)を削除するかもしれません。
監視対象 | イベントソース | イベントID | 説明 | レベル/キーワード |
ログオン | Microsoft-Windows-Security-Auditing | 4625 |
アカウントのログオンに失敗しました。 | 失敗の監査 |
Kerberos認証 | Microsoft-Windows-Security-Auditing | 4768 | Kerberos 認証チケット (TGT) が要求されました。 | 成功の監査/失敗の監査 |
Microsoft-Windows-Security-Auditing | 4769 | Kerberosサービスチケット(ST)が要求されました。 | 成功の監査/失敗の監査 | |
Microsoft-Windows-Security-Auditing | 4771 | コンピューターがアカウントの資格情報の確認を試行しました。 | 失敗の監査 | |
NTLM認証 | Microsoft-Windows-Security-Auditing | 4776 | コンピューターがアカウントの資格情報の確認を試行しました。 | 失敗の監査 |
ロックアウト | Microsoft-Windows-Security-Auditing | 4740 | ユーザー アカウントがロックアウトされました。 | 成功の監査 |
Microsoft-Windows-Security-Auditing | 4625 | アカウントのログオンに失敗しました。(失敗の原因: アカウントのロックアウト) | 失敗の監査 | |
ログの消去 | Microsoft-Windows-Eventlog | 1102 | 監査ログが消去されました。 | 成功の監査 |
Microsoft-Windows-Eventlog | 104 | <ログの種類> ログ ファイルが消去されました。 | 情報 |
表1 ログオンおよび認証関連で監視するべき監査ログ
監査ログの監視は、BOMに同梱されている「Windowsオプション¥セキュリティログ」テンプレート(監視設定「2001_セキュリティログ.cab」)をインポートすることで、すばやく開始することができます。BOM同梱のテンプレートには、表1に示す多くのイベントログ監視設定が定義済みとなっているため、インポートして監視を開始するだけで重要なセキュリティイベントを監視することができます(画面2)。
画面2 BOM同梱の「セキュリティログ」テンプレートをインポートするだけで、監査ログの監視を開始できる
ただし、BOM同梱の監視設定に、表1のすべてが含まれているわけではありません。含まれないものは、「イベントログ監視」項目を追加すればよいのです。画面3は、インポートした監視設定に、NTLM認証(ローカルアカウントのログオン認証)の失敗の監査を追加したものです。
画面3 NTLM認証の失敗(イベントID: 4776)のイベントログ監視設定を追加
別の監視グループを作成して、その中に、追加の監視設定を含めることもできます。画面4と画面5は、アカウントのロックアウトの監視と、イベントログの消去の監視を行う場合の設定例です。
アカウントのロックアウトは、複数回ログオンに失敗した場合に発生するものです。監査ログとしてはイベントID「4740」の「失敗の監査」として記録されますが、ロックアウトを原因とするログオンの失敗をイベントID「4625」として監視することを含めるとよいでしょう。ロックアウトを原因としないログオンの失敗と区別するためには、「イベント説明のテキスト検索」タブで「ロックアウト」というキーワードを設定します。
監査ログ(セキュリティログ)のクリアは、イベントID「1102」の「成功の監査」として記録されます。監査ログ以外のログ(システムやApplicationなど)については、イベントID「104」の「情報」として記録されます。いずれも、イベントソースは「Microsoft-Windows-Eventlog」であることに注意してください。
画面4 アカウントのロックアウトを監視するためのイベントログ監視の設定例
画面5 イベントログの消去を監視するためのイベントログ監視の設定例
「カスタム監視」を用いれば、独自の監視設定を追加することも可能です。そんな監視設定の例を1つ紹介しましょう。
大規模なActive Directoryでは、一定期間、使用されていないユーザーアカウントがセキュリティ問題の原因となる場合があります。例えば、退職した元社員のアカウントが簡単なパスワードや初期パスワードのまま残された状態は、アカウントが悪用されるリスクがあり、セキュリティ上問題があります。
次のPowerShellスクリプト「get-inactiveusers.ps1」は、ログオンに使用されたことはあるが、1年間(365日)非アクティブなアカウントの数を返すサンプルスクリプトです。1以上のアカウントが存在する場合は、$csvfileで指定したCSVファイルに一覧をCSV形式で出力もします。
[get-inactiveusers.ps1]
このサンプルスクリプトのパスを、BOMの「カスタム監視」で「powershell.exe」の引数として指定することで、1以上の非アクティブアカウントをリスト化することができます。リスト化したCSVファイルは、「メール送信」アクションでメールに添付して送付することもできます(画面6、画面7、画面8)。アカウントの監視結果が5分(既定の監視間隔)で増減するとは考えにくいので、30日おきなど監視間隔を長くするとよいでしょう。
画面6 PowerShellのサンプルスクリプトを「powershell.exe」の引数として指定する
画面7 サンプルスクリプトが出力するCSVファイルを「メール送信」アクションで添付して送信
画面8 メールで通知された非アクティブなActive Directoryユーザーのリスト
このように、BOM同梱のテンプレート(監視設定)をインポートすることで、すぐに監査ログの監視を開始でき、足りない監視設定は簡単に追加することができるほか、カスタム監視を用いて独自の監視設定を行うことも可能です。