白帽黑客Dylan Ayrey发布了一款免费的开源工具“松露猪(Truffle Hog,这种猪在法国被用来寻找珍贵的食材松露)”,帮助开发人员检测自己是否在将项目公布在GitHub上时不小心泄露了密钥。
“松露猪”是一款Python工具,旨在搜索库包括整个提交历史和分支钟搜索能够代表密钥的高熵字符串如AWS密钥。
Ayrey指出,该模块能够遍历每个分支的整个提交历史并且检验从每个提交中检查每个diff,并为每个大于20个字符的blob的base63和Hex字符组评估香农熵,而20个字符是由每个diff中字符组组成的。如果检测到有高熵字符串大于20个字符,那么这些字符串就会被打印出来。
正如Reddit用户在讨论“松露猪”工具时说的那样,机器人经常会扫描GitHub搜寻可被用于恶意AWS实例的密钥,从而导致与服务提供商亚马逊不得不偿还数千美元。亚马逊已经采取了积极主动地方式临时拦截了密钥可从公共库中找到的AWS账户。
Ayrey还在去年创建了一个演示,告警用户注意粘贴劫持(pastejacking)攻击。这种攻击依赖JavaScript控制剪贴板内容并诱骗人们粘贴甚至执行恶意代码。
“松露猪”在GitHub上收获的星数已经超过700颗,成为Ayrey继Pastejack项目之后第二大最流行的项目。
安全研究人员常常告警开发人员在GitHub上发布项目时要注意代码泄露敏感信息的风险。2013年1月份,GitHub推出了一种新的内部搜索功能来找到密码、加密密钥和其它数据。当时用户在GitHub上发现了数千个此类密码。近期,专家告警Slack开发人员称他们在GitHub上公布Slack访问口令时,不知不觉中暴露了敏感数据如企业的重要信息。

