ShareWAF是一款强大的动态防御WAF产品,而且功能很丰富。
这些丰富的功能,可以给网站建立起多重安全防护屏障。然而很多时候,我们不是需要使用其全部功能的,合理的使用某些,甚至是某个功能,就可以很好的满足自己的网站防护需求。
ShareWAF的很多功能是相对独立的。
比如AI风控,就是一个独立的防护功能,可通过高度自定义规则,实现多领域防御,比如防常见的SQL注入、COOKIE注入、XSS,以及撞库、应用层DDOS等自动化攻击。
在ShareWAF中开启此功能,首先需要手动编辑rulemod.js,设置enable值为1,然后打开rules.js编辑规则。当然,编辑后一定要记得保存和重启ShareWAF。
下面将给出一些规则案例,并演示防护效果。
注意各个例子中的type类型,每个不同的类型都是一种独立的规则分类。
以防常见的:select * from admin为例,规则可以这样写:
id号,用作唯一标识,假如发生误报,可根据id确定是哪一条规则;
type字段写url表示检测url;
enable值为1表示启用该规则,如果为0则不启用;
match中是具体的规则条件,满足条件,此规则才视为被触发。
规则触发、防护效果:
可用于防扫描、防SQL注入、Cookie注入等。
本例以检测请求头中的user-agent字段是否存在Mozilla字符为例,如果检测到,就认为是威胁,
规则如下:
用火狐浏览器发起访问,user-agent字段便符合这个规则,拦截效果如下:
可用于防止非法文件上传、木马上传、SQL注入等。
示例规则:
当上传.js文件、提交且字段中不包含username,则触发规则。
防护效果如下:
先模拟一个带文件上传的form:
提交后,触发规则、产生拦截:
可用于检测和防护机器人访问、CC、应用层DDOS、爬虫、批量注册、自动发贴。
其原理是:如果一定时间范围内、某用户、对某页面连续进行高频访问,则视为异常。
如:
注意:在此类规则中*号表示任意页面、任何一条match条件成立,则规则触发。
上面的规则中,是建立了两个条件:
time_range单位是分钟,即:1分钟内,任意页面被访问总量达到100次,或login.html页面被访问5次,即触发规则。
访问5次,触发规则:
可用于检测自动化攻击,如:撞库、应用层DDOS等。
比如下面的规则,如果连续5次访问index.html,但没有访问到login.html,视为触发规则:
连接访问index.html,触发规则:
当规则触发、产生防护拦截后,会在一定时间内封禁访问,封禁时长可在rulemod.js文件中设定,字段是block_time,单位是分钟。
ShareWAF这套基于规则的风控功能,其实就是一套传统的WAF。准备好规则,便可以实现很好的网站安全防护效果。然而,这才仅仅是ShareWAF的众多防护功能中的一个而已。
除此之外,ShareWAF还有众多的重量级安全防护功能,如:JS多态保护、设备指纹大数据防护、前端WAF、网页防篡改等等。ShareWAF,真的不只是WAF!