AIによるログ解析。元のログと照合する手順と、人が判断する範囲。黒い背景に、重なったガラスの板から紫の光が伸び、虫眼鏡に届いている。

AIセキュリティAIを使った防御

AIによるログ解析・異常検知|元ログとの照合と人が判断する範囲

AIログ解析は、AIに大量のログから不審な動きの候補を拾わせる使い方だ。候補は元のログで確かめ、侵害の判断や遮断は人がする。

「AIログ解析」には、監視製品の機械学習による異常検知と、生成AIにログを読ませる使い方がある。前者は普段のログから基準を作って外れた動きを知らせるが、NISTの『侵入検知・防止システムのガイド』によれば、警告が出た理由を分析者が判断しにくいことが多い。この記事は、後者を不正アクセスなどの調査に使う話だ。

AIログ解析の分担:人・生成AI・元のログ
人。ログと期間を絞り、秘密の値を除く → 生成AI。候補を出し、根拠の行を添える → 元のログ。照合し、行が無い候補は除く → 人。侵害を判断し、遮断や報告を承認する 人範囲を決めるログと期間を絞り、秘密の値を除く生成AI候補を出す根拠の行を添える元のログ照合する行が無い候補は除く人判断・承認侵害を判断し、遮断や報告を承認する 人。ログと期間を絞り、秘密の値を除く → 生成AI。候補を出し、根拠の行を添える → 元のログ。照合し、行が無い候補は除く → 人。侵害を判断し、遮断や報告を承認する 人範囲を決めるログと期間を絞り、秘密の値を除く生成AI候補を出す根拠の行を添える元のログ照合する行が無い候補は除く人判断・承認侵害を判断し、遮断や報告を承認する

AIログ解析に渡す調査目的とデータ範囲

AIログ解析には、先に決めた問いに必要なログと期間だけを渡す。「このログで怪しいところを教えて」とだけ頼むと、何を怪しいとみなすかをAIが決めてしまう。

AIによるログ分析の目的と対象期間

NISTは『サイバーセキュリティのログ管理計画ガイド』の改訂草案で、ログの用途の一つにセキュリティインシデントの調査を挙げている。不正アクセスを調べるなら、問いを具体的にして、対象・ログ・期間に分ける。例えば「不正ログインの通知を受けたアカウントに、前後1週間で本人以外のログインがあったか」なら、対象はそのアカウント、ログは認証ログ、期間は通知の前後1週間だ。

期間は、疑いのきっかけになった時刻から遡って決める。保存していない期間はAIにも調べられない。JPCERT/CCは『高度サイバー攻撃への対処におけるログの活用と分析方法』で、インシデント対応支援などの結果から、参考値として1年分のログの保存を推奨している。調査を始める前に、対象システムごとにログが何日分残っているかを確かめる。

AIに渡すログ項目と時刻・識別子

OWASPは『ロギング チートシート』で、アプリケーションのログに出来事ごとの「いつ・どこで・誰が・何を」を記録するよう求めている。AIに渡すログにも、この4つが残っている必要がある。

4つの項目のどれが欠けても、AIの出力に誤りや抜けが出る
ログの値
欠けたときに起きること
いつ
時刻とタイムゾーン
出来事の順番を誤る
どこで
サーバー、機能、URL
どの機能の操作か分からない
誰が
利用者ID、接続元IPアドレス、セッションを区別できる値
IPアドレスをまたいで同じ相手の操作をつなげない
何を
操作の種類と処理結果(成功・失敗、HTTPの応答コード、応答サイズ)
試みと成功を区別できない
右の列は我々の整理。

協定世界時(UTC)と日本時間が混ざったログは、渡す前にそろえる。JPCERT/CCも同じ資料で、タイムラインを作るには各機器の時刻を正しく設定する必要があり、NTPの利用が有効だとしている。

AIログ解析による異常検知と操作候補の抽出

