メインコンテンツまでスキップ

ハニーポットでどこまで情報を収集するべきか

本記事の位置づけ

本記事は、ハニーポット運用において「どこまで情報を収集するべきか」を決めるための議論材料である。

ここでは、特定の方針や結論は示さない。

本記事の目的は、次の問いを整理することである。

  • ハニーポットの目的は何か
  • その目的を達成するには、どの情報が必要か
  • その情報を収集対象にするか、しないか
  • 対話型ハニーポットと非対話型ハニーポットで、収集すべき情報はどう変わるか
  • 収集対象を広げた場合、どのような追加論点が発生するか

なお、本記事では以下を議論対象外とする。

  • 実装方式
  • マスキング方式
  • 暗号化方式
  • ハッシュ化方式
  • 保存基盤の設計
  • SIEM連携方式
  • WAF連携方式
  • 具体的なクラウド構成
  • 運用手順の詳細

1. 議論の出発点

侵入検知・防御の観測点を設計するときは、観測目的と記録する情報の粒度を分けて考える必要がある。NIST SP 800-94も、侵入検知・防御システムを検討する際の観測、検知、対応の観点を整理している。1

ハニーポットの情報収集範囲は、「ハニーポットで何を知りたいのか」によって変わる。

例えば、単にインターネット上のスキャン傾向を把握したいだけであれば、接続元IP、時刻、宛先ポート、HTTPメソッド、URI程度で足りる可能性がある。

一方で、認証攻撃の実態を把握したい場合は、ログイン試行の有無、入力されたIDの形式、入力頻度、試行パターンなどが論点になる。

さらに、攻撃者と対話する高対話型ハニーポットの場合は、攻撃者がどのような操作を行うか、どのコマンドを実行するか、どのファイルを取得しようとするか、どの外部通信を試みるか、といった情報が論点になる。

つまり、最初に整理すべきなのは次の問いである。

ハニーポットの目的は何か。

この問いを曖昧にしたまま「何を収集するか」を決めると、必要以上に広い情報を集める、または必要な情報が不足する、という両方の問題が起こる。

2. ハニーポットの目的一覧

ハニーポットの目的は一つではない。代表的には次のように整理できる。

No目的主な関心情報収集の方向性
1インターネット上のスキャン傾向把握何がどれくらい来ているか最小限の接続情報中心
2公開面への攻撃傾向把握どのURI、機能、ポートが狙われるかリクエスト情報中心
3WAF・IDS・SIEM等の検知改善何を検知でき、何を見逃すか検知結果とリクエストの突合
4認証攻撃の観測どのようなログイン試行が来るか認証試行の特徴情報
5攻撃ツール・Botの識別どのツール、Bot、スキャナーかUser-Agent、挙動、頻度
6攻撃キャンペーンの観測同一傾向の攻撃が広がっているか時系列、パターン、送信元群
7脆弱性探索行動の観測どの脆弱性が狙われているかURI、パラメータ、ペイロード分類
8攻撃者の侵入後行動の観測入った後に何をするかコマンド、ファイル操作、通信
9マルウェア取得・配布経路の観測どこから何を取ろうとするかURL、ファイル名、ハッシュ等
10脅威インテリジェンス作成共有可能なIOCを作れるかIP、ドメイン、URL、ハッシュ等
11自組織の防御設計の妥当性確認現行防御で足りているか攻撃種別と防御結果
12教育・訓練・研究攻撃の実例を理解する目的に応じた観測情報

3. 対話のあるなしで変わること

ハニーポットは、大きく「非対話型」と「対話型」に分けて考えると整理しやすい。

ここでいう対話とは、攻撃者やBotに対して、ハニーポットが何らかの応答を返し、その後の行動を引き出すことを指す。

3.1 非対話型ハニーポット

非対話型ハニーポットは、主にアクセス、スキャン、リクエストの到達を観測する。

典型的には、以下のような情報が議論対象になる。

観測対象内容
到達したか攻撃・スキャンが来たか
いつ来たか時刻、頻度、集中度
どこから来たか送信元IP、ASN、国・地域推定
どこを狙ったか宛先ポート、Host、URI
何を送ってきたかメソッド、パス、クエリ、ヘッダー
どのようなツールかUser-Agent、リクエスト間隔
防御機構がどう扱ったかWAF判定、IDS判定、ステータスコード

非対話型の場合、主な目的は「観測」であり、攻撃者の後続行動を引き出すことではない。

したがって、議論の中心は次になる。

  • 接続情報だけで足りるか
  • URIやクエリまで見る必要があるか
  • POST本文まで見る必要があるか
  • ヘッダー全体を見る必要があるか
  • 認証情報らしき入力をどこまで扱うか

