目录
1、安装雷池
2、登录雷池
3、简单配置
4、防护测试
5、其他补充
1、安装雷池
在Linux系统上执行如下命令
(需要docker环境,提前把docker、docker-compose 装好)
bash -c "$(curl -fsSLk https://waf-ce.chaitin.cn/release/latest/setup.sh)"
默认安装路径:/data/safeline
安装完成后如下图所示
2、登录雷池
访问默认端口:9443
使用支持 TOTP 认证的软件进行绑定
(这里给大家推荐两个小程序:数盾和 OTP 动态令牌)
点击完成绑定,输入动态口令
登录成功后如下图所示
3、简单配置
雷池社区版主要以 反向代理 的方式工作,类似nginx。
让网站流量先抵达雷池,经过雷池检测和过滤后,再转给原来的网站业务。
在防护站点里点击添加站点
我这里以 CSDN 博客的个人地址为例
(这样肯定是不行的,蠢了哈哈哈,看到后面你就明白了)
https://myon6.blog.csdn.net/
欢迎各位多来我的博客逛逛哈哈哈Thanks♪(・ω・)ノ
添加好之后,我们进行攻击测试
4、防护测试
构造一个 SQL 注入的 payload 进行测试
https://myon6.blog.csdn.net/?id=1%20AND%201=1
发现请求直接被 WAF 拦截
但是观察数据统计里却没有任何记录,甚至连拦截记录都没有
注意:这里错了,这个应该是 CSDN 自己的 WAF ,因此攻击流量其实都还没有走到雷池。
并且,这个WAF我们装在内网啊,怎么能拦到公网上的流量呢哈哈哈,需要将雷池WAF装到对应网站的服务器上才行。
因此我们新增一个内网的网站进行测试验证即可
在虚拟机上启动 Apache 服务,模拟一个网站服务器
之后重新添加站点
端口为雷池监听所使用的端口,也是它监听网站的端口。有点绕,但是确实是的,也就是说如果你设置为8080端口,但是你访问的是网站的80端口,则不会被拦截,只能从指定的端口去访问,而且你还需要确保你自己的8080端口未被占用。可以这样理解,你的网站被雷池映射到了某个指定的端口,从该端口去访问,雷池先检测,没问题再转给你的网站服务。
如果你的80端口被占用则需要设置成其他端口
这里以8081为例(因为前面我们的Apache就默认运行在80呀)
请求被拦截
如果我们把阿帕奇停掉,则可以设置为80,但是阿帕奇则不能启动了
我们可以在攻击事件的原始日志里查看数据包的详情
5、其他补充
使用 docker ps 查看启用的容器
可以看到新增了几个关于雷池的docker容器
因为我是在虚拟机上测试的,虚拟机关掉,WAF 自然也就没了。
如果你们想一直有 WAF 的保护,那就需要让这些 docker 容器一直运行着,就需要有一台公网服务器(建议买云服务器ESC或者轻量级的服务器),然后在上面进行安装和部署。
注意:一定将 WAF 装在对应网站的服务器上,比如你在 A 服务器上装的 WAF,则只能用于拦截 A 服务器运行的网站的流量,无法拦截到 B 服务器网站上的流量。(除非A与B是在同一局域网)