通过查找真实IP bypass WAF

当已知某站存在漏洞时,Web 应用程序防火墙(简称WAF)是最大的阻碍。通常,这些网站都很老旧,维护得不是很好,因此在大多数情况下,将 WAF 放在它们之上会更容易。有一种方法可以绕过这一层保护,那就是是找到原始 IP 地址,接下来我们来一起探讨一下。

防火墙基础知识

这是防火墙工作原理的基本图表:

普通用户通过防火墙发送请求,防火墙检查请求是否合法,然后将该请求传递给服务器。然后服务器处理该请求,将其发送回防火墙,防火墙将其发送给客户端。这样做是因为原始服务器不想向客户端透露自己的 IP。另一方面,黑客(标有骷髅图标)不想通过中间人,而是想直接进入服务器。例如,如果您发送 SQL 注入、XSS 或其他有效负载 --- 这些请求可能会被防火墙规则阻止。这就是为什么最好通过了解服务器的位置 --- 找到原始 IP --- 来避免绕过 WAF 的麻烦。

有时可能会出现请求被服务器本身阻止的情况,或者有时可能会重新路由,例如直接转发,也可能被重新路由到防火墙,但这些情况都是例外。这次我们将尝试找到一种方法,只需访问此处的原始 IP 并尝试直接通信即可。

WAF 探测

您始终应该做的第一件事是检查目标是否确实安装了 WAF。有几种简单的方法可以做到这一点,我喜欢做的第一件事是 ping 目标。在此示例中,我将 ping 我自己的网站:

如您所见,它以 IP 进行响应。如果它以该 IP 进行响应,则并不意味着它会像服务器的原始 IP。它可能是一个 WAF的 IP 地址。如果我们尝试直接访问它,它将显示常规 Cloudflare 错误:

您还可以尝试使用 Wappalyzer 插件。如果您尝试检查此网站,它将显示我正在使用 Cloudflare:

另一件事是在终端使用dnsrecon:https://github.com/darkoperator/dnsrecon之类的工具:

复制代码
复制代码
dnsrecon -d ott3rly.com

此命令将访问 DNS 记录,这也可以显示服务器可能使用了什么 WAF:

如果服务器不使用任何 WAF,有时您可能会泄露原始 IP 地址,但在这种情况下,我们可以看到很多 Cloudflare 名称服务器。

如果您不是 CLI 工具的忠实粉丝,您也可以查看who.ishttp://who.is/网站。

方法1---Shodan

我推荐的下一个查找原始 IP 的方法是使用 Shodan。使用基本搜索也可以轻松检查大量泄露的 IP。您可以通过不包括已知的 WAF 标头、响应等条件来过滤掉一些P,。我通常也会按 200 状态代码进行过滤。我喜欢将 SSL shodan dorks 与上述过滤器一起使用:

方法 2 --- Censys

另一个很好的 IP 侦察工具是使用censys:https://search.censys.io/。只需将您的目标粘贴到Censys搜索栏中,您就会得到非常有趣的结果:

如您所见,左侧有很多过滤选项,因此您也可以尝试一些过滤。例如,Akamai、Amazon 和类似的东西对我们来说并不重要,因此您应该尝试过滤掉它们。

方法3------Security Trails

最后,我最喜欢的方法是使用Security Trails:https://securitytrails.com/。我建议创建一个免费帐户方便自由使用它。此工具非常适合仅针对单个网站以了解其 IP 地址。我将以我自己的网站为例,并尝试访问历史数据:

当我在搜索栏中输入ott3rly.com 并尝试访问历史数据时,DNS的A记录确实值得一看。如您所见,在使用 Cloudflare 之前,该网站未受 WAF 保护,因此其原始 IP 被泄露。在这种情况下,它是托管服务提供商的原始 IP,所以这不是什么大问题,但通常,在常规测试场景中,您可能会偶然发现 VPS IP 地址。在这种情况下,有可能直接通过其 IP 访问页面。

最后

如果您在目标上尝试这些方法,在漏洞挖掘中可能就不会被WAF 检测到。这将使你的漏洞利用过程变得轻松得多,例如模糊测试 XSS、SQL 注入......因此,在构建复杂的payload之前,我强烈建议您先尝试找到原始 IP。

获取网络安全优质免费学习资料与干货教程+

送渗透工具、技术文档、书籍,面试题、视频(基础到进阶。环境搭建,HTML,PHP,MySQL基础学习,信息收集,SQL注入,XSS,CSRF,暴力破解等等)、应急响应笔记、学习路线。

申明:本账号所分享内容仅用于网络安全技术讨论,切勿用于违法途径,所有渗透都需获取授权,违者后果自行承担,与本号及作者无关,请谨记守法。

相关推荐
广州灵眸科技有限公司7 小时前
瑞芯微RV1126B开发板(EASY-EAI-PI2) INI文件操作
java·前端·javascript·网络·人工智能
江华森8 小时前
Web 开发基础:HTTP 与 REST
前端·网络协议·http
IT_陈寒9 小时前
Redis的KEYS命令把我搞崩溃了,改用SCAN才活过来
前端·人工智能·后端
星恒讯工业路由器9 小时前
VLAN在工业网络中为何越来越重要
网络·信息与通信·vlan·交换机·工业网络·网络隔离
山峰哥9 小时前
数据库工程与索引策略实战指南‌
服务器·数据库·sql·oracle·深度优先
jieyucx9 小时前
Docker 入门第一阶段:建立正确认知与初体验
运维·docker·容器
Jackson__9 小时前
为什么 Agent 越聊越慢?聊聊 Context(上下文)管理
前端·agent·ai编程
rcms152702692189 小时前
HITEK A1052100N-01 以太网端口模块
网络
KaMeidebaby9 小时前
卡梅德生物技术快报|抗体合成:多肽抗体合成工程化方案:Nsp2 保守肽多抗制备与多维度验证
前端·网络·数据库·人工智能·算法
青禾网络9 小时前
前端做音画匹配这件事,我从"随机塞"到"AI 自动对齐"
前端·github