3.2 対話型ハニーポット

対話型ハニーポットは、攻撃者やBotに応答し、その後の行動を観測する。

SSH、RDP、Telnet、Web管理画面、疑似ログイン画面、疑似シェル、疑似APIなどが考えられる。

典型的には、以下のような情報が議論対象になる。

観測対象内容
侵入試行ログイン試行、認証突破の試み
操作内容コマンド、クリック、API操作
探索行動ディレクトリ一覧、設定ファイル探索
権限昇格行動sudo、権限確認、脆弱性探索
永続化行動cron、サービス登録、スタートアップ設定
外部通信ダウンロードURL、C2接続先、DNS問い合わせ
ファイル操作作成、取得、削除、アップロード
横展開行動内部IP探索、認証情報探索
痕跡消去ログ削除、履歴削除
自動化度Botか人手か、操作間隔、入力の揺れ

対話型の場合、主な目的は「到達した攻撃の観測」だけでなく、「侵入後に何をしようとするか」の観測に広がる。

そのため、議論の中心は次になる。

  • 操作ログをどこまで取るか
  • コマンド全文を取るか
  • ファイル取得を許すか
  • 外部通信を許すか
  • 攻撃者にどこまで環境を見せるか
  • 攻撃者との対話を深めるほど、どのようなリスクが増えるか

3.3 非対話型と対話型の比較

観点非対話型対話型
主な目的到達・スキャン・攻撃試行の観測侵入後行動・操作内容の観測
取得しやすい情報IP、時刻、URI、User-Agentコマンド、操作、外部通信、ファイル行動
情報量比較的少ない多い
攻撃者の行動誘発小さい大きい
分析の深さ傾向分析中心TTP分析まで可能
リスク比較的低い高くなりやすい
議論すべき点どこまでリクエストを記録するかどこまで操作させ、記録するか
収集範囲の決め方目的別に最小化しやすい目的とリスクのバランスが難しい

4. 目的別に見た必要情報

以下では、目的ごとに「必要になり得る情報」と「収集対象にするか議論が必要な情報」を整理する。

ここでは、収集すべき・すべきでないという結論は示さない。

4.1 目的1:インターネット上のスキャン傾向把握

インターネット上のスキャン傾向把握の目的

外部からどの程度スキャンやアクセスが来ているかを把握する。

インターネット上のスキャン傾向把握で知りたいこと

  • どの時間帯に多いか
  • どのポートが狙われるか
  • どの国・地域・ASNから多いか
  • どの程度が自動スキャンか
  • 急増しているスキャンがあるか

インターネット上のスキャン傾向把握で必要になり得る情報

情報必要性収集対象にするかの論点
時刻時系列分析に必要
送信元IPスキャン元の傾向把握に必要
宛先ポート狙われるサービスの把握に必要
プロトコルTCP/UDP/HTTP等の分類に必要
User-AgentHTTP系スキャンでは有用
URIWebスキャンの傾向把握に有用
クエリ文字列低〜中単純な傾向把握だけなら不要な場合あり
POST本文スキャン傾向把握だけなら不要な場合が多い
入力ID・パスワードこの目的だけでは必要性は低い

インターネット上のスキャン傾向把握の議論ポイント

  • 単純なスキャン把握なら、接続情報だけで足りるのではないか
  • Webアプリ探索の傾向まで見るなら、URIまでは必要ではないか
  • POST本文まで収集する必要はあるのか
  • IPをどの粒度で扱うか

4.2 目的2:公開面への攻撃傾向把握

公開面への攻撃傾向把握の目的

自組織の公開サービスに対して、どのような攻撃が向けられているかを把握する。

公開面への攻撃傾向把握で知りたいこと

  • どのURIが狙われているか
  • 管理画面探索があるか
  • 既知製品の脆弱性探索があるか
  • SQLインジェクションやXSSが来ているか
  • ファイルアップロードやパストラバーサルが試されているか

公開面への攻撃傾向把握で必要になり得る情報

情報必要性収集対象にするかの論点
時刻攻撃時系列の把握に必要
送信元IP攻撃元傾向の把握に必要
Host複数ドメイン運用時に必要
HTTPメソッド攻撃種別の分類に必要
URI狙われた機能の把握に必要
クエリ文字列中〜高攻撃ペイロード判定に必要な場合あり
リクエストヘッダーツール識別に有用
POSTパラメータ名攻撃対象の推定に有用
POST本文攻撃分類には有用だが議論が必要
ファイル名アップロード攻撃の把握に有用
ファイル本文低〜中有用性はあるがリスクも大きい

