OSS探訪GitHubでログイン

Git history・files・stdinからAPI keyやpassword等のsecretを検出するsecret scanning CLI

スコアの見方

OSS規模スコアはStars・Watchers・Forks・Contributorsを対数圧縮して重み付けした現在の規模指標(上限なし)です。発掘スコアは現在のOSS規模スコアから発掘時点のOSS規模スコアを引いた値、更新ペースは直近30日Commit数、成長モメンタムは直近の観測期間におけるOSS規模スコア差、OSS健全度は取得できた更新状況・Community Health・Releaseの0〜100評価です。

Stars
29,644
主要言語
Go
ライセンス
MIT
リポジトリ最終更新
2026/09/30
ページ内ナビ

概要

Gitleaksはrepositoryやfilesystemに埋め込まれたcredential・API key・token等を検出するsecret scannerです。Git patch history、directory/file、stdinをscanでき、default rule setに加えてcustom TOML rules、allowlist、baseline、SARIF/JSON等のreportを利用できます。

特徴と向いている用途

公式資料に基づく紹介・実機未検証 · 内容確認日:

主な特徴

git・dir・stdinの3方式でsecretをscanする

gitleaks gitはgit log -pを使ってhistoryのpatchを走査し、dirはworking treeや任意file、stdinはstream入力を検査します。

出典:[1]

regex・entropy・keywordを組み合わせたruleをcustomizeする

default configurationはsecret patternごとのregex、entropy、keyword、allowlistを定義し、project固有の.gitleaks.tomlや外部configで上書き・拡張できます。

出典:[1][3]

baselineとmachine-readable reportでCI差分を管理する

既存findingをbaselineとして保持し、新規findingだけを検出できます。report formatはJSON、CSV、JUnit、SARIF、template等を選べます。

出典:[1]

向いている用途

commit前・pull request・CIでcredential混入を早期検出したい場合に向く

pre-commit hookやGitHub Action、local CLIとして同じscannerを利用できるため、developer環境とCIの両方でsecret detectionを揃えたいDevSecOps workflowに適します。

出典:[1]

導入前の確認

finding output自体にsecretを露出させないようredactionを使う

verbose outputやreportへ検出値が含まれる可能性があるため、共有logやCI artifactでは--redactを使い、reportへのaccessも制御します。allowlistはfalse positiveを抑える一方、広すぎる条件でreal secretを除外しないようreviewします。

出典:[1]

v8系の現行commandとconfig versionを固定する

v8.19以降は旧detect/protect commandがdeprecatedで、現行はgit・dir・stdinです。v8.30.1 sourceはGo 1.24.11を指定し、default configもminimum Gitleaks versionを持つためbinary/configのversion差に注意します。

出典:[1][3][4]

参考にした公式資料

  1. [1]Gitleaks v8.30.1 README(2026-10-04)
  2. [2]Gitleaks v8.30.1 release(2026-10-04)
  3. [3]Gitleaks v8.30.1 default configuration(2026-10-04)
  4. [4]Gitleaks v8.30.1 Go module(2026-10-04)
  5. [5]Gitleaks MIT license(2026-10-04)
編集部からの補足

scannerの出力自体がsecret leakにならないよう、CIや共有reportでは--redactを使ってください。v8.19以降はdetect/protectよりgit/dir/stdinを使います。

3ステップで試す

  1. 1

    Gitleaks v8.30.1 sourceを取得する

    stable release tagへ固定します。source buildにはgo.mod記載のGo 1.24.11系を用意してください。

    git clone --depth 1 --branch v8.30.1 https://github.com/gitleaks/gitleaks.git gitleaks-8.30.1
  2. 2

    local binaryをbuildする

    system installせずrepository内へCLI binaryを生成します。

    cd gitleaks-8.30.1 && mkdir -p bin && go build -o bin/gitleaks ./cmd/gitleaks
  3. 3

    無害なstdinだけをscanする

    real repositoryやcredentialをscanせず、CLIとstdin modeだけを確認します。共有logでreal secretを扱う場合は--redactを使ってください。

    cd gitleaks-8.30.1 && ./bin/gitleaks version && printf 'hello from gitleaks\n' | ./bin/gitleaks stdin --no-banner
公式READMEで確認

成長

成長の推移 · 直近30日

29,644 Stars

推移データを蓄積中です。

開発アクティビティ

直近90日・週次

Commit(直近30日)
0
Open PR
219

開発アクティビティを蓄積中です。

Built with

カテゴリとタグ

GitHubデータ

GitHubのデータGitHubの詳細データを見る

GitHub Topics

  • security
  • security-tools
  • git
  • golang
  • go
  • secret
  • gitleaks
  • devsecops
  • hacktoberfest
  • ci-cd
  • cicd
  • cli
Stars
29,644
Forks
2,264
Watchers
184
Open Issues
271
Contributors
211
所有者種別
Organization
主要言語
Go
ライセンス
MIT
リポジトリ最終更新
2026/09/30

このOSSの使い方や活用事例をMarkdownで投稿できます。管理者が承認した後に公開されます。

情報の誤りを報告

掲載内容に誤りや古い情報があればお知らせください。

このページを読んで、次に何をすればよいか分かりましたか?