Siftは、パスワードやAPIキーなどの機密データを、企業が業務データを保管するあらゆる場所から検索する無料のオープンソースコマンドラインツールです。ローカルディスク、Windowsファイル共有、Active Directoryドメイン全体、SharePoint、OneDrive、Teamsチャンネルのファイル、Slackメッセージ、Jira、Confluenceまで対応しています。ペネトレーションテストを手がけるコンサルティング会社Stratus Securityが自社の業務のために開発し、無償で公開しました。

認証情報はどこに潜んでいるか
Colin Watson氏はStratus SecurityのCTOで、自らも実際の業務でペンテストを担当しています。同氏はHelp Net Securityの取材に対し、「例えば直近のペンテストでは、このツールによってJiraのチケットコメントに数千件もの認証情報が見つかりました。しかし過去5年間担当していたペンテスターは、標準的なツールや手法に含まれていなかったため、一度も気づいていませんでした」と語りました。
Watson氏によれば、この発見は同社が顧客に提供するアドバイスを変えたものの、危険度に応じた優先順位リストを作るという形にはならなかったといいます。「アドバイスは確実に変わりましたが、どの箇所も他より優先度が高いということはありません。私たちは、可能性のあるすべてのサービスを同じように確認することを推奨しています」。ここから汲み取るべき教訓が一つあるとすれば、ファイル共有のスキャン結果がクリーンだったとしても、それはファイル共有についてしか分からないということです。
処理速度も向上、その差はどれほどか
Stratusは2026年8月24日、合成データで構築したファイルリポジトリに対してSiftとSnaffler 1.0.244を比較検証しました。各シナリオにつき3回ずつ実行しています。25万個の小さなファイルをスキャンした際、Siftは10.61秒で完了したのに対し、Snafflerは25.48秒かかりました。5.5GiB分のコンテンツを処理した際は、Siftが0.69秒、Snafflerが6.32秒。深く幅広いディレクトリツリーでは、Siftが1.12秒、Snafflerが2.37秒でした。3つの結果を平均すると、Siftは12.42秒で完了したのに対しSnafflerは34.18秒を要し、プロセッサ時間ではSiftの62.11秒に対しSnafflerは276.56秒を消費しました。
より差が大きいのはメモリ消費量です。Snafflerは平均337MiB、ピーク時429.5MiBだったのに対し、Siftは平均92MiB、ピーク時102.2MiBにとどまりました。これらはStratusが自社ツールを対象に、合成データを使って独自に行ったベンチマークであるため、この比率についてはあくまで傾向を示すものとして受け止めるべきでしょう。なお、Stratusは今回の比較にあたり、1分に1回のチェックイン待ちをせず即座に完了を報告するようSnafflerにパッチを当てており、これによりSiftに有利に働きかねない要因を取り除いています。
スループットはデフォルトでは制限がなく、本番環境のファイルサーバーに過度な負荷をかけるようなスキャンは、誰かが中止することになるスキャンです。スレッド数や読み取りレートを指定するフラグが用意されているのはそのためです。また、すべてのスキャンコマンドはチェックポイントを書き出すため、実行が中断された場合でも最初からやり直すのではなく、中断地点付近から再開できます。
シークレットのスキャンには誤検知がつきものですが、Siftは検出結果をローカルの言語モデルに渡してフィルタリングすることができます。このモデルは自分が管理するマシン上でOllamaを通じて実行され、スキャンデータが外部に流出することはありません。これは、対象となるデータが顧客先に放置されていたあらゆるパスワードである場合には重要なポイントです。
誰かがこれを維持し続けなければならない
Stratusは、Siftを開発する前はSnafflerのフォークを保守していましたが、積み重なった場当たり的な修正が書き直しよりも手間のかかるものになったため、これを放棄しました。現在では、その保守作業は顧客案件を抱えるコンサルティング会社の手に委ねられています。オープンソースツールが静かに死んでいくのは、たいていこうした経緯によるものです。
Watson氏はこの点を避けて語りませんでした。「オープンソースソフトウェア全般に言えることですが、保守が止まってしまうリスクは常に存在します。ただ、私たち自身がこのツールを実際に使っているため、保守を続けるモチベーションがありますし、人気が高まるにつれて、ビジネスの評判という面でも保守を続ける動機が生まれます」。同氏は外部からのパッチや提案を歓迎しているとし、「結局のところ、オープンソースツールはすべてコミュニティによってより良いものになる」と述べています。
検出ルールは単純なJSONファイルで定義されているため、ルールの追加にはコンパイラではなくテキストエディタがあれば十分です。また、カスタムルールディレクトリを指定すると、同梱のカタログに追加されるのではなく、それを置き換える形になります。リリースされるバイナリはまだコード署名されていないため、ダウンロードしたファイルは公開されているSHA256のハッシュ値と照合して確認する必要があります。
SiftはGitHubで無料で公開されています。
翻訳元: https://www.helpnetsecurity.com/2026/09/02/sift-open-source-secret-scanning/