WAF攻防之SQL注入篇

0x00 前言

随着国家安全法的出台,网络安全迎来发展的新时期,越来越多企业或政府单位开始重视网络安全。很多网站陆陆续续告别裸奔时代,开始部署web应用防火墙(WAF)以应对网络攻击。由此,相关网站的安全性很大程度上取决于WAF的防护能力,WAF攻防研究已成为安全从业人员的必修课之一。

大多数WAF以规则匹配为基础进行安全防护,少数WAF带有自学习能力,规则维护成为WAF的核心。近年来,基于语义识别的WAF陆续出现,对其防护能力的研究也成为大家关心的热点之一。本文以MySQL为研究对象,总结相关WAF注入绕过技术,通过实战演练让大家了解各大WAF的相关特性,最后从攻防角度对WAF安全进行总结。

0x01 注入绕过技术总结

对已知的WAF相关绕过技术,总结如下,网上已有相关技巧的讲解,这里就不一一演示,不明白的可以自己查询相关资料:

在实际攻击场景中,单一的绕过技巧往往无效,需要我们综合利用各种绕过技术进行组合,结合各自WAF特性不断进行推理,才能真正实现绕过。

0x02 注入点检测绕过

Bypass WAF的第一步是识别注入点,我们拿到一个URL,第一步判断参数是否有注入,然后再进行后续的绕过。简单的and 1=1 and 1=2判断肯定会被WAF拦截,我们需转变思路进行绕过,一般WAF为了平衡风险和业务的关系不会对下面数字型探测方式进行拦截,否则会产生大量误报影响正常业务运行。

[

本地测试环境:[如若 and也会拦截,可以直接在参数上进行类似判断操作,如id=1*0 、id=1*2,除了以上方法,还有很多其它衍生出的识别绕过方法,以{“op}为例作演示,其它的方法大家可以按照这种思路自行发挥:

安全狗:

[

百度云加速:[

腾讯云:

[
阿里云:

[

当我们已确认注入点后,下一步的目标是完全Bypass WAF出任意数据,以下以安全狗、modsecurity、百度云加速、 阿里云盾、长亭雷池截止目前最新的版本为例,这里只提供绕过的思路,即如何利用已知技巧进行组合推理来绕过相关WAF防护,出数据具体过程这里就不详解,大家感兴趣的可以手动尝试。

0x03 安全狗Bypass

本地无WAF测试环境:[
在对安全狗的绕过测试中发现,只需利用一个*/闭合多个/*!即可绕过,简单粗暴。

http://192.168.20.123:81/user.php?id=-11/*!union/*!select/*!1,(select/*!password/*!from/*!test.user limit 0,1),3*/

[
0x04 Modsecurity Bypass

本地环境搭建modsecurity模块进行安全防护,利用{“op}、/*!50000*/组合进行绕过。

http://192.168.20.123/user.php?id=1 and{`version`length((select/*!50000schema_name*/from/*!50000information_schema.schemata*/limit 0,1))>0}

[
0x05 百度云加速Bypass

利用–+%0a进行绕过。[
0x06 阿里云盾Bypass

利用–+%0a、@自定义变量、{a key}组合进行绕过。

[
0x07 长亭雷池Bypass

经过大量测试后,发现雷池在处理MySQL注释符/*! */识别时存在缺陷,只需把攻击语句放在注释符中即可绕过。[

0x08 自动化bypass

当我们挖掘出绕过相关WAF进行SQL注入的技巧后,下一步就是编写脚本实现工具自动化注入。以sqlmap为例,我们编写tamper脚本实现注入自动化。[
0x09 WAF防御

对已知或未知的安全问题进行防御是WAF功能的核心,漏报及误报是衡量一个WAF产品好坏的重要指标,具体落实到规则的及时更新、bypass新技巧的及时响应。另外,还应综合利用拦截日志数据进行相关算法分析,不断提高WAF的防护能力。总结来说,打造一款上乘的WAF,非一朝一日之功,需长期的技术储备、产品不断地更新迭代、算法地持续优化,才能把好防御这个重要的关口。同时,不断探索新的高效防护方法,才能在攻防战中立于不败之地。

0xa0 总结

从攻击者角度来看,绕过WAF的基本方法其实不多,如何把这些已知方法融合起来,并结合各自WAF本身的防护特性,不断进行推理,成为突破WAF防护的关键。当然,自动化Fuzz才是WAF Bypass新技术产生的正道。另外,从个人的注入Bypass测试过程看,绕过基于语义识别的WAF比绕过基于规则识别的WAF难得多,值得我们挑战。

从WAF产品角度来看,衡量一个WAF好坏的标准是漏报率和误报率的高低,但这些指标建立在以WAF不影响正常业务为前提。测试中我发现,基于规则的WAF对业务的耦合度往往较低,不管是腾讯云WAF还是阿里云盾,对用户的输入都较为敏感,如参数中输入注释符请求就会被拦截。而基于语义的WAF的和业务的耦合度较高,误报率下降明显。从测试结果来看,基于语义识别的WAF相较传统WAF来说有较大优势,值得我们学习和借鉴。

从安全管理者角度来讲,从以上测试过程可以看出,不管是基于规则的WAF还是基于语义识别的WAF,都存在被都完全绕过的可能。WAF的主要作用是提高攻击门槛,但不能消灭攻击入侵事件,解决安全问题的根本途径还得从代码层面着手进行修复。


网络安全入门学习路线

其实入门网络安全要学的东西不算多,也就是网络基础+操作系统+中间件+数据库,四个流程下来就差不多了。

[一一帮助安全学习【点我】一一]】 ①网络安全学习路线 ②20 份渗透测试电子书 ③安全攻防 357 页笔记 ④50 份安全攻防面试指南 ⑤安全红队渗透工具包 ⑥网络安全必备书籍 ⑦100 个漏洞实战案例 ⑧安全大厂内部教程

对于从来没有接触过网络安全的同学,我们帮你准备了详细的学习成长路线图。可以说是最科学最系统的学习路线,大家跟着这个大的方向学习准没问题。
在这里插入图片描述
​​​​ 学习资料工具包

压箱底的好资料,全面地介绍网络安全的基础理论,包括逆向、八层网络防御、汇编语言、白帽子web安全、密码学、网络安全协议等,将基础理论和主流工具的应用实践紧密结合,有利于读者理解各种主流工具背后的实现机制。

​​​​网络安全源码合集+工具包
在这里插入图片描述

视频教程
在这里插入图片描述
​** 面试题资料**

独家渠道收集京东、360、天融信等公司测试题!进大厂指日可待!
​​​在这里插入图片描述

最后联合CSDN整理了一套【282G】网络安全从入门到精通资料包,需要的小伙伴可以点击下方免费领取哦! ​
黑客/网安大礼包:CSDN大礼包:《黑客&网络安全入门&进阶学习资源包》免费分享


  • 1
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值