EarlyBird is a sensitive data detection tool capable of scanning source code repositories for clear text password violations, PII, outdated cryptography methods, key files and more. It can be used to scan remote git repositories, local files or directories or as a pre-commit step.
Installation
Linux & Mac
Running the build.sh
script will produce a binary for each OS, while the install.sh
script will install Earlybird on your system. This will create a .go-earlybird
directory in your home directory with all the configuration files. Finally installing go-earlybird
as an executable in /usr/local/bin/
.
./build.sh && ./install.sh
Windows
Running build.bat
will produce your binaries while the install.bat
script will create a 'go-earlybird' directory in C:\Users\[my user]\App Data\
, and copy the required configurations there. This script will also install go-earlybird.exe
as an executable in the App Data directory (which should be in your path).
build.bat && install.bat
Usage
To launch a basic EarlyBird scan against a directory:
$ go-earlybird --path=/path/to/directory
$ go-earlybird.exe --path=C:\path\to\directory
or to scan a remote git repo:
$ go-earlybird --git=https://github.com/americanexpress/earlybird
Click here for Detailed Usage instructions.
Documentation
Why Are We Doing This?
The MITRE Corporation provides a catalog of Common Weakness Enumerations (CWE), documenting issues that should be avoided. Some of the relevant CWEs that are handled by the use of EarlyBird include:
Contributing
We welcome your interest in the American Express Open Source Community on Github. Any Contributor to
any Open Source Project managed by the American Express Open Source Community must accept and sign
an Agreement indicating agreement to the terms below. Except for the rights granted in this
Agreement to American Express and to recipients of software distributed by American Express, You
reserve all right, title, and interest, if any, in and to your contributions. Please
fill out the Agreement.
License
Any contributions made under this project will be governed by the Apache License 2.0.
Code of Conduct
This project adheres to the American Express Community Guidelines. By participating, you are expected to honor these guidelines.