stille-hunter

情報漏えいを静かに見張る、カナリア型の検知ツール(オープンソース)

本物そっくりの偽レコード(カナリア)を自社データに仕込み、それが外部に現れた瞬間に情報漏えいを検知する、防御専用のオープンソースツールです。

stille-hunter(シュティレ ハンター) は、「自社のデータが、いつ・どこから漏れたのか」を知るためのツールです。 本物そっくりの偽の会員レコード(カナリア)に一意のトークンを埋め込み、自社のデータベースやエクスポートに仕込んでおきます。 そのカナリアが外の世界に現れたら、それは情報漏えいの確かな証拠です。

仕込んだあとは、静かに罠を張って待つだけ。読み取り専用・検索専用で、他人のシステムには一切触れません。

カナリアトークン 漏えい検知 流出元の特定 読み取り専用 防御専用 Apache-2.0

GitHubで見る

stille-hunterの全体像

stille-hunterの全体像 ― カナリアを生成して自社データに仕込み、台帳で管理。情報漏えいが起きると、着信検知と検索検知の2つの経路で流出を確定する

仕込む(カナリア生成・自社データへの仕込み・極秘の台帳)→ 情報漏えい発生 → 着信検知と検索検知の2つの経路で流出を確定

しくみ

1

カナリアを生成する

本物そっくりの偽の会員レコードをつくり、1件ずつに一意のトークンを埋め込みます。

2

自社データに仕込む

データベース、エクスポートファイル、テーブルなど、守りたいデータの中にカナリアを紛れ込ませます。

3

台帳を手元に残す

「どのトークンを、どこに仕込んだか」の対応表(台帳)は極秘として手元だけに保管し、コミットも配置もしません。漏えいが起きたとき、流出元を逆引きするために使います。

検知 ― 2つの経路

INBOX

着信検知

自社ドメインのカナリア宛てにメールが届けば、キャッチオールで即座に検知します。いちばん速い経路です。

設定:detect=inbox

SEARCH

検索検知

トークンを流出ソース(Have I Been Pwned、コード検索など)で照合します。フリーメールのアドレスを使ったカナリアも網羅できます。

設定:detect=search

どちらかの経路でカナリアが見つかると、stille-hunterは流出を確定し、どの仕込み(seed_tag)が漏れたかを示して、終了コード1で知らせます。 台帳と照らし合わせれば、どのデータベースやファイルから漏れたのかを突き止められます。

安全への設計

  • 防御専用・読み取り専用 — 自社のデータに罠を張って待つだけで、他人のシステムには一切触れません。
  • 検索専用 — 外部の流出ソースは照合のために検索するだけです。
  • 標準ライブラリのみ — 余計な依存を持たず、導入先の環境を汚しません。
  • 署名付き

Human-directed, AI-built ― 人が方向づけ、AIがつくる

人が方向づけ、AIがつくる ― メンテナー(人)が方向を決めてレビューし、AIアシスタントが実装してPRを出し、GitHubでCIと人のレビューを経てマージする
このプロジェクトの考え方

stille-hunterは、kevwardと同じく「人が方向づけ、AIがつくる(Human-directed, AI-built)」進め方でOSSを運営する実験です。 目標を定め、判断し、すべての変更をレビューするのは人。実装の多くはAIアシスタントが担います。

攻撃者は数多く、意欲も高い。一方で、熟練した防御側は不足しています。 人が方向づけたAIがその差を埋められる——それがstille-hunterの賭けです。

だから、AIアシスタントによる貢献も歓迎します。もちろん人の貢献も大歓迎です。 すべての変更は、CI(ruff+テスト)と人のレビューという同じ関門を通ります。

ライセンス

stille-hunterは、Forex Robotics株式会社がオープンソース(Apache-2.0)で開発・公開しています。 同じく防御専用のサーバ向けツール kevward もあわせてご覧ください。

GitHub リポジトリ kevward を見る