公開面への攻撃傾向把握の議論ポイント

  • URIだけで攻撃傾向を把握できるか
  • クエリ文字列まで見ないと攻撃分類が難しいか
  • POST本文の収集はどの目的で必要になるか
  • ファイルアップロードを観測対象に含めるか

4.3 目的3:WAF・IDS・SIEM等の検知改善

WAF・IDS・SIEM等の検知改善の目的

既存の検知・防御機構が、攻撃をどの程度検知できているかを確認し、検知ルールを改善する。

WAF・IDS・SIEM等の検知改善で知りたいこと

  • 攻撃らしきリクエストをWAFが検知したか
  • IDSやSIEMで相関分析できているか
  • 未検知の攻撃パターンがあるか
  • 過剰検知や誤検知があるか
  • どのルールが反応したか
  • どのログとどのログを突合すべきか

WAF・IDS・SIEM等の検知改善で必要になり得る情報

情報必要性収集対象にするかの論点
request_id複数ログの突合に必要
時刻相関分析に必要
送信元IPWAF/IDSログとの突合に必要
URI検知対象の把握に必要
HTTPメソッド攻撃分類に必要
クエリ文字列中〜高ルール反応理由の確認に必要な場合あり
POST本文中〜高WAF検知改善には必要な場合あり
WAF判定allow/block/log等の把握に必要
WAFルールIDどのルールが反応したかの確認に必要
IDS検知名中〜高相関分析に有用
ステータスコード応答結果の把握に有用
レスポンスサイズ攻撃成功推定に有用な場合あり

WAF・IDS・SIEM等の検知改善の議論ポイント

  • 検知改善には、実際のペイロードをどこまで把握する必要があるか
  • WAFログ側で十分か、ハニーポット側でも記録が必要か
  • request_idを中心にした突合だけで足りるか
  • 未検知分析には、未加工のリクエスト情報が必要か

4.4 目的4:認証攻撃の観測

認証攻撃の観測の目的

ログインフォーム、管理画面、SSH、RDP等に対する認証攻撃の傾向を把握する。

認証攻撃の観測で知りたいこと

  • どの程度ログイン試行が来ているか
  • よく使われるIDは何か
  • よく使われるパスワードの傾向は何か
  • 辞書攻撃か、クレデンシャルスタッフィングか
  • 同じ組み合わせが繰り返されているか
  • 攻撃元ごとに試行パターンが違うか
  • Botか人手か

認証攻撃の観測で必要になり得る情報

情報必要性収集対象にするかの論点
時刻試行頻度の把握に必要
送信元IP攻撃元単位の分析に必要
対象サービスSSH/Web/RDP等の区別に必要
成功・失敗扱い攻撃の進行把握に必要
入力ID中〜高ID傾向分析には必要になり得る
入力パスワード中〜高辞書傾向分析には必要になり得る
IDとパスワードの組組み合わせ再利用分析には有用
試行間隔Bot/人手判定に有用
User-AgentWebログインでは有用
セッション識別子同一試行者の行動把握に有用
入力回数ブルートフォース把握に必要

認証攻撃の観測の議論ポイント

  • 認証攻撃の観測において、IDそのものが必要か、形式だけで足りるか
  • パスワードそのものが必要か、長さ・文字種・頻度で足りるか
  • IDとパスワードの組み合わせを見る必要があるか
  • クレデンシャルスタッフィングの可能性をどう扱うか
  • 入力値が第三者の漏えい情報である可能性をどう評価するか

認証攻撃の観測の参考論点

OWASPは、クレデンシャルスタッフィングを、漏えいしたユーザー名とパスワードの組を用いて別サービスにログインを試みる攻撃として説明している。2

このため、ハニーポットに入力される認証情報は、攻撃者本人の情報ではなく、第三者の漏えい情報である可能性がある。34

4.5 目的5:攻撃ツール・Botの識別

攻撃ツール・Botの識別の目的

アクセスしてきた主体が、どのようなツール、Bot、スキャナー、攻撃フレームワークを使っているかを推定する。

攻撃ツール・Botの識別で知りたいこと

  • 既知スキャナーか
  • 汎用Botか
  • 特定脆弱性を狙うツールか
  • 手動操作か
  • 同じツールが複数IPから使われているか
  • 攻撃の自動化度はどの程度か

攻撃ツール・Botの識別で必要になり得る情報

