当前位置: 首页 > article >正文

通过查找真实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.is:http://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,暴力破解等等)、应急响应笔记、学习路线。

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


http://www.kler.cn/a/290491.html

相关文章:

  • 2-UML概念模型测试
  • 推荐一个超漂亮ui的网页应用设计
  • PCL 点云分割 基于CPC算法的分割
  • 模型压缩相关技术概念澄清(量化/剪枝/知识蒸馏)
  • 一文了解 Tableau 2024.3 如何展现已发布数据源的数据模型
  • 「IDE」VS2022插件 Visual Assist X 番茄助手介绍说明
  • 容器化你的应用:使用 Docker 入门指南
  • window 10使用wsl装docker踩坑
  • CCNA课笔记
  • 【NO.17】LeetCode经典150题-13. 罗马数字转整数
  • 装机必看!内存条应该怎么插?各种内存条插法详解
  • Seataf分布式事务的使用
  • 坐牢第三十四天(c++)
  • WordPress自适应美图网站整站打包源码
  • Docker镜像中的源替换为国内源
  • C/C++:函数指针
  • SpringBoot3集成Spring Authorization Server实现SSO单点登录
  • uniapp小程序实现横屏手写签名
  • 宠物智能家居监测器的融合
  • LeetCode 606.根据二叉树创建字符串
  • 开源vscode AI插件
  • 什么是基于云的 SIEM
  • MuseTalk模型构建指南
  • css改变鼠标样式
  • 论文速读|BiGym:一款基于演示的移动双手操作机器人基准
  • IO进程练习:请在linux 利用c语言编程实现两个线程按照顺序依次输出”ABABABAB......“