Avoid security credentials on GitHub

Andreas Wittig – 27 Apr 2016

Your AWS account is a valuable target for bad guys. With access to your security credentials an attacker is potential able to steal sensitive data, utilize resources on your costs, or sabotage your infrastructure.

Two years ago AWS and their customers observed that bad guys started to crawl public GitHub repositories for security credentials granting them access to AWS accounts. Turns out even the most cautious engineer commits secrets to public GitHub repositories from time to time. We are all humans!

When working with one of our consulting clients to increase the security of their environment, we found a helpful tool, preventing you from adding secrets to your Git repositories: git-secrets.

git-secrets allows you to create hooks for your local repositories. Should you ever try to commit security credentials the commit will fail.

Installation

The following steps will download and install the latest version of git-secrets.

Andreas and Michael Wittig

Please support our work!

We have published 327 articles, 41 podcast episodes, and 15 videos. It's all free and means a lot of work in our spare time.

Thanks to Alan Leech, Alex DeBrie, e9e4e5f0faef, Goran Opacic, jhoadley, Shawn Tolidano, Thorsten Hoeger, Todd Valentine, Vince Fulco, and all anonymous supporters for your help! We also want to thank all supporters who purchased a cloudonaut t-shirt. It gives us great pleasure to send our t-shirts all over the world.

With your help, we can continue to produce independent & high-quality content focused on AWS. Please support us!

Support us
git clone https://github.com/awslabs/git-secrets
cd git-secrets
make install

Configuration

git-secrets allows you to search for any secrets. You are able to add custom providers or use the pre-defined provider to scan for AWS security credentials.

git secrets --register-aws --global

You are not done yet! Next you need to add hooks to all your local repositories.

cd /path/to/repository
git secrets --install

Add a configuration template if you want to add hooks to all repositories you initialize or clone in the future.

git secrets --install ~/.git-templates/git-secrets
git config --global init.templateDir ~/.git-templates/git-secrets

git-secrets is a simple tool preventing you from committing secrets and credentials into Git repositories. Can fully recommend using it!

Tags: aws security iam
Andreas Wittig

Andreas Wittig

I launched cloudonaut.io in 2015 with my brother Michael. Since then, we have published hundreds of articles, podcast episodes, and videos. It’s all free and means a lot of work in our spare time. We enjoy sharing our AWS knowledge with you.
Have you learned something new by reading, listening, or watching our content? If so, we kindly ask you to support us in producing high-quality & independent AWS content. We look forward to sharing our AWS knowledge with you.

Support us

Feedback? Questions? You can reach me via Email, Twitter, or LinkedIn.