情報必要性収集対象にするかの論点
User-Agentツール識別に有用
ヘッダー順序ツール指紋になる場合あり
リクエスト間隔Bot判定に有用
URI列スキャンパターンの把握に有用
HTTPメソッドツール挙動の分類に有用
TLS指紋Bot識別に有用な場合あり
エラー時の再試行自動化度の推定に有用
入力値低〜中認証Botでは有用な場合あり

攻撃ツール・Botの識別の議論ポイント

  • User-Agentだけで足りるか
  • ヘッダー順序やTLS指紋まで必要か
  • 識別精度をどこまで求めるか
  • Bot識別のために、セッション単位の行動追跡が必要か

4.6 目的6:攻撃キャンペーンの観測

攻撃キャンペーンの観測の目的

同一または類似の攻撃が、短期間に広範囲から来ているかを把握する。

攻撃キャンペーンの観測で知りたいこと

  • 特定脆弱性の探索が急増しているか
  • 同一User-Agentや同一URI列が複数IPから来ているか
  • 攻撃元がクラウド事業者や特定ASNに偏っているか
  • 攻撃パターンが時間とともに変化しているか
  • 報道・PoC公開・脆弱性公表と連動しているか

攻撃キャンペーンの観測で必要になり得る情報

情報必要性収集対象にするかの論点
時刻キャンペーンの時間軸把握に必要
送信元IP分散状況の把握に必要
ASN中〜高攻撃基盤の傾向把握に有用
URI狙われた脆弱性推定に必要
クエリ文字列攻撃パターン比較に有用
User-Agent同一ツール推定に有用
ペイロード分類中〜高同一キャンペーン推定に有用
外部URLマルウェア取得行動がある場合に有用
ハッシュ検体が関係する場合に有用

攻撃キャンペーンの観測の議論ポイント

  • キャンペーン把握に必要な粒度はどこまでか
  • 同一性判定のためにペイロード本文まで必要か
  • IP単位ではなくASNやクラウド事業者単位で十分か
  • 外部の脅威情報と照合するために何を残すか

4.7 目的7:脆弱性探索行動の観測

脆弱性探索行動の観測の目的

攻撃者がどの製品、どの脆弱性、どの設定不備を探しているかを把握する。

脆弱性探索行動の観測で知りたいこと

  • どの製品の管理画面が探されているか
  • 既知脆弱性のPoCに似たリクエストが来ているか
  • ファイル読み取り、RCE、認証回避などのどれが狙われているか
  • 特定CVEの公開後に探索が増えたか
  • どのURIやパラメータが狙われているか

脆弱性探索行動の観測で必要になり得る情報

情報必要性収集対象にするかの論点
URI狙われた製品・機能の推定に必要
HTTPメソッド攻撃手法の分類に必要
クエリ文字列脆弱性探索の判定に必要な場合あり
POSTパラメータ名中〜高攻撃対象の推定に有用
POST本文中〜高RCE等の判定に必要な場合あり
ヘッダー製品固有攻撃の判定に有用な場合あり
User-Agentツール識別に有用
レスポンスコード攻撃者側の継続判断推定に有用
攻撃分類SQLi、XSS、RCE等の整理に必要

脆弱性探索行動の観測の議論ポイント

  • CVE推定に必要な情報はURIだけか、本文まで必要か
  • PoCコードとの照合をする場合、どの粒度が必要か
  • 攻撃分類を人手で行うか、ルールで行うか
  • 対象製品名を推定するだけで足りるか、ペイロード詳細まで必要か

4.8 目的8:攻撃者の侵入後行動の観測

攻撃者の侵入後行動の観測の目的

攻撃者が侵入に成功したと見なした後、どのような行動を取るかを観測する。

攻撃者の侵入後行動の観測で知りたいこと

  • まず何を確認するか
  • 権限昇格を試みるか
  • 認証情報を探すか
  • 外部からツールをダウンロードするか
  • 永続化を試みるか
  • 横展開を試みるか
  • 痕跡消去を試みるか
  • 人手か自動化か

攻撃者の侵入後行動の観測で必要になり得る情報

情報必要性収集対象にするかの論点
セッション開始時刻行動時系列に必要
操作コマンド侵入後行動の把握に必要
コマンド引数意図の把握に必要
カレントディレクトリ探索行動の把握に有用
ファイル操作中〜高永続化・窃取行動の把握に有用
プロセス起動中〜高攻撃ツール実行の把握に有用
外部通信先C2、ダウンロード先の把握に有用
ダウンロードURLツール・マルウェア取得の把握に有用
入力文字列操作意図の把握に必要
応答内容攻撃者が何を見たかの把握に有用

