ツール
入力
結果
結果はここに表示されます。設定ファイルやスタックトレースをチャット、Issue、Gist に貼り付けた瞬間、そこに含まれる認証情報はあなたの管理下から離れます。このツールは、gitleaks(gitleaks/gitleaks、MIT)から移植した 50 の検出ルールで、貼り付けたテキストをスキャンします。対象はコードや設定に最も紛れ込みやすい認証情報で、OpenAI、Anthropic、AWS、GitHub、GitLab、Stripe、Slack、Google Cloud、Hugging Face、Alibaba Cloud、JWT、秘密鍵、そしてキーらしい値の一般的な代入です。検出結果はそれぞれ行、列、ルールとともに表示され、シークレットは先頭と末尾の 4 文字だけが示されます。
動作のしくみ
- gitleaks と同じく、ルールはそのキーワードのいずれかがテキストに含まれる場合にだけ実行されます。さらに一致したシークレットはルールごとのシャノンエントロピーの下限を超える必要があり、これで xxxxxxxx のようなプレースホルダーを除外します。
- gitleaks のグローバルおよびルールごとの許可リストを適用するので、AWS のドキュメントに載っているサンプルキー、${VARIABLE} 形式の参照、{{ template }} のプレースホルダー、よくあるストップワードは報告されません。
- gitleaks:allow を含む行はスキップします。また、特定のルールですでに説明がつく一般ルールの検出結果は取り除くので、各キーは 1 回だけ表示されます。
- スキャンはブラウザー内で行われます。出力にシークレット全体が含まれることはなく、スキャンした内容の履歴もサイトは残しません。
データの行き先
どこにも行きません。このツールは完全にブラウザ内で動作します。貼り付けたテキストはページが処理し、サーバーに送信されることも、ログに記録されることもありません。
このツールは鍵や資格情報を扱うため、実行に関する情報は一切保存されません。あなた自身の履歴にも残りません。
必要なポイント
このツールは無料です。ログインもポイントも必要ありません。
よくある質問
- ファイル内のパスワードが検出されなかったのはなぜですか?
- gitleaks と同様に、一般ルールが一致するのは、英字、数字と . = - などの一部の記号だけでできた値が、key、secret、token、password などの語を含む名前に代入されている場合だけです。# や ! を含む値や、普通の単語のように見えるパスワードは一致しません。検出結果がないことは、テキストに問題がない証明にはなりません。
- gitleaks を実行するのと何が違いますか?
- gitleaks のデフォルトルール 222 個のうち 50 個とその検出ロジックを使いますが、対象はリポジトリとその履歴ではなく、貼り付けた 1 つのスニペットです。スニペットにはファイルパスがないため、ファイルパスに依存するルールは除いています。リポジトリを調べるなら、gitleaks 本体を実行するか GitHub のプッシュ保護を有効にしてください。
- 有効なキーが見つかりました。どうすればよいですか?
- まずプロバイダー側でキーを無効化するかローテーションしてください。一度共有やコミットをしてしまったら、ファイルから削除するだけでは不十分です。次に、心当たりのない利用がないかプロバイダーのログを確認し、シークレットを環境変数やシークレットマネージャーに移してください。
背後にあるオープンソース
このツールは外部ライブラリを同梱しない独自実装です。gitleaks/gitleaks(MIT)はコードとして同じ仕事をします。自分のプログラムで同じことをしたいなら、Web ページを呼ぶのではなくそちらから始めてください。
gitleaks/gitleaks別の呼び方
- シークレット 検出
- API キー 漏洩 チェック
- gitleaks オンライン
- 認証情報 漏洩 検出
- .env シークレット チェック
- secret scanner