如何进行敏感信息收集?
2019 年 4 月发生了一起大疆前员工泄密源码的事件,该名员工将大疆公司的在用产品源码开放到 GitHub 上,其中还包含云服务器上登录密钥,导致他人可以登录服务器查看上面存在的各种用户数据,最后被判刑。
从这件事也可以看到在网络上泄露的一些敏感信息,有时会直接导致服务器被入侵,公司相关的知识技术产权被窃取,造成实际的经济财产损失。
因此,在授权的渗透测试过程中,我们要多方收集与目标相关的信息,包括 Google、GitHub、社交平台等多方渠道。我曾多次利用 GitHub 找到一些账号密码或密钥,从而获得授权测试的网站的最高权限,收集 GitHub 相关的敏感信息如下:
Gitrob,https://github.com/michenriksen/gitrob;
码小六,https://github.com/4×99/code6;
GitMonitor,https://github.com/Talkaboutcybersecurity/GitMonitor。
根据收集到的相关信息,我们还可以制作字典用来猜解一些相关账号和密码,此类的相关工具有:
Wordhound,https://github.com/kurobeats/wordhound;
BruteScrape,https://github.com/cheetz/brutescrape。
最后我再推荐几款综合能力较好的信息收集工具。
Recon-NG 是一款被动信息收集工具,它可以通过搜索获取 IP 地址、地理位置、用户、邮件地址、密码泄露或者其他敏感信息,最终生成一份完整报告。
iKy的界面很酷,它能够从 Twitter、GitHub、Skype、Linkedin、Instagram 等社交平台上收集信息,但需要提前设置各平台上的 API KEY,可以输入一个邮箱地址去搜索其上述平台上的关联信息,最后会以可视化效果展示出来,如下图所示。
discover综合使用了很多工具,包括 dnsrecon、goofile、whois、recon-ng、dnssyNikto 等,它能够收集邮箱地址、雇员名字、主机信息、域名、IP 等一系列信息,最后提供 html 报告。
信息收集不局限于我上面举例的这些,有些你通过 Google 搜索到的文档、图片、敏感文件和目录等都可以。在后面的渗透测试过程中,说不定它们就能派上用场了。
收集的信息不怕多,就怕不全。