一款能在GitHub代码库中探测密钥的工具:Truffle Hog

TruffleHog是一款用Python开发的开源工具,用于帮助开发人员检测他们在GitHub上发布的项目代码中是否意外泄露了密钥,如AWS密钥等。该工具会检索代码库中每一个分支的完整提交记录并检查每一次提交的git diff信息,以查找可能表示密钥的高熵字符串。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

工具简介

这款名叫“Truffle Hog”的免费开源工具可以帮助开发人员检测自己在GitHub上发布的项目代码是否意外泄漏了密钥。

Truffle Hog是一款采用Python开发的工具,它可以检索GitHub代码库的所有代码提交记录以及分支,并搜索出可以表示密钥(例如AWS密钥)的高熵字符串。

运行机制

该工具的开发者Dylan Ayrey解释称:

“Truffle Hog会检索代码库中每一个分支完整的代码提交记录,而且也会检查每一次提交的git diff信息,然后对每一个长度超过20个字符的base64字符集和十六进制字符集的香农熵(Shannon entropy)进行估值。如果TruffleHog检测到了一个长度大于20个字符的高熵字符串,它便会将其打印输出至屏幕。”

一些Reddit用户目前已经在社区开始讨论Truffle Hog了,因为在此之前有攻击者曾利用工具在GitHub中搜索用户意外泄漏的AWS密钥,并将这些密钥用于恶意的AWS实例之中。由于这种类型的恶意活动会给亚马逊公司带来巨额的经济损失,因此亚马逊也将那些在公共代码库中意外泄漏了密钥的AWS账号暂时禁用了。

Dylan Ayrey是谁?

其实,有些用户可能早就熟知Ayrey了。Ayrey在去年曾专门制作了一个演示demo来警告用户“Pastejacking攻击”危险性。这种基于JavaScript的攻击可以修改用户剪切板中的内容,然后诱使用户在其他地方粘贴这些内容。此时的用户并不知道他们所粘贴的是恶意代码,而这些恶意代码则有可能在计算机中的任何地方得到执行。

Truffle Hog项目在GitHub上已经拥有超过700多位粉丝了,而这也使得该项目成了Ayrey继Pastejack攻击demo之后第二火爆的开源项目了。

开发人员不应该粗心大意

开发人员在将自己的项目代码提交至GitHub之前,一定要再三检查代码中可能存在的敏感信息,而这一点安全研究专家也已经多次警告过社区的开发人员了。在2013年1月份,GitHub也推出了一款新的内部搜索功能,开发人员可以利用这个功能来搜索代码库中的密码、加密密钥、以及其他的敏感数据。该服务一经推出,广大用户就立刻在GitHub中扫描到了大量意外泄漏的密钥

工具下载与安装 – 【GitHub主页】

下载

 
 
  1. python truffleHog.py https://github.com/dxa4481/truffleHog.git 

安装

Truffle Hog唯一的依赖组件就是GitPython,你可以通过下列命令搭建依赖环境:

 
 
  1. pip install -r requirements.txt 

作者:Alpha_h4ck

来源:51CTO

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值