当您知道存在漏洞时,Web 应用程序防火墙是最烦人的!通常,它是旧的,没有真正维护良好的网站,因此在大多数情况下,将WAF放在它们之上会更容易。如果我告诉你有一种方法可以绕过这一层保护——我说的是查找源 IP 地址作为一种方法。我们将探索多种方法。
防火墙基础知识
-
其它相关教程
linux程序设计与安全开发
恶意软件开发
windows网络安全防火墙与虚拟网卡(更新完成)
-
windows文件过滤(更新完成)
-
USB过滤(更新完成)
-
游戏安全(更新中)
-
ios逆向
-
windbg
-
还有很多免费教程(限学员)
-
更多详细内容添加作者微信
-
以下是防火墙工作原理的基本图:
普通用户通过防火墙发送请求,防火墙检查请求是否合法,并将该请求传递给服务器。然后,服务器处理该请求,将其发送回防火墙,防火墙将其发送到客户端。它这样做是因为源服务器不想向客户端披露自己的 IP。另一方面,黑客(标有骷髅头图标)不想通过中间人,想直接去服务器。例如,如果您要发送 SQL 注入、XSS 或其他有效负载,则防火墙规则可能会阻止这些请求。这就是为什么通过知道服务器的位置来跳过绕过 WAF 的困难是一个好主意——查找源 IP。
有时,服务器本身可能会阻止请求,或者有时可能会重新路由,例如直接路由,也可以将其重新路由到防火墙,但这些情况是例外。这一次,我们将尝试通过访问此处的原始IP并尝试直接通信来找到一种方法。
WAF 侦察
您应该始终做的第一件事是检查目标是否真的有 Web 应用程序防火墙。有几种简单的方法可以做到这一点,所以我喜欢做的第一件事就是 ping 目标。在此示例中,我将 ping 我自己的网站:
如您所见,它以 IP 响应。如果它使用该 IP 进行响应,并不意味着它将像服务器的原始 IP 一样。它可能只是一个 Web 应用程序防火墙 IP 地址。如果我们尝试直接访问它,它将显示常规的 Cloudflare 错误:
您可以做的另一件事是使用 Wappalyzer 插件。如果您尝试检查此网站,它将显示我正在使用 Cloudflare:
另一件事也是回到终端并使用 dnsrecon 等工具:
dnsrecon -d ott3rly.com
此命令将访问 DNS 记录,这些记录还可以指示服务器可以使用的 WAF:
有时,如果服务器不使用任何WAF,您可能会泄露源IP地址,但在这种情况下,我们可以看到很多Cloudflare名称服务器。
如果您不是 CLI 工具的忠实粉丝,您也可以查看 who.is 网站。
方法 #1 — Shodan
我推荐的下一件事是使用 Shodan。使用基本搜索也很容易检查大量泄露的 IP。您可以筛选出这些 IP,使其不包含已知的 WAF 标头、响应等。我通常也按 200 个状态代码进行过滤。我喜欢将 SSL shodan dorks 与提到的过滤器一起使用:
如果你对 shodan dorking 技术感兴趣,我有一篇关于这方面的文章,所以一定要看看!
方法 #2 — Censys
IP 侦察的另一个好工具是使用 censys。只需将您的目标粘贴到搜索栏中,您就会获得非常有趣的结果:
如您所见,左侧有很多过滤选项,因此您也可以尝试一些过滤。例如,Akamai、Amazon 和类似的东西对我们来说并不感兴趣,所以你应该尝试过滤掉它们。
方法 #3 — 安全跟踪
最后,我最喜欢的方法是使用安全跟踪。我建议创建一个免费帐户,您可以自由使用它。此工具适用于仅针对单个网站以了解其 IP 地址。我将以我自己的网站为例,并尝试访问历史数据:
当我在搜索栏中写入 ott3rly.com 并尝试访问历史数据时,A DNS 记录确实值得一看。如您所见,在使用 Cloudflare 之前,该网站不在 WAF 下,因此其源 IP 被泄露。在这种情况下,它是托管服务提供商的原始 IP,所以这没什么大不了的,但通常,在常规测试场景中,您可能会偶然发现 VPS IP 地址。在这种情况下,可以通过其 IP 直接访问该页面。
最后的提示
如果您在目标上尝试所有这些方法,您将有机会在 WAF 雷达下不被发现。当您需要进行某些开发时,它将使您的生活更轻松,例如模糊 XSS、SQL 注入……因此,在构建复杂的有效载荷之前,我强烈建议您找到原始 IP。
原创文章,作者:速盾高防cdn,如若转载,请注明出处:https://www.sudun.com/ask/76839.html