攻撃者の侵入後行動の観測の議論ポイント

  • 侵入後行動を観測する目的があるか
  • コマンド全文を記録する必要があるか
  • 攻撃者にどこまで操作させるか
  • 外部通信を許すか、観測だけにするか
  • 横展開や外部攻撃につながる行動をどう扱うか

4.9 目的9:マルウェア取得・配布経路の観測

マルウェア取得・配布経路の観測の目的

攻撃者がどのURL、ドメイン、IPからツールやマルウェアを取得しようとするかを把握する。

マルウェア取得・配布経路の観測で知りたいこと

  • どのダウンロードURLが使われるか
  • どのドメインやIPが使われるか
  • どのファイル名が使われるか
  • 取得されるファイルは既知のマルウェアか
  • 同じURLが複数の攻撃で使われているか
  • 攻撃者はどの取得コマンドを使うか

マルウェア取得・配布経路の観測で必要になり得る情報

情報必要性収集対象にするかの論点
ダウンロードURLIOCとして有用
ドメイン脅威情報として有用
IPIOCとして有用
ファイル名中〜高攻撃ツール推定に有用
ファイルサイズ検体識別に有用
ファイルハッシュ中〜高IOCとして有用
ファイル本文解析には有用だがリスクが高い
取得コマンドTTP分析に有用
実行コマンド攻撃意図の把握に有用

マルウェア取得・配布経路の観測の議論ポイント

  • マルウェアそのものを扱う目的があるか
  • URL、ファイル名、ハッシュだけで足りるか
  • 検体本文まで必要か
  • 外部共有する場合、どの粒度が適切か

4.10 目的10:脅威インテリジェンス作成

脅威インテリジェンス作成の目的

ハニーポットで観測した情報を、自組織または関係者の防御に使える脅威情報として整理する。

脅威インテリジェンス作成で知りたいこと

  • 共有可能なIOCは何か
  • どの攻撃が継続的に観測されているか
  • どの攻撃元、ドメイン、URL、ハッシュが有用か
  • 自組織の防御ルールに反映できるか
  • 他組織への情報提供に耐えるか

脅威インテリジェンス作成で必要になり得る情報

情報必要性収集対象にするかの論点
IPIOCとして使いやすい
ドメインIOCとして使いやすい
URL攻撃インフラ把握に有用
ファイルハッシュマルウェア識別に有用
User-Agentツール識別に有用
攻撃分類情報共有時の文脈に必要
観測時刻情報の鮮度判断に必要
観測件数重要度判断に有用
ペイロード例文脈説明に有用だが扱いに注意
認証情報共有対象としては扱いが難しい

脅威インテリジェンス作成の議論ポイント

  • 脅威インテリジェンスとして本当に共有するのか
  • 自組織内利用に留めるのか
  • IOCだけで足りるか、TTPまで整理するか
  • 認証情報由来の情報を共有対象に含めるか
  • 情報共有先によって粒度を変えるか

脅威インテリジェンス作成の参考論点

NIST SP 800-150は、サイバー脅威情報共有について、共有する情報の性質、共有目的、共有先、取扱いを整理する必要性を示している。5

4.11 目的11:自組織の防御設計の妥当性確認

自組織の防御設計の妥当性確認の目的

自組織のWAF、IDS、SIEM、ログ監視、ブロックルール、インシデント対応プロセスが、実際の攻撃観測に対して妥当か確認する。

自組織の防御設計の妥当性確認で知りたいこと

  • 現在の防御で検知できているか
  • ブロックすべき通信が通っていないか
  • 検知しても通知されていないものはないか
  • ログが相関分析できる形で残っているか
  • インシデント対応に必要な情報が揃っているか
  • チューニング対象はどこか

自組織の防御設計の妥当性確認で必要になり得る情報

情報必要性収集対象にするかの論点
request_idログ突合に必要
WAF判定防御結果の確認に必要
IDS判定中〜高検知結果の確認に必要
SIEMアラート中〜高運用検知の確認に必要
リクエスト概要何に反応したか確認するため
攻撃分類防御評価に必要
送信元IPブロック・相関分析に必要
ステータスコード応答結果の確認に有用
レスポンスサイズ成功・失敗推定に有用
対応記録運用品質の確認に有用

自組織の防御設計の妥当性確認の議論ポイント

  • ハニーポットの目的は、攻撃観測か、防御検証か
  • 防御検証であれば、WAFやSIEM側のログで足りるか
  • ハニーポット側でどこまで記録する必要があるか
  • 検知から対応までのプロセス確認も対象にするか

4.12 目的12:教育・訓練・研究

教育・訓練・研究の目的

