暫無描述

zricethezav cba584bb18 travis yaml 8 年之前
vendor 2d3bcc7e91 Markdown lint and Go Dep 8 年之前
.travis.yml cba584bb18 travis yaml 8 年之前
Gopkg.lock 2d3bcc7e91 Markdown lint and Go Dep 8 年之前
Gopkg.toml 2d3bcc7e91 Markdown lint and Go Dep 8 年之前
README.md a9c5d5a953 Code cleanup and badges 8 年之前
checks.go a9c5d5a953 Code cleanup and badges 8 年之前
checks_test.go 6eba1bb24e update regex test 8 年之前
leaks.go a9c5d5a953 Code cleanup and badges 8 年之前
leaks_test.go a9c5d5a953 Code cleanup and badges 8 年之前
main.go a9c5d5a953 Code cleanup and badges 8 年之前
options.go a9c5d5a953 Code cleanup and badges 8 年之前

README.md

GitLeaks

godoc GolangCI

Check git repos for secrets and keys

Features

  • Search all commits on all branches in topological order
  • Regex/Entropy checks

Installing

go get -u github.com/zricethezav/gitleaks

Usage and Explanation

Alt Text

./gitleaks {git url}

This will clone the target {git url} and run a diff on all commits. A report will be output to {repo_name}.json Gitleaks scans all lines of all commit diffs and checks if there are any regular expression matches. The regexs are defined in main.go. For example if a line in a commit diff like AWS_KEY='AKAI...' exists then the value after the assignment operator will be checked for entropy. If the value is above a certain entropy threshold then we assume that the line contains a key/secret. Work largely based on https://people.eecs.berkeley.edu/~rohanpadhye/files/key_leaks-msr15.pdf

TODO

  • Specify a target branch
  • Support for custom regex
  • Filter regex
  • Modify entropy cutoff