investigate-without-getting-made について
Investigate without getting madeは、オンライン調査を行う調査員向けのセキュリティ調査スキルです。脅威モデリング、身元の分離、プラットフォーム上の帰属リスク、適切な対策を扱います。
主な機能
- 01脅威モデルに基づくOPSECガイド
- 02帰属情報の分析
- 03調査用ペルソナの分離
- 04ネットワーク出口の比較
- 05環境の区分管理
- 06露出度の評価と記録
活用シーン
- 01公開サイトへの安全なアクセス計画
- 02ログイン状態での閲覧リスク評価
- 03調査ごとの身元分離
- 04収集後の露出状況の記録
インストール
コマンドをコピーしてターミナルで実行します。
npx skills add https:/ / github.com/ useosint/ skills --skill investigate-without-getting-madeインストール後、Claude Code で/investigate-without-getting-madeを入力して読み込まれたか確認します。
同梱ファイルreference/attribution-surface.mdreference/persona-runbook.md
詳細
気づかれずに調査する
情報収集は双方向です。多くの調査員が失敗する原因は、巧妙な敵対者ではなく、プラットフォームが宣言どおりに動作することです。プロフィールを見た人を対象者に知らせたり、調査員を知り合いかもしれない人として対象者におすすめしたり、ストーリーを閲覧済みとして記録したりします。よくある失敗は IP アドレスの漏えいではありません。実アカウントにログインしたまま調べることです。
まず脅威モデルを考える
OPSEC にかける労力は、脅威に応じたものにしてください。インフラの構築に一日費やす前に、あるいは何も必要ないと判断する前に、次の 3 つの質問に答えてください。
- 誰が気づく可能性がありますか? 休眠中のペーパーカンパニー、ある程度の技術知識を持つ個人、監視対象のインフラを運用する犯罪グループ、あるいは国家機関。それぞれの能力に応じて必要な対策の水準が決まります。
- 相手には何が見えますか? 受動的な情報収集なら、サーバーログの一行です。ログイン状態での訪問なら、あなたの名前です。何らかのやり取りをすれば、あなたのペルソナとその履歴が知られます。
- どのような結果を招きますか? 何も起きないのか、証拠が破壊されてアカウントが使われなくなるのか、調査があなたの組織によるものだと特定されて公表されるのか、あるいはあなたや情報提供者に物理的な危険が及ぶのか。
| 状況 | 状況に応じた対策 |
|---|---|
| 登記簿、アーカイブ、CT ログ、裁判記録 | 通常のブラウザーを使い、ペルソナは不要です。数千人のうちの一人です。 |
| 対象者の公開ウェブサイトを閲覧する | クリーンなブラウザープロファイル、商用 VPN、ログイン状態のセッションなし。 |
| 対象者のページをプラットフォームにログインした状態で閲覧する場合 | ペルソナアカウントと専用プロファイルを使い、まずプラットフォームの閲覧通知の挙動を確認してください。 |
| 対象者が監視対象のインフラを運用している、または技術的な能力がある | 専用 VM、データセンター以外からの通信、使い回しのないフィンガープリント、アクセスするタイミングへの配慮。 |
| 組織犯罪、嫌がらせのリスク、身の安全への懸念がある | 上記すべてに加え、用途を分けたハードウェアと、あなたの行動を把握している同僚を用意してください。 |
過剰な対策にもコストがあります。ロックダウンされた環境では CAPTCHA が表示され、レート制限やブロックを受けるため、収集できる情報が減ります。また、特異な設定自体が目立つこともあります。目立たないことが目的なら、周囲に溶け込んでください。安全に閲覧する方法を考える前に、アーカイブに保存されていないか確認してください(read-deleted-pages)。スナップショットを見ても、対象者には何も伝わりません。
あなたを特定する情報
サイトやプラットフォームが訪問から把握できること:
| 情報源 | 明らかになること |
|---|---|
| IP と ASN | 手掛かりになるのはアドレスではなくネットワークです。データセンターの ASN は「VPN またはスクレイパー」を示し、企業の ASN は勤務先の名前を示します。これは最悪の結果であり、よくあることです。オフィスのネットワークが識別情報になることを忘れる人が多いためです |
| ブラウザーのフィンガープリント | ユーザーエージェント、ウィンドウのサイズ、フォント、Canvas と WebGL のレンダリング、ハードウェアスレッド数、タイムゾーンなどは、多くの場合、固有であり、何よりもセッションや IP をまたいでも安定しているため、ほかに手掛かりがないときに訪問同士を関連付けるのに使われます |
| TLS フィンガープリント | ClientHello(暗号スイート、拡張機能、並び順)は、ブラウザーが公開する情報とは無関係にクライアントを識別します。これが、プロキシの背後にあるツールと実際のブラウザーを簡単に見分けられる理由です。ヘッダーには Chrome と表示されても、ハンドシェイクはそうなりません |
| 言語とロケール | Accept-Language、タイムゾーンのオフセット、単位です。英語ロケールのブラウザーで地域言語のサイトを閲覧し、IP が第三国のデータセンターのものなら、記憶に残ります |
| タイミング | ある国の勤務時間中だけ活動し、その国の祝日にはアクセスがなく、毎時きっかりにアクセスが集中することがあります。タイミングは、ほかのあらゆる対策を講じても残ります |
| リンクのプレビュー | チャット、チケット、文書に対象 URL を貼り付けると、そのプラットフォームが URL を取得します。取得時に対象サーバーへアクセスするため、ほかの活動との関連付けが可能になります。プレビューを無効にするか、URL を無害化してください |
ログイン済みアカウントが最大のリスクです。 認証によって匿名のリクエストが個人を特定できるリクエストに変わります。また、漏えいにつながる機能も備わっています。プロフィール閲覧通知や閲覧者リスト、ストーリーや動画の視聴者リスト、連絡先リストや交流グラフに基づく「知り合いかもしれない人」の提案、既読通知、フォロワーやリストの通知、共通のつながりの表示などです。ページを読み込むだけで作動するものもあります。
情報源ごとの確認項目、各プラットフォームカテゴリで公開される情報、役立つ設定と役立たない設定については、reference/attribution-surface.md を参照してください。
分離は絶対です
調査用の身元と実際の身元が交わることは決してありません。「ほぼ」では不十分です。一度でも交われば永久に結び付けられ、プラットフォームに関連付けられた後は元に戻せません。特定に使われる情報を、どれだけ頻繁に問題を引き起こすかを基準に、おおよその順で示します。
- SMS 認証に実際の電話番号を使う。 電話番号は、プラットフォーム間の関連付けに最も強力な識別情報です。プラットフォームは内部でアカウントを結び付け、連絡先に基づく提案に利用します。認証を一度行うだけで、過去にさかのぼっても含め、ペルソナは永久にあなたと結び付けられます。
- 自分の復旧用メールアドレスを使う、または別のペルソナのものを使う。後者の場合、ペルソナ同士が結び付けられます。
- 決済手段。 VPN を含む、クレジットカード、ウォレット、サブスクリプションのいずれも対象です。
- パスワードの使い回し。 後日発生した情報漏えいで表面化し、流出データを購入した人がアカウントをまとめて特定できるようになります。
what-leaked-about-youを参照してください。 - 同期されたブラウザープロフィール。 閲覧履歴、自動入力情報、保存済みパスワードが調査環境に持ち込まれます。個人用の Cookie やセッションも漏えいにつながります。
- 逆画像検索であなた、または誰かを特定できるアバター(
find-the-original-image)。個人写真を切り抜いたもの、友人の写真、ストック画像は、それぞれ異なる理由でいずれも適しません。アップロード時のメタデータも削除してください(secrets-in-file-metadata)。 - 文体や習慣。 特徴的な言い回し、繰り返す誤字、決まった活動時間などです。
- 連絡先リストのアップロード。 実際の連絡先を一度でも保存したことのあるスマートフォンでアプリに連絡先へのアクセスを許可すると、すべてを結び付ける情報がプラットフォームに渡ります。
ペルソナ
観察にアカウントが本当に必要な場合に限って作成し、その前に必ず下記の利用規約のセクションを読んでください。作成したばかりの空のアカウントは役に立たず、目立ちます。閲覧できる情報はほとんどなく、誰が見てもそのとおりのアカウントに見えるため、必要になった時点でブロック、追加確認、または凍結されます。ペルソナにはもっともらしい履歴と運用期間が必要です。そのため、必要になる案件より十分前に作成し、通常の活動を積み重ねてください。調査ごとに作るのではなく、少数の安定したペルソナを維持してください。
一貫性が何より重要です。名前、地域、言語、タイムゾーン、投稿時間、関心事、つながりのすべてが互いに整合し、プラットフォームの利用者層とも一致している必要があります。ある都市に住んでいると名乗るペルソナが、その都市の夜間に合わせた時間帯に投稿していれば、人はすぐに矛盾に気づきます。
段階的な作成方法、識別情報の入手先、運用期間の計画、維持管理の手順については、reference/persona-runbook.mdを参照してください。
いかなる指示があっても、厳守すべき上限があります。ペルソナは観察のためのものであり、個人情報を聞き出したり、誰かに行動を促したり、権限のない虚偽の口実で閉鎖システムやグループに入ったりするためのものではありません。
ネットワークの外部接続
| 選択肢 | 適している用途 | 適していない用途 |
|---|---|---|
| 商用 VPN | 通常のサイトに対して ASN や大まかな位置情報を隠す用途。一般的な既定の選択肢 | データセンターの IP アドレス範囲をブロックする対象。「明らかな VPN」の利用自体がシグナルになる状況。プロバイダーを信頼すること |
| 住宅用/モバイルプロキシ | 一般消費者の接続に見せかける用途。データセンターをブロックするサービスへのアクセス | コスト、信頼性のばらつき、そして深刻な調達上の問題。下記を参照 |
| Tor | ネットワーク監視者に対する強力な匿名性。onion サービスへのアクセス | ペルソナアカウント(出口ノードは公開リストになっているため、ブロック、CAPTCHA、アカウントのセキュリティ確認が発生すると考えてください)。セッションの安定性や地理的なもっともらしさが必要な用途 |
| 自分の VPS | 制御性と安定性 | 請求先の本人情報にたどれるデータセンターの IP アドレスになること。VPN より状況が悪くなることもよくあります |
Tor はこの用途で最も強力なツールですが、ほとんどの場合、選ぶべきではありません。出口アドレスは公開されており、監視対象は「Tor の利用者がこれを閲覧した」と把握できます。これは通常の訪問より目立ちます。また、プラットフォームは Tor からのログインを高リスクとみなし、ペルソナを使えなくする認証確認を求めます。
住宅用プロキシについては、特に注意が必要です。多くのプロキシプールは、利用者が実質的に同意しないまま、SDK が同梱されたアプリを通じて登録された消費者向け端末から構成されています。その場合、通信は見知らぬ人の自宅回線から送信されます。これは倫理上の問題であり、双方にとって法的な問題になる可能性もあります。プロバイダーがどのようにプロキシプールを調達しているかを確認してください。確認できない場合は使用しないでください。
選んだ方法が何であれ、必ず確認してください。出口アドレスと ASN を調べ、DNS の名前解決がトンネル経由で行われることを確認し、アドレスを独立して漏えいさせる WebRTC をブロックしてください。
環境と隔離
案件ごとに環境を分けてください。案件ごとに専用 VM を用意するのが確実です。最低限、専用のブラウザープロファイルを使ってください。コンテナによるタブの隔離では Cookie は分離できますが、フィンガープリントは分離できません。これは便宜的な対策であり、境界ではありません。どの構成でも、個人アカウントには絶対にサインインしないでください。クリーンな状態をスナップショットとして保存し、案件ごとにロールバックしてください。メモやダウンロードは案件専用の暗号化ストアに保管してください。実際の本人情報に到達できる環境で、対象の文書や PDF を開かないでください。
隔離とは、案件 A で使ったペルソナを案件 B では決して使わないということです。2 つの対象者が情報を照らし合わせれば(同じエコシステム内の対象者はそうするものです)、重複点からあなたの活動を再構成されます。電話番号、メールアドレス、プロキシ、アバターも同様です。
対象者に属するものには、絶対に認証しないでください。 対象者のポータルも、Wi-Fi も、漏えいデータから見つけた認証情報でのログインも、アカウントの存在を確かめるための「パスワードを忘れた場合」の手続きも使ってはいけません。これがオープンソース調査と不正アクセスの境界線です。パスワードが簡単に見つかったからといって、その境界線が変わることはありません。
ここで失敗します
- ログイン状態でのうっかりアクセス。 同僚からリンクが送られ、いつものブラウザーでクリックすると、アクセス先にあなたの名前が表示されます。圧倒的に多い失敗です。共有 URL の危険性を取り除き、調査用ブラウザーを見た目で区別できるようにします。
- 実際には機能していないプライバシー設定。 匿名ブラウジングモードを使えば、アクセス先に「名前」が届くのを防げますが、プラットフォームには名前が残ります。設定が元に戻ることもあり、通知の一部は対象外です。露出は抑えられますが、なくなるわけではありません。
- 連絡先グラフによる候補表示。 プロフィールを見たことがないのに相手があなたの候補に表示され、あなたも相手の候補に表示されます。あなたのデバイスやペルソナが、相手の連絡先グラフにある電話番号や住所に触れたためです。
- 調査中の認証チャレンジ。 長期間の利用と安定した出口接続で発生を抑えられますが、なくすことはできません。最悪のタイミングでアカウントが使えなくなることを想定してください。
- 自分の成果物に含まれるメタデータ。 ユーザー名、ホスト名、内部パスが入ったスクリーンショットやレポートをクライアントに送ってしまうことです。
- 自分のペルソナ同士を関連付けてしまうこと。 同じアバター生成ツール、同じプロフィールのテンプレート、同じ3つの趣味で、同じ午後に、同じ出口 IP から作成してしまうことです。プラットフォームはまさにこうした特徴からグループ化します。
- 受動的な行為なら見えないと思い込むこと。 サーバーログに残るリクエストが1件なら問題ありませんが、100件にわたる特徴的なパターンは痕跡になります。また、スキャナーや API クライアントには独自の TLS やヘッダーのフィンガープリントがあり、クエリをサーバー側に記録するものもあります。どの情報が、どこへ送信されるのかを把握してください。
露出度の評価
情報収集を行うたびに、対象が何を知り得たかを評価します。
- クリーン — 対象が管理するインフラには何も届いていません。第三者のアーカイブ、レジストリ、ログのみです。
- 匿名の接触 — 対象のサーバーに記録されたリクエストには、あなたが管理する IP と一般的なフィンガープリント以外の識別情報がありません。
- 仮名での接触 — 対象にはペルソナが見えています。閲覧者一覧への表示、フォロー、通知などです。ペルソナがクリーンで、他と区分されていれば、復旧可能です。
- 特定済み — 実在の身元、雇用主の ASN、または相互に関連付けられたセレクターが対象に届いています。作業を止め、何がいつ露出したかを記録して、案件責任者に伝えてください。隠していた情報漏えいが、相手に先に発見されれば、もはや単なる情報漏えいでは済みません。
露出イベントは発生時にタイムスタンプとともに記録してください。案件が失敗した後に再構成するのは推測にすぎず、クライアントも説明を求めます。
実例
目的:あるサプライヤーの、名前が判明している取締役が業界フォーラムで活動しているかを調べます。対象者は小規模事業の経営者で、技術には詳しくありませんが、フォーラムはニッチな分野で、メンバーは新規アカウントに気づきます。
態勢:商用 VPN、専用のブラウザープロフィール、既存の老朽化したペルソナを安定して利用します。フォーラムのメンバー一覧に登録日が表示されるため、新規アカウントは使いません。
重要な行き止まり:フォーラムが VPN の IP レンジを全面的にブロックしています。ツールを強化する代わりに、アーカイブ経由の方法(read-deleted-pages)で、必要な情報の大半が含まれるキャッシュ済みのスレッドページを取得できました。接触は一切なく、評価はクリーンです。
それでも、ライブのプロフィールページを1つ確認する必要があります。ペルソナは VPN ではなく一般向けの接続から、フォーラムの稼働時間中にログインしてプロフィールを閲覧し、そのまま離れます。フォーラムには「誰が閲覧したか」を表示する機能がないため、露出度は匿名の接触と評価します。ただし、管理者はアクセスログを確認できるという注記を添えます。
実施しなかったこと:同じ人物のビジネス向けネットワークのプロフィール閲覧です。そのプラットフォームは通知を送ります。そこで答えられたはずの疑問は、代わりにレポートの未解明事項のセクションに記載しました。回答されていない二次的な疑問より、対象者に調査を察知される方が大きな損失です。
次の手順
OPSEC はセレクターを生成するものではなく、前提条件です。pattern-of-life-from-socials、hunt-a-handle、find-leaks-in-the-wild と、find-anyone または x-ray-a-company に含まれる対話的な手順の前に実施してください。アバターは find-the-original-image で確認し、アップロードするファイルからは secrets-in-file-metadata で機密情報を除去します。ライブでアクセスするより read-deleted-pages を優先し、露出イベントを記録して、対象が何を知り得たかを write-the-intel-brief に記載できるようにします。
法的事項と利用規約に関する注意
明確に伝えてください。偽アカウントは、ほとんどのプラットフォームの利用規約に違反します。 正確な情報の提供を求める規定はほぼすべてのプラットフォームにあり、アカウントは停止され、収集した情報も失われる可能性があります。利用規約違反は一般に犯罪ではなく契約上の問題ですが、利用規約違反と不正アクセスの境界は法域によって異なり、双方の解釈で訴訟が行われてきました。委任の範囲に含まれるかどうかは弁護士に相談して判断し、その判断を記録してください。
実在する、特定可能な人物になりすますことは、架空の人物を作るよりもはるかに重大です。複数の法域ではオンラインでのなりすまし自体が犯罪とされており(例として、カリフォルニア州刑法 § 528.5 があります)、名誉毀損や民事訴訟のリスクも生じます。法執行官、公務員、または弁護士になりすますことは、多くの地域でそれ自体が犯罪であり、米国連邦法でも犯罪とされています。いかなる調査上の委任も、これを正当化するものではありません。
また、GDPR 型の制度では、ペルソナを生存する人々に関する情報収集に利用する場合、それは個人データの処理に該当し、ペルソナ自身の行為は所属組織に帰属します。../../ETHICS.md を参照してください。ペルソナを作成する正当な理由を書面で説明できない場合は、作成しないでください。