Shikata Ga Nai

Private? There is no such things.

6-3:異常を見逃さない

Hello there, ('ω')ノ

サイバー攻撃の多くは、通常のシステム動作に紛れ込む形で進行するため、従来の手法では検知が難しくなっています。そのため、「いつもと違う動き(異常)」をいち早く察知する仕組みが求められます。

NISTサイバーセキュリティフレームワーク(NIST CSF)の「検知(Detect)」機能の中でも、ベースライン(Baseline)の設定は、異常な行動を特定するための重要な要素です。ベースラインとは、「正常な状態」を定義し、それを基準として異常を検出する手法です。


なぜベースライン設定が重要なのか?

1. 攻撃者は「通常の動作」に紛れて活動する

✅ サイバー攻撃は、目立つ形で行われることはほとんどない
通常のログイン、ファイルアクセス、データ転送に見せかけて侵入を試みる

🚨 事例:不正アクセスに気づかなかったケース
ある企業では、攻撃者が従業員のアカウントを乗っ取り、数週間にわたり機密データを少しずつ外部に送信していた。しかし、普段からデータ転送が行われていたため、異常として検知されず、被害が拡大した。

💡 「通常のデータ転送量」が把握できていれば、異常として検知できた可能性が高い!


2. 事前に「正常な動作」を把握することで、異常を自動検知できる

✅ ベースラインを設定することで、システムやユーザーの「正常な状態」を明確に定義
普段と異なる挙動が発生した際に、即座に異常を検知し、アラートを発生させる

🚨 例:ベースライン設定が有効だったケース
ある企業では、「通常の業務時間外(深夜や休日)のログインはほとんどない」というベースラインを設定していた。ある日、深夜に海外IPからVPN接続が試みられたため、自動的にアラートが発生。
👉 迅速な対応により、攻撃者の侵入を未然に防ぐことができた!

💡 普段の動きをベースラインとして設定することで、「異常」が明確になり、すぐに検知できる!


ベースラインの設定方法(3つのステップ)

① 監視対象の決定 – どのデータを基準とするか?

まず、「どのデータを基準にベースラインを設定するか」を決めます。以下のような要素が対象となります。

ログインの頻度・時間帯(通常の業務時間外のログインは異常とみなす)
ネットワークの通信量(通常のデータ転送量を超えた場合は異常)
アカウントのアクセス権限(通常の役職と異なる操作をした場合は異常)
システム設定の変更頻度(ファイアウォール設定の変更が頻繁に行われた場合は異常)

🚀 具体例

監視対象 ベースラインの例 異常の例
ログイン 平日9:00~18:00の間に実施 深夜や休日のログイン
データ転送 1日あたり500MB以下 1GB以上の転送が発生
アクセス権変更 月1回程度 突然、複数のアカウントが管理者権限を獲得

💡 まずは「普段の業務で発生する正常な範囲」を明確にすることが重要!


② ベースラインの設定 – 正常な範囲を数値化する

ベースラインを設定する際には、過去のデータを分析し、正常な範囲を数値化します。

過去3~6か月間のデータを収集し、平均値や最大・最小値を算出
標準偏差を計算し、異常値のしきい値を決定

🚀 例:データ転送量のベースライン設定 - 過去3か月のデータ転送量の平均値 → 300MB/日
- 通常の範囲(標準偏差を考慮) → 100MB~500MB/日
- これを超えた場合(500MB以上の転送が発生) → 異常としてアラートを発生させる

💡 単純に「異常=全てアラート」ではなく、通常の変動範囲も考慮することが大切!


③ 異常の検知ルールを設定し、リアルタイム監視する

ベースラインを設定したら、異常な動きを検知するためのルールを定め、リアルタイムで監視します。

SIEM(Security Information and Event Management)を活用し、自動的にログを監視
異常検知ルールを設定し、しきい値を超えた場合にアラートを発生
UEBA(User and Entity Behavior Analytics)を活用し、機械学習で異常を特定

🚀 異常検知の具体例

監視項目 異常ルール 対応
ログイン失敗 10回以上連続で失敗 アカウントをロック
データ転送 500MBを超えた場合 ネットワーク管理者に通知
システム変更 管理者以外が設定変更 即座に監査ログを作成

💡 機械学習を活用することで、「普段と違う動き」を自動的に検知できる!


ベースラインを活用した異常検知の成功事例

【成功事例1】内部不正の早期検知
ある企業では、「通常、営業部門の従業員は1日200MB程度のデータを転送する」というベースラインを設定していた。
ある日、営業部門の従業員が突然5GBのデータを転送したため、システムが自動アラートを発生。結果的に、退職予定の従業員が顧客データを持ち出そうとしていたことが判明し、被害を未然に防ぐことができた!

【成功事例2】ゼロデイ攻撃の検知
ファイアウォールの設定変更が通常「月1回」しか行われない企業で、ある日「1日に10回以上の変更」が記録された。調査したところ、攻撃者がファイアウォールの設定を変更し、外部との通信を確立しようとしていたことが判明。
👉 ベースラインを活用することで、「普段と違う動き」に即座に気づき、攻撃を阻止!


まとめ

ベースラインを設定することで、「通常の動作」と「異常な動作」を明確に区別できる
ログイン履歴、データ転送量、システム設定変更などをベースラインとして監視
異常値をリアルタイムで検知し、即座にアラートを発生させる
SIEM・UEBAを活用し、自動化することで検知精度を向上させる

Best regards, (^^ゞ