漏洞挖掘365天挑战——Day007: Github扫描

Github access token exposure

8月份,hackerone上有个报告,五万美元的github access token exposure

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

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

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

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

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

Github扫描

目前github官网提供了密码扫描服务,链接:https://docs.github.com/cn/code-security/secret-security/about-secret-scanning,可以去看下他们是怎么做的。

那如果我们要扫描github,找出一些信息泄露,应该怎么办呢?

国外开源的有一些扫描器可以选择:

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

国内:

  1. GSIL
  2. Hawkeye
  3. 码小六 推荐使用 
  4. gshark

扫描器的问题

传统的扫描器其实就是去用关键字去匹配,而且还是使用的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

漏洞挖掘365天挑战——Day007: Github扫描”的一个响应

漏洞挖掘365天挑战 – Pxiaoer's Blog进行回复 取消回复

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

WordPress.com 徽标

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

Twitter picture

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

Facebook photo

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

Connecting to %s