今天的分享来自国外一位名叫 பூபதி S 的白帽小哥。想要从CDN中找到源IP地址,可以使用Censys, Shodan, Securitytrails, GitHub等各类工具,但是这些工具需要相互配合来使用才能达到更为强大的功能,下面我们来一起看看如何利用这些工具最终找到真正的源IP地址。
Censys:
首先,创建你的的帐户,然后你将获得一个 API 和密钥,然后将其添加到 .bashrc 中:
export CENSYS_API_ID=69247a69–XXXX-XXXX–XXXX-XXXXXXXXXXXX
export CENSYS_API_SECRET=Pm4vXXXXXXXXXXXXXXXXXXXXXXXXXX
在终端上下载 Censys 并使用以下命令:
pip install censys
使用Censys(以hackerone网站为例):
censys search hackerone.com
看上面的图片,它会显示除 IP 之外的不需要的东西,我们可以删除这些数据:
censys search hackerone.com | grep “ip” | egrep -v “description” | cut -d “:” -f2 | tr -d \”\,
配合Httpx查看IP是否存活:
censys search hackerone.com | grep “ip” | egrep -v “description” | cut -d “:” -f2 | tr -d \”\, | tee ips.txt
cat ips.txt | httpx
Shodan:
同样在 Shodan 中创建一个自己的帐户,但Shodan不是免费的,一旦创建成功,也将获得一个 API 密钥:
在Shodan CLI 上添加你的API密钥:
shodan init <YOUR_API_KEY>
获得 API 密钥后,可以运行以下命令:
shodan search Ssl.cert.subject.CN:”hackerone.com” 200 — fields ip_str | httpx
Uncover:
Uncover 使用Go语言编写,它使用知名搜索引擎的API来快速发现互联网上暴露的主机,目前支持Shodan、Shodan-Interetdb、censys和FOFA搜索API。
你可以在该工具上运行 censys、shodan 和 fofa:
uncover -q “hackerone.com” -e censys,fofa,shodan,shodan-idb | httpx
SecurityTrails:
SecurityTrails 能够探索任何互联网资产当前和历史的完整数据, 包括 IP 、 DNS 历史、域名信息、SSL 以及开放端口等。
如何验证 IP 是否属于该域?
方法一:
whois <IP>
方法二:
Wappalyzer
检查两者的 CDN,例如,源 IP 没有 CDN,而主域有 CDN:
上图说明主域有CDN,下图说明源IP无CDN
方法三:
以 Github 为例
ping github.com
在上面的动图中,ping IP 重定向到主域,所以证明不是源 IP
也可以免费使用 Shodan 插件:
上方动图中,Shodan IP 重定向到主域,所以也不是源(Origin) IP。
上图可以直接访问 GitHub 域,因此,这是源IP。
有时候找到源 IP 但它却不呈现网页怎么办?比如下面这种情况:
我们可以使用诸如naabu、nmap工具,扫描开放的端口:
上图就是通过9000端口访问到的网页站点。
小贴士1:如果拿到了源 IP,尽量尝试发现其它潜在漏洞,如:检查开放端口并尝试利用它们、或运行 Nuclei 。
小贴士2:一旦从注册或目标网站收到任何电子邮件,尝试如下方法:
更多-> 显示源信息 -> 搜索(Ctrl+F) -> 关键字“Received”
你学废了么?
====正文结束====