the heart of lucifer

bypass姿势汇总,防火墙绕过技巧总结,IPS、IDS绕过技术

 

bypass姿态汇总

MayIKissYou | 2015-01-04 17:16

比来做web测试的时辰也翻阅了不少资料,各类姿态下的bypass,自己看到的和理会的总结一下,分享给小同伴们。

 

1:数据流向:

如下图所示:

描绘了从阅读器敲下URL到央求最终发送到web干事器,中心履历了若干设备,哪些处所经由了措置责罚,哪些处所没有经由措置责罚。

经由公网的时辰,公网普通都是一些任务在搜集层的设备,这些设备根基做路由转发,不会关于数据包停止运用层措置责罚的。在到达目标干事器之前,能够会有一些防护设备,如云waf,又如硬件waf,ips,ids设备,这些设备会关于数据包停止措置责罚,是以在此处针关于一些运用层的防护设备应该有bypass的姿态,为第一个角度。数据包会发送到终端,终端会有windows和linux之分,同时分歧操作系统上也会装置纷歧样的主机防护,如safedog,是以针对此类主机防护能够也会有bypass的姿态,为第二个角度。经由主机防护的包会发送到web干事器,web干事器也有许多种,如罕见的apache和iis等。是以针关于web干事器也会有bypass的姿态,为第三个角度。web干事器的数据流会被发布在web干事器上的运用法式措置责罚,针关于运用法式异样也会有bypass的姿态,为第四个角度web法式措置责罚的进程中会与数据库交互,分歧的数据库有分歧的特征,应此关于分歧的数据库异样会有bypass的姿态,为第五个角度。

2:waf以及主机防护bypass

现在市情上各类waf与主机防护,如百度一下云减速,阿里云盾,减速乐,安全宝,安全狗,云锁,360网站卫士等等,之前编写了一篇文章,bypass ips姿态的,其实测试过的都邃晓,外面的一些trick合用于许多防护设备的,这里将总结增补下:

1):点窜央求的体式格式,央求的内容普通分为get,post以及cookie的体式格式,post下又会有urlencode以及form-data的提交两种

2):截断字符的行使

3):要害字url编码的行使

4):脏数据的添加,即添加有效数据,有能够跨越最年夜的检测长度,而招致bypass,之前写过一个bypass安全狗的就是行使的此trick

5):fuzz测试,这里我普通会每一种央求体式格式均fuzz一次,这里fuzz的处所,主假若有能够waf之类的设备措置责罚某些字符欠妥招致了bypass。

6):关于waf类的其实找到原始IP直接接见,也是一种bypass的体式格式。

3:webserver端的bypass姿态

webserver罕见的iis,apache以及tomcat等等

我见到过的能够可以行使的:

1):iis在asp法式措置责罚中,关于%措置责罚的不是太好,貌似直接显示空白了

2):iis在aspx法式措置责罚中关于%u00措置责罚的不是太好,貌似直接显示空白了

3):iis加asp状况下的复参进击,在如下毗邻中有参考:

4):apache干事器关于畸形央求的解析,此处没有考证,马脚毗邻

4:web法式端bypass姿态

web法式普通运转在webserver上,web法式在获取参数假设选择体式格式不准确能够形成bypass:

1:asp asp.net中获取参数假设应用的Request[”]的方式的话,可以应用畸形的央求,如一个GET央求,同时还发送了post部门的内容

2:之前说到替代提交体式格式绕过的其实需求此处web法式的支撑,如罕见的dedecms就会支撑get post以及cookie的提交。

5:数据库端的bypass姿态

数据库端的bypass年夜多是行使了数据库的特征,数据库有mysql,mssql,oracle等等

其实数据到最后在数据库被执行了才算是真正的bypass,是以直接从数据库特征去测试普通是最有用的:

mysql的特征,之前有一篇帖子专门描绘了mysql的测试结果,而且经自己测试在许多的waf下行使某些trick都是能bypass的,帖子链接:

http://zone.wooyun.org/content/16772

1):空白符的行使(之前有人做过空白符的测试)【http://zone.wooyun.org/content/15953】

SQLite3 0A 0D 0C 09 20

MySQL5 09 0A 0B 0C 0D A0 20

PosgresSQL 0A 0D 0C 09 20

Oracle 11g 00 0A 0D 0C 09 20

MSSQL 01,02,03,04,05,06,07,08,09,0A,0B,0C,0D,0E,0F,10,11,12,13,14,15,16,17,18,19,1A,1B,1C,1D,1E,1F,20

在数据库中的空白符能够和php或许其他的web法式端的空白符存在差别,这样的差别能够就会招致绕过正则或其他进攻的绕过。

2):行使数据库fuzz测试,在http://zone.wooyun.org/content/16772中有小同伴就做了相关的测试,如:

select * from dual where id =1[]union[]select[]1,2,3,4 from[]m,

经年夜量测试发现select[]位置处的fuzz成功内容,往往可以bypass年夜量进攻划定规矩。

ps.比来测试对照多,发现或多或少都邑有一些效果,so列位应用waf的小同伴,尽量照样担保好自己web法式安全的根蒂基础上再应用waf,不要完全依托waf

 

发表回复

您的电子邮箱地址不会被公开。 必填项已用 * 标注