実際に観測された攻撃を用いて、教育、訓練、研究、演習に活用する。

教育・訓練・研究で知りたいこと

  • 実際の攻撃はどのような形で来るか
  • 教材として使える攻撃例はあるか
  • 典型的なBotの動きはどのようなものか
  • WAFやIDSはどのように反応するか
  • 攻撃者の侵入後行動を説明できるか

教育・訓練・研究で必要になり得る情報

情報必要性収集対象にするかの論点
リクエスト例中〜高教材化に有用
攻撃分類学習整理に必要
時系列攻撃流れの説明に有用
WAF/IDS判定防御教育に有用
コマンド例中〜高侵入後行動教育に有用
IOC脅威情報教育に有用
認証情報教材として扱う必要性は低い
検体本文低〜中研究目的以外では扱いにくい

教育・訓練・研究の議論ポイント

  • 教育目的なら、実データである必要があるか
  • 模擬データや加工済みデータで足りるか
  • どの情報を教材として第三者に見せられるか
  • 研究目的と教育目的を分けるべきか

5. 目的別・収集対象マトリクス

以下は、目的ごとに、各情報が議論対象になり得るかを整理したものである。

記号の意味は次の通り。

記号意味
目的達成上、中心的な情報になりやすい
有用な場合が多い
目的や粒度によって議論が必要
その目的では必要性が低い
情報項目スキャン傾向攻撃傾向検知改善認証攻撃Bot識別キャンペーン侵入後行動TI作成
時刻
送信元IP
ASN
宛先ポート
Host
HTTPメソッド
URI
クエリ文字列
POSTパラメータ名
POST本文
User-Agent
ヘッダー詳細
WAF判定
IDS判定
request_id
入力ID
入力パスワード
コマンド
ファイル名
ファイル本文
外部URL
ファイルハッシュ

6. 収集対象にする・しないを議論するための観点

各情報項目について、収集対象に含めるかどうかは、次の観点で議論すると整理しやすい。

観点問い
目的適合性その情報は、今回のハニーポット目的に直接必要か
代替可能性より粗い情報、分類、件数で代替できないか
一意性その情報がないと分析できないのか
機微性個人情報、認証情報、第三者情報を含む可能性はあるか6
保有リスク漏えい時、誤利用時の影響はどの程度か
運用負荷閲覧権限、保存期間、削除、監査の負担はどの程度か
第三者説明性外部に対して、収集理由を説明できるか
共有可能性収集した情報を防御改善や情報共有に使えるか
過剰性目的に比べて取り過ぎになっていないか
継続性長期運用しても管理できるか

7. 情報項目別の論点整理

7.1 送信元IP

観点論点
有用性攻撃元傾向、頻度、ブロック候補、相関分析に有用
必要になる目的スキャン傾向、攻撃傾向、検知改善、キャンペーン観測、TI作成
議論点個別IPで保持するか、ASNや集計値で足りるか
追加論点NAT、VPN、クラウド、ボットネット経由の場合、攻撃者本人を示すとは限らない

7.2 URI・パス

観点論点
有用性どの製品、機能、脆弱性が狙われているか把握できる
必要になる目的攻撃傾向、脆弱性探索、検知改善、キャンペーン観測
議論点パスだけで足りるか、クエリまで必要か
追加論点URL内に個人情報やトークンが含まれるケースをどう扱うか

7.3 クエリ文字列

観点論点
有用性SQLi、XSS、RCE、パストラバーサル等の判定に有用
必要になる目的攻撃分類、検知改善、脆弱性探索
議論点攻撃分類に必要な範囲はどこまでか
追加論点クエリ内に認証情報、メールアドレス、トークンが含まれる可能性

7.4 POST本文

観点論点
有用性ログイン試行、RCE、API攻撃、ファイルアップロード攻撃の分析に有用
必要になる目的検知改善、認証攻撃、脆弱性探索
議論点本文全体が必要か、パラメータ名や分類で足りるか
追加論点個人情報、認証情報、トークン、マルウェアが含まれる可能性

7.5 User-Agent

観点論点
有用性Bot、スキャナー、攻撃ツールの識別に有用
必要になる目的スキャン傾向、Bot識別、キャンペーン観測
議論点偽装されやすい情報をどこまで信用するか
追加論点他の挙動情報と組み合わせないと判断を誤る可能性

7.6 ヘッダー詳細

観点論点
有用性ツール識別、攻撃分類、特殊な攻撃の把握に有用
必要になる目的Bot識別、検知改善、脆弱性探索
議論点全ヘッダーが必要か、一部ヘッダーで足りるか
追加論点Cookie、Authorization、トークン類が含まれる可能性

