Github access token exposure

hackerone公开了一个五万美元的报告,今天想谈谈这个报告。

链接: https://hackerone.com/reports/1087489

其实这个报告很简单,就是一个Shopify的员工开发了一个应用,但是不小心把.env 文件发布了。但是这个.env文件中有shopify Github仓库的token,这就拿到了github仓库的权限。

这里为什么没有发现这个github token呢,其实主要是因为这个员工开发的是Electron应用,发布到了公网,而且还有人去分析这个Electron应用并在文件系统中找到这个.env文件夹。

这个漏洞发生的几率是非常小的,第一是员工用了工作电脑,还发布了一个应用,而且这个应用还打包了本地的.env文件夹,最后还得安全人员去分析这个应用。

但是我们可以从这个例子中尝试一下怎么去扫描github token等这种验证信息。

目前,github 通过密码扫描服务,会去提醒公共仓库的用户这个安全点。链接:https://docs.github.com/cn/code-security/secret-security/about-secret-scanning

扫描器列表

  1. Gittyleaks 看着不行
  2. scanning feature  github官方扫描
  3. Git Secrets  AWS发布的,用来阻止提交AWS密钥
  4. Repo Supervisor 找到错误的配置和密码
  5. Truffle Hog  这个工具使用正则表达式进行搜索,包括了分支和提交历史。(推荐使用)
  6. Git Hound go写的检查工具
  7. Gitrob  go写的,已经停止维护
  8. Watchtower Radar API AI驱动的检测,发现是个商业项目,可以研究一下
  9. Repo security scanner 是一个命令行工具
  10. GitGuardian  也是一个商业产品
  11. Shhgit 这个很牛b
  12. yar
  13. GitGot
  14. git-wild-hunt

国内的github 扫描器

  1. GSIL
  2. Hawkeye
  3. 码小六 推荐使用 https://github.com/4×99/code6

扫描器的问题

传统的扫描器其实就是去用关键字去匹配,而且还是使用的Github自己的查询结果,这种关键字查询的问题和官方的服务是重复的,收货不会多。

这和账号本身出发是冲突的,我们要找的这种类型的泄露,其实是和账户人的公司,职位有关系。

优化方向

  1. 关键字问题

其实是需要自己来定制规则,很多漏洞都需要很敏感,而且需要深度扫描,还需要和别人抢时间,确实很难。

dotfile 文件 例子:https://www.freebuf.com/articles/web/201871.html

2.扫描的范围

包括下面的例子,提交的记录也是需要扫描

3.从人出发和从项目出发

从人出发, 可以全网扫描,把github的账户按照公司归类并从账户的其他项目中寻找公司信息

从项目出发,可以通过一个项目,去得到所有的提交者的所有repo,并针对性的寻找信息

监控来讲,其账户的最新的star记录也是有用的,我们已经知道了账号属于的公司,就可以判断这个人,这个公司的技术栈,也知道最近在关注什么样的技术,其实可以干的事情是非常多的。

4.AI的角色

其实这里还是用很多NLP的东西,还有一些分类算法,聚类算法,还是看数据的多少,全网爬github应该不难,重点是需要关注的点是什么,当然用账号信息做数据挖掘也是可以的。

参考资源:

1.Building a GitHub Secrets Scanner https://developer.okta.com/blog/2021/02/01/building-a-github-secrets-scanner

2. 自己动手打造Github代码泄露监控工具  https://www.freebuf.com/articles/web/173479.html

3. 自己动手打造Github代码泄露监控工具之改进篇 https://www.freebuf.com/sectool/188102.html

4.如何利用GitHub搜索敏感信息 https://www.freebuf.com/articles/network/192643.html

发表评论

Fill in your details below or click an icon to log in:

WordPress.com 徽标

您正在使用您的 WordPress.com 账号评论。 注销 /  更改 )

Facebook photo

您正在使用您的 Facebook 账号评论。 注销 /  更改 )

Connecting to %s