利用 GitHub 最大化你的漏洞数量

VSole2023-05-05 09:49:21

背景介绍:

对于漏洞赏金猎人,GitHub 存储库可以发现各种有用的信息,并不是只有开源目标才会出现问题,有时,企业/组织成员及其开源计划会错误地披露可用于对付目标公司的信息。本文将为你提供各种扫描 GitHub 存储库中敏感信息的方法和工具,以助你最大化发现漏洞。

最大化Cloning:

你完全可以只在 github.com 网站上进行研究,但是为了更好的进行本地测试,建议克隆每个目标库。@mazen160 的 GitHubCloner 就是一个很棒的工具。它用起来非常简单:

$ python githubcloner.py --org organization -o /tmp/output

静态分析

在开始静态分析之前,真正理解目标项目至关重要。白帽 @Jobert 会建议在寻找漏洞之前应对目标有很好的了解。

人工分析:

“learn to make it, then break it”这句话适用于人工分析。如果你能学习一门编程语言,你就能够理解要采取和避免的安全预防措施。

一旦熟悉了目标及其架构,就可以开始寻找感兴趣、熟悉或知道开发人员经常出错的关键字。

以下是在第一次‘泛泛’寻找期间使用的一些搜索词的基本列表:

API and key. (Get some more endpoints and find API keys.)tokensecretTODOpasswordvulnerable ?http:// & https://

另外还会关注:

CSRFrandomhashMD5, SHA-1, SHA-2, etc.HMAC

当你习惯了某些漏洞类型时,就会确切地知道在特定语言中寻找什么,例如,当在 Java 中寻找时序泄漏时,我知道 Arrays.equals() 和 HMAC 会共同导致该漏洞。

另一个关键步骤是查看提交历史记录,你会从这些历史提交中收集到的信息量感到惊讶。我曾见过贡献者错误地认为他们已经删除了凭据,而他们仍在提交历史记录中。由于 git 的历史,我发现了仍在运行的古老端点。

工具:

在执行 Python 项目时使用的主要工具是 Bandit

Bandit 会识别常见问题,但也会返回误报结果。所以请谨慎使用。
$ bandit -r path/to/your/code -ll

如果你想在项目中查找过时的 Python 模块,请将 requirements.txt 的内容粘贴到 https://pyup.io/tools/requirements-checker/ 中,这将显示指定版本的模块中是否存在任何安全问题。

Snyk.io 是一个用于检查依赖项的出色工具,该平台支持多种语言。


对于信息侦察,许多研究人员建议使用 Gitrob,此工具将在公共 GitHub 存储库中查找敏感信息。

$ gitrob analyze acme,johndoe,janedoe

要查找API 密钥、令牌、密码等字符串,可以使用 truffleHog

$ truffleHog https://github.com/dxa4481/truffleHog.git

如果你正在寻找一个一体化的查找器,@anshuman_bh 的 git-all-secrets 是款适合的工具。该工具将多个开源敏感信息查找器组合成一个大工具。对于 Ruby on Rails 应用程序,推荐 Brakeman。Brakeman 是一个静态分析安全扫描器,可以在代码中发现大量的各种安全问题。 另外使用 Gerben Javado 的 LinkFinder 在存储库的 JS 文件中查找‍端点‍。

$ python linkfinder.py -i 'path/to/your/code/*.js' -r ^/api/ -o cli

报告你的发现:

当涉及到漏洞赏金时,请仔细阅读目标赏金计划的政策,很少有程序通过 GitHub 接受报告,请联系安全团队,或者使用漏洞赏金平台,例如 HackerOne 或 BugCrowd

顺带说一句,白盒审计的一个很酷的事情,由于你可以访问代码,因此能够更容易地提出修复建议或提交补丁。加油吧,骚年~ ?

漏洞
本作品采用《CC 协议》,转载必须注明作者和本文链接
该公司吸引的总投资金额已超过5600万美元,新一轮融资将主要用于加速公司在全球范围内的扩张,并支持其从北美到欧洲不断增长的全球客户群,同时也将支持推进AI路线和产品技术创新。
漏洞概述  漏洞名称Google Chrome WebRTC 堆缓冲区溢出漏洞漏洞编号QVD-2023-48180,CVE-2023-7024公开时间2023-12-20影响量级千万级奇安信评级高危CVSS 3.1分数8.8威胁类型代码执行、拒绝服务利用可能性高POC状态未公开在野利用状态已发现EXP状态未公开技术细节状态未公开利用条件:需要用户交互。01 漏洞详情影
漏洞分析 CVE-2010-0249
2023-11-25 17:50:17
漏洞分析 CVE-2010-0249
漏洞信息共享合作单位证书近日,Coremail获得由国家信息安全漏洞库(CNNVD)颁发的“CNNVD漏洞信息共享合作单位”证书。 此证书是国家权威机构对Coremail安全研究技术和漏洞挖掘技术实力的充分肯定,也是双方合作的里程碑。 国家信息安全漏洞库(CNNVD), 为负责建设运维的国家级信息安全漏洞数据管理平台, 旨在为我国信息安全保障提供服务。  “
漏洞预警 CraftCMS远程代码执行漏洞
漏洞排查与处置,是安全管理员在安全运营中都会碰到的问题,常见却很难做好。
美国联邦调查局于近日警告称,梭子鱼电子邮件安全网关(ESG)的一个重要远程命令注入漏洞的补丁 "无效",已打补丁的设备仍在不断受到攻击。
点击上方蓝字 关注安全知识引言Fiora:漏洞PoC框架Nuclei的图形版。快捷搜索PoC、一键运行Nu
Mikrotik RouterOS操作系统不支持暴力保护,默认的“admin”用户密码在2021年10月之前是空字符串。更让人震惊的是,检测CVE-2023-30799的利用“几乎不可能”,因为RouterOS web和Winbox接口实现了自定义加密,而威胁检测系统Snort和Suricata无法解密和检查这些加密。
VSole
网络安全专家