7.7 入力ID

観点論点
有用性よく狙われるID、管理者ID、サービス名IDの傾向把握に有用
必要になる目的認証攻撃観測
議論点IDそのものが必要か、形式や頻度で足りるか
追加論点実在する第三者のメールアドレスやアカウント名である可能性

7.8 入力パスワード

観点論点
有用性辞書攻撃、既知パスワード傾向、クレデンシャルスタッフィング推定に有用
必要になる目的認証攻撃観測
議論点パスワードそのものが必要か、長さ・文字種・頻度で足りるか
追加論点第三者の漏えい認証情報である可能性が高い

7.9 コマンド

観点論点
有用性侵入後行動、TTP、ツール取得、永続化、権限昇格の把握に有用
必要になる目的侵入後行動観測、教育・研究、TI作成
議論点コマンド全文を記録する必要があるか
追加論点攻撃者に操作させる範囲が広がるほど管理論点が増える

7.10 外部URL・ドメイン

観点論点
有用性C2、マルウェア取得先、攻撃インフラ把握に有用
必要になる目的侵入後行動、マルウェア取得経路、TI作成
議論点URL全体が必要か、ドメインだけで足りるか
追加論点自動アクセスや取得を行う場合、別のリスクが発生する

7.11 ファイル本文・マルウェア検体

観点論点
有用性マルウェア解析、ハッシュ生成、検知ルール作成に有用
必要になる目的マルウェア取得経路、TI作成、研究
議論点本文まで必要か、ファイル名・サイズ・ハッシュで足りるか
追加論点保管、誤実行、外部共有、解析環境、委託管理が問題になる

8. 対話型で追加される論点

対話型ハニーポットでは、単に情報を受け取るだけでなく、攻撃者やBotの行動を引き出すことになる。

そのため、非対話型にはない論点が追加される。

論点内容
どこまで応答するかログイン成功風に見せるか、エラーで止めるか
どこまで操作させるかコマンド入力、ファイル一覧、疑似シェルを許すか
どこまで外部通信を許すかダウンロード、DNS、HTTP接続を許すか
どこまで現実らしく見せるか実在サービスに近づけるほど入力情報が増える
どこまで行動を記録するか操作全文、出力、時系列を記録するか
攻撃者を誘引していないか通常の観測を超えた誘導にならないか
他者への影響はないかハニーポット経由で外部攻撃が発生しないか
教育・研究目的か研究目的なら詳細情報の必要性が高まる

9. 議論用チェックリスト

ハニーポットの収集範囲を議論する際は、次の順番で確認するとよい。

9.1 目的確認

  • このハニーポットの主目的は何か
  • 副目的はあるか
  • 脅威インテリジェンス作成まで行うのか
  • 認証攻撃を観測対象に含めるのか
  • 侵入後行動まで観測するのか
  • 教育・研究利用を想定するのか

9.2 対話性確認

  • 非対話型か
  • 低対話型か
  • 高対話型か
  • 攻撃者にログイン成功風の応答を返すのか
  • コマンド入力を許すのか
  • ファイル取得や外部通信を扱うのか

9.3 情報項目確認

  • 時刻は必要か
  • IPは必要か
  • URIは必要か
  • クエリは必要か
  • POST本文は必要か
  • ヘッダー全体は必要か
  • User-Agentは必要か
  • 認証入力値は必要か
  • コマンドは必要か
  • 外部URLは必要か
  • ファイル本文は必要か

9.4 必要性確認

  • その情報がないと目的を達成できないか
  • 目的に対して情報が細かすぎないか
  • 集計値や分類値で足りないか
  • 別ログで代替できないか
  • 取得後に誰が見るのか
  • 何に使うのか
  • いつ削除するのか

9.5 第三者説明性確認

  • 収集理由を第三者に説明できるか
  • 防御改善との関係を説明できるか
  • 認証情報や個人情報を扱う場合、その必要性を説明できるか
  • 外部共有する場合、共有範囲を説明できるか
  • 対話型の場合、攻撃者に何をさせるのか説明できるか

10. 論点整理表

論点選択肢A選択肢B選択肢C主な検討事項
目的スキャン観測攻撃分類侵入後行動観測目的により収集範囲が大きく変わる
対話性非対話型低対話型高対話型対話性が高いほど情報量と論点が増える
URIパスのみクエリ含む本文も含む攻撃分類に必要な粒度
認証情報収集しない特徴のみ入力値も対象認証攻撃観測の目的次第
コマンド対象外一部記録全操作記録侵入後行動を観測するか
ファイル対象外メタ情報のみ本文も対象マルウェア解析を目的に含めるか
外部通信対象外URLのみ通信挙動も観測他者への影響をどう考えるか
第三者共有しない集計のみIOC共有共有目的と共有先の整理が必要
教育利用しない加工例のみ実例利用実データを使う必要性の確認

