【渗透工具】雷池WAF安装与使用
WAF简介
WAF 是 Web Application Firewall 的缩写,也被称为 Web 应用防火墙。
区别于传统防火墙,WAF 工作在应用层,对基于 HTTP/HTTPS 协议的 Web 系统有着更好的防护效果,使其免于受到黑客的攻击。
WAF的部署架构
社区版雷池以反向代理方式接入,优先于网站服务器接收流量,对流量中的攻击行为进行检测和清洗,将清洗过后的流量转发给网站服务器。
通过以上行为,最终确保外部攻击流量无法触达网站服务器。
安装过程
一键安装
bash -c "$(curl -fsSLk https://waf-ce.chaitin.cn/release/latest/setup.sh)"
安装完成

访问https://0.0.0.0:9443
登录雷池
根据界面提示,使用 支持 TOTP 的认证软件或者小程序 扫描二维码,然后输入动态口令登录:
本次安装测试利用的是腾讯身份验证器
登录成功后
添加防护站点
雷池社区版主要以 反向代理 的方式工作,类似于一台 nginx 服务。
部署时,需要让网站流量先抵达雷池,经过雷池检测和过滤后,再转给原来的网站业务。
本次采用的是在单独的服务器部署雷池时配置
环境信息:
网站服务器:IPA,对外端口8002,域名可以不填
部署雷池的服务器:IPB
目的:使用雷池的80端口接受请求进行防护
步骤:
1. 必须将网站流量指向雷池的IPB。例如修改域名解析服务的配置,将域名解析到雷池IPB
2. 具体配置参考下图
3. 禁止网站服务器(IPA)上,所有除了雷池之外的访问。例如配置防火墙
配置完成
浏览器访问example.com:80,若能获取到业务网站的响应,并且站点上 “今日访问量” 增加,则代表配置成功。
防护测试
手工测试
模拟 SQL 注入,请访问 http://<IP或域名>:<端口>/?id=1%20AND%201=1
模拟 XSS,请访问 http://<IP或域名>:<端口>/?html=<script>alert(1)</script>

防护设置

黑白名单

频率限制

人机验证

问题分析
如何记录所有访问雷池的请求
默认情况下雷池是并不会保存请求记录的,如果需要保存请求记录,可以修改安装路径下的resources/nginx/nginx.conf
去掉文件第 99 行的注释,删除第 100 行的内容.保存后运行命令检查配置文件
docker exec safeline-tengine nginx -t
应用配置文件
docker exec safeline-tengine nginx -s reload
日志路径:/data/safeline/logs/nginx/access.log
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】凌霞软件回馈社区,博客园 & 1Panel & Halo 联合会员上线
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】博客园社区专享云产品让利特惠,阿里云新客6.5折上折
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 一个费力不讨好的项目,让我损失了近一半的绩效!
· 实操Deepseek接入个人知识库
· CSnakes vs Python.NET:高效嵌入与灵活互通的跨语言方案对比
· 【.NET】调用本地 Deepseek 模型
· Plotly.NET 一个为 .NET 打造的强大开源交互式图表库