生成AIによる異常検知では、大量の行から普段と違う並びを拾わせ、関連しそうな行をまとめさせる。出力は候補の一覧として受け取り、侵害かどうかは元のログと照合したうえで人が決める。

ログの異常検知と候補の抽出

観点は、問いに合わせて先に指定する。認証やWebアクセスの調査なら、例えば次のものだ。

  • 同じアカウントへのログイン失敗の連続と、その後の成功
  • 普段と違う時間帯や接続元からのログイン
  • 短時間での大量の読み出しや、応答サイズの急な増加
  • 4xx・5xxの応答の急増

夜間のログインや大量の取得は、業務上の正当な操作でも起きる。JPCERT/CCは、攻撃の痕跡と断定する前に、利用者への聞き取りなどで本人による通信の可能性を除く必要があるとしている。

サイバーセキュリティクラウドは2026年10月9日の報告で、国内のWebサイトに対し、多くのIPアドレスを使い分けて短時間にアクセスを繰り返す動きを複数回観測したとしている。同社は、リクエストの中で同じ識別子が使い回されていたことから、これを1つの攻撃者による動きと判断した。

同社は、IPアドレスごとのアクセス数に頼った監視だけでは見逃すおそれがあると指摘する。AIエージェントによる攻撃の可能性も挙げるが、AIの利用を直接示す痕跡は確認していない。

IPアドレスごとには少ないアクセスが、同じ識別子で1つの動きにまとまった
326個使い分けられたIPアドレス1つあたりのアクセスは少なく、IPアドレスごとの回数では目立たない
約40分一連のアクセスが続いた時間短い時間に、多くの接続元から集中した
1,200件超繰り返されたアクセスリクエストの中で同じ識別子が使い回され、同社は1つの攻撃者による動きと判断した
サイバーセキュリティクラウドの2026年10月9日の報告から。同社が国内のWebサイトで複数回観測した動きの1回分の規模。

我々はこの報告から、IPアドレスをまたいで、同じ利用者ID・セッション・識別子の操作を時刻順につなげる必要があると考える。AIにも「この利用者IDの認証から操作、データ取得までを時刻順に並べ、各行の出所を示す」のように、つなぐ軸を指定する。

AIログ解析の誤検出を確かめる元ログとの照合

AIログ解析の誤検出は、要約に出てきた時刻・IPアドレス・件数を元のログで1つずつ確かめて除く。OWASPも『LLMアプリケーションのOWASPトップ10(2025年)』で、もっともらしく見える誤った出力を「誤情報」とし、過度の依存が被害を大きくするとして、信頼できる情報源との照合と人による確認を対策に挙げている。

AIログ解析の結果と元ログの照合

AIの要約が元のログと食い違うのは、主に次の場合だ。

  • 存在しない時刻やIPアドレス:生成AIはもっともらしい続きを出力するため、似た値が並ぶログでは実在しない組み合わせを書くことがある
  • 件数の取り違え:生成AIが書く件数は、行を実際に数えた値とずれることがある

照合は次の順で進める。

  1. AIに、候補ごとに根拠の行(ファイル名、行番号やイベントID、時刻、元の行の文字列)を出させる
  2. その行を元のログから検索し、同じ内容があるかを確かめる。見つからない候補は除く
  3. 件数と期間は、元のログを検索や集計のプログラムで数え直す
  4. 確かめた行を、調査記録へ元のまま写す

元のログで行を示せない記述は、報告の根拠に使わない。

誤検出・見落としの確認と人の判断

照合で除けるのは、出力に書かれた誤りだ。AIが書かなかった見落としは照合では見つからず、主に次の2つの経路で起きる。

  • 読まれていない範囲:生成AIに一度に渡せる量には上限がある。ログを分割したり途中で切ったりすると、読んでいない範囲の出来事は要約に出ない
  • ログに含まれる外部の文字列:User-Agent、検索語、入力フォームの値は外部の人が書ける。OWASPは、外部の情報に含まれる指示に生成AIが影響される問題を間接的なプロンプトインジェクションとして挙げている。特定の行を無害と書かせるおそれがある