11. 会議での進め方案

議論は、いきなり「何を取るか」から始めない方がよい。

次の順番で進めると、論点が整理されやすい。

Step 1:目的を選ぶ

まず、今回のハニーポットの主目的を選ぶ。

候補:

  • スキャン傾向把握
  • 攻撃傾向把握
  • 検知改善
  • 認証攻撃観測
  • Bot識別
  • 攻撃キャンペーン観測
  • 侵入後行動観測
  • マルウェア取得経路観測
  • 脅威インテリジェンス作成
  • 防御設計の妥当性確認
  • 教育・研究

Step 2:対話性を決める

次に、ハニーポットの対話性を確認する。

  • 非対話型
  • 低対話型
  • 高対話型

ここで、対話型にするほど収集対象の議論が広がることを確認する。

Step 3:目的ごとに必要情報を確認する

目的ごとに、必要情報を確認する。

例:

  • スキャン傾向把握なら、IP、時刻、ポート、URIで足りるか
  • 認証攻撃観測なら、入力IDやパスワードの扱いを議論する必要があるか
  • 侵入後行動観測なら、コマンドや外部URLを扱う必要があるか

Step 4:収集対象にするか議論する

各情報について、次を確認する。

  • 目的達成に必要か
  • 代替できるか
  • 機微性はあるか
  • 第三者説明が可能か
  • 長期運用に耐えるか

Step 5:未決論点として残すものを明確にする

この場で決めない論点は、未決論点として明示する。

例:

  • 認証情報の扱い
  • POST本文の扱い
  • ファイル本文の扱い
  • 対話型の範囲
  • 外部通信の扱い
  • 第三者共有の範囲

12. 第三者向け説明に使える整理文

本記事は、ハニーポットにおける情報収集範囲を決定するための議論材料である。

ハニーポットの収集範囲は、ハニーポットの目的によって変わる。例えば、インターネット上のスキャン傾向を把握する目的であれば、時刻、送信元IP、宛先ポート、URI等が主な論点となる。一方、認証攻撃を観測する目的であれば、ログイン試行、入力ID、入力パスワード、試行頻度、同一組み合わせの再出現などが論点となる。

また、非対話型ハニーポットでは、到達した通信やリクエストの観測が中心となるのに対し、対話型ハニーポットでは、攻撃者またはBotの後続行動、操作内容、コマンド、外部通信、ファイル取得行動などが追加論点となる。

したがって、収集対象を検討する際は、最初にハニーポットの目的を明確にし、その目的を達成するために必要な情報を洗い出したうえで、各情報を収集対象に含めるかどうかを個別に議論する必要がある。

本記事では、特定の収集方針や結論は示さず、目的別に必要となり得る情報と、それぞれの情報を収集対象に含める際の論点を整理する。

参考資料(出典)

Footnotes

  1. NIST, Guide to Intrusion Detection and Prevention Systems (SP 800-94)(2007年2月)。IDPSと関連する検知・防御の考え方を整理するための参考資料。https://csrc.nist.gov/pubs/sp/800/94/final

  2. OWASP, Credential Stuffing(Webページ)。漏えいした認証情報の組を用いたログイン試行の説明。https://owasp.org/www-community/attacks/Credential_stuffing

  3. OWASP, Credential Stuffing Prevention Cheat Sheet(Webページ)。認証攻撃への防御観点を整理するための参考資料。https://cheatsheetseries.owasp.org/cheatsheets/Credential_Stuffing_Prevention_Cheat_Sheet.html

  4. OWASP, Authentication Cheat Sheet(Webページ)。認証に関する攻撃・防御・ログイン試行の扱いを整理するための参考資料。https://cheatsheetseries.owasp.org/cheatsheets/Authentication_Cheat_Sheet.html

  5. NIST, Guide to Cyber Threat Information Sharing (SP 800-150)(2016年10月)。サイバー脅威情報共有の目的、共有対象、取扱いを整理するための参考資料。https://csrc.nist.gov/pubs/sp/800/150/final

  6. 個人情報保護委員会, 個人情報保護法ガイドライン等(Webページ)。ハニーポットログに個人情報や認証情報に類する情報が含まれる可能性を検討するための参考資料。https://www.ppc.go.jp/personalinfo/legal/