Gitやクラウドストレージ、チャットなどに漏えいした認証情報を見つけ、現在も有効か確認するCLI。
mongodb/kingfisher
Rust製のシークレットスキャナー。漏えいした認証情報を検出し、有効性やアクセス範囲を調べ、失効にも対応します。
- スター
- 1,271
- フォーク
- 122
- 未解決の Issue
- 13
- 最終コミット
- 一昨日
これは何?
Kingfisherは、ソースコード、Gitの履歴、アーカイブ、コンテナイメージ、クラウドのオブジェクトストレージ、GitHub、GitLab、Jira、Confluence、Slack、Postmanなどの開発者向けプラットフォームをスキャンし、漏えいしたシークレットを検出します。Betterleaks TOML形式やKingfisher YAML形式を含む数百種類の組み込み検出ルールを備え、プロバイダーのライブAPIを使って、見つかった認証情報がまだ有効かどうかを確認します。
対応プロバイダーでは、blast-radiusモードで、有効な認証情報がアクセスできる範囲を調べられます。たとえば、AWSロール、GCPサービスアカウントの偽装、影響を受けるリソースのスコープを確認できます。失効機能はオプトイン方式で、プロバイダーごとに用意されたワークフローに限定されます。結果はJSON、SARIF、HTML、BSONとしてエクスポートできるほか、ローカルまたはホスト型のブラウザビューアーで確認できます。このビューアーではGitleaksとTruffleHogのレポートも読み込めます。
Kingfisherは、Homebrew、PyPI、Docker経由でインストールできるCLIとして提供されます。また、kingfisher-scanner crateを使ってRustアプリケーションに組み込んだり、kingfisher_sdkモジュールを使ってPythonから利用したりできます。
主な機能
- 01数百種類の組み込みルールでシークレットを検出し、TOMLまたはYAML形式のカスタムルールにも対応します。
- 02プロバイダーのAPIを使って、検出した認証情報が有効かどうかを確認します。
- 03--blast-radiusを使い、対応する認証情報のID、権限、アクセス可能なリソースを特定します。
- 04Gitの履歴、ステージ済みの変更、アーカイブ、SQLiteデータベース、Pythonバイトコードをスキャンします。
- 05GitHub、GitLab、Azure Repos、S3、GCS、Azure Blob、Docker、コラボレーションツールに接続します。
- 06JSON、SARIF、HTMLなどの形式で出力でき、レポートビューアーも内蔵しています。
ユースケース
- コミット前やCIで、リポジトリやその履歴をスキャンして漏えいしたキーを検出する。
- クラウドストレージのバケットやコンテナイメージを監査し、認証情報の露出を確認する。
- 大量の検出結果をトリアージし、認証情報がまだ有効かどうかを特定する。
- インシデント対応時に、対応する漏えいトークンを失効させ、アクセス可能な範囲を確認する。
クイックスタート
- 1
READMEに記載されているインストール方法でKingfisher CLIをインストールします
- 2
ローカルディレクトリまたはリポジトリをGit履歴も含めてスキャンし、JSONを出力します
kingfisher scan /path/to/code --format json
使う前に知っておきたいこと
- 失効処理と影響範囲の分析は、対応しているプロバイダーと認証情報のみが対象です。
- 多くのリモートプラットフォームをスキャンするには、各サービスのAPIトークンが必要です。
収録されている特集
トピック
よくある質問
- kingfisher とは?
- Rust製のシークレットスキャナー。漏えいした認証情報を検出し、有効性やアクセス範囲を調べ、失効にも対応します。 Kingfisherは、ソースコード、Gitの履歴、アーカイブ、コンテナイメージ、クラウドのオブジェクトストレージ、GitHub、GitLab、Jira、Confluence、Slack、Postmanなどの開発者向けプラットフォームをスキャンし、漏えいしたシークレットを検出します。Betterleaks TOML形式やKingfisher YAML形式を含む数百種類の組み込み検出ルールを備え、プロバイダーのライブAPIを使って、見つかった認証情報がまだ有効かどうかを確認します。
- kingfisher は無料で使えますか?ライセンスは?
- kingfisher は Apache-2.0 ライセンスのオープンソースです。商用製品で使う前にライセンス条件を確認してください。
- kingfisher は今もメンテナンスされていますか?
- 活発にメンテナンス中。kingfisher の最終コミットは 2026年10月20日 です。
- kingfisher は何に使えますか?
- コミット前やCIで、リポジトリやその履歴をスキャンして漏えいしたキーを検出する。 クラウドストレージのバケットやコンテナイメージを監査し、認証情報の露出を確認する。 大量の検出結果をトリアージし、認証情報がまだ有効かどうかを特定する。 インシデント対応時に、対応する漏えいトークンを失効させ、アクセス可能な範囲を確認する。
- kingfisher のインストール方法は?
- READMEに記載されているインストール方法でKingfisher CLIをインストールします ローカルディレクトリまたはリポジトリをGit履歴も含めてスキャンし、JSONを出力します: kingfisher scan /path/to/code --format json
- kingfisher はどこで入手できますか?
- ソースコードとインストール手順は GitHub にあります:https://github.com/mongodb/kingfisher
概要はプロジェクトの README をもとに AI が生成しています。GitHub の数値は毎日更新されます。
関連プロジェクト
正規表現やASTではなくコードに似たパターンでバグの発見やコーディング規約の徹底を支援する、高速なオープンソース静的解析CLI。
IaC、コンテナイメージ、オープンソースパッケージを静的解析し、クラウドの設定ミスやCVEを検出するツール。
HashiCorp Vaultのオープンソース系譜からフォークされた、シークレット、証明書、鍵を管理・保存・配布するオープンソースソフトウェア。
Trivyは、コンテナ、ファイルシステム、Gitリポジトリ、VMイメージ、Kubernetesを対象に、脆弱性や設定ミス、シークレット、SBOMを検出するオープンソースのセキュリティスキャナーです。
Gitリポジトリやファイル、標準入力からパスワードやAPIキー、トークンなどのハードコードされたシークレットを検出するCLIツール。