書かれた誤りは照合で除き、見落としは既知の出来事で試す
書かれた誤り
書かれなかった見落とし
例
実在しない時刻やIPアドレス、件数のずれ
読まれていない範囲の出来事、外部の文字列で無害と書かされた行
見つけ方
元のログで根拠の行を探す行が無ければ候補から除く
既知の出来事を起こして試す出力に出てこなければ、渡し方か観点の指定に抜けがある

見落としを確かめるには、自分たちで起こした既知の出来事が、AIの出力に出てくるかを試す。例えば、検証用アカウントでログインを数回失敗させ、その期間のログを同じ手順でAIに渡す。

侵害の有無と影響の範囲は、照合済みの行と聞き取りなどから人が判断する。

AIログ解析における機密情報と承認の運用

AIログ解析では、AIに渡す情報と、AIの提案を実行するまでの手順を、作業を始める前に決める。ログには秘密の値が混ざり、ログの文字列はAIの出力を左右しうる。

AIログ解析のセキュリティ:外部送信と保管の条件

デジタル庁は2026年3月の『政府情報システムにおける脅威の検知・対応のためのログ取得・分析導入ガイドブック』で、エラーログへのパスワードや2要素認証コード、URLのパラメータのトークンが記録される例を挙げ、複数のログを組み合わせると個人を識別できる場合があるとも書いている。

外部のAIサービスへログを送る前に、契約と利用規約で、送ったデータの保存の有無と期間、学習への利用、使わせない設定の有無を確かめる。そのうえで、送るログを次のように整える。

  • 削除する:パスワード、トークン、セッションIDの値
  • 置き換える:利用者ID、メールアドレス、社内のIPアドレス。同じ値はいつも同じ別の値にする
  • 絞る:調べる問いに必要な期間と項目だけを送る

対応表を社内に残しておけば、AIの出力を元の利用者やIPアドレスに戻して照合できる。

AI解析後の遮断・報告の承認

OWASPは、プロンプトインジェクションの対策として、権限の大きい操作に人の承認を挟むことと、モデルの権限を必要最小限に絞ることを挙げている。AIには遮断や設定変更を直接実行させず、提案までを任せる。

AIの提案は、根拠・業務への影響・記録を人が確かめてから実行する
人が承認してから実行するAIの提案「このIPアドレスを遮断」根拠:照合済みの元のログの行があるか確かめる業務への影響:正規の利用者も使っていないか確かめる記録:誰が、どの根拠で承認したか残す承認したものだけを遮断する
AIに直接実行させるAIの提案「このIPアドレスを遮断」根拠:照合済みの元のログの行があるか確かめない業務への影響:正規の利用者も使っていないか確かめない記録:誰が、どの根拠で承認したか残らない照合していない誤りで、正規の利用者まで止めるおそれ
OWASPの対策(権限の大きい操作に人の承認を挟む)をもとに我々が整理した。

対外報告や公表に載せる範囲と件数も、照合済みの行から人が決める。

AI攻撃耐性ソリューション構成・管理状況、公開している資産、アクセスの記録を順に調べ、リスクと対策の優先順位を診断レポートにまとめます。

よくある質問

AIのログ解析と、監視製品の異常検知は何が違う?

監視製品の機械学習は、普段のログから基準を作って外れた動きを知らせる。生成AIはログを読み、不審な操作の候補を文章で挙げる。どちらの結果も元のログで確かめてから使う。

社外の生成AIサービスにログを渡してもいい?

契約と利用規約で、送ったデータの保存や学習への利用を確かめてからにする。パスワードやトークンは削除し、利用者IDやメールアドレスは別の値に置き換える。

AIに不審なIPアドレスの遮断まで任せていい?

任せず、提案までにする。ログの中の外部の文字列がAIの出力を左右しうるためだ。照合済みの根拠の行と業務への影響を人が確かめてから承認する。

ブログ一覧へ