Web应用防火墙使用“指北”

简介: WAF全称Web Application Firewall,是部署在web服务器前面保护网站应用抵御来自外部和内部的攻击。作为互联网金融行业的大师兄,悟空理财随着业务的发展也不停的在应对web攻击,一直在跟随着阿里云web应用防火墙“前进”。

WAF全称Web Application Firewall,是部署在web服务器前面保护网站应用抵御来自外部和内部的攻击。作为互联网金融行业的大师兄,随着业务的发展也不停的在应对web攻击,一直在跟随着阿里云web应用防火墙“前进”。项目前期我们调研过几家waf,包括开源和第三方厂商,但由于配置、可视化、防护策略、报表、日志和接入方式等原因没有最后采纳使用。

阿里云WAF产品支持多个维度的安全防护,包括:Web应用攻击防护、恶意IP惩罚、CC安全防护、大数据深度学习引擎、精准访问控制、封禁地区、新智能防护引擎、网站防篡改、数据风控、防敏感信息泄漏。
最终,我们选定阿里云WAF作为我们外部防护的一个组件。下面给大家简单的做一个使用指引和我们使用时遇到的一些问题。

一、WAF配置

登录阿里云控制台,通过导航菜单【安全(云盾)】| Web应用防火墙 | 网站配置 | 网站添加,进行域名添加。按照提示添加对应项目,修改dns。

1

1、如果选择https强制跳转,要保证业务完全支持https协议;
2、waf前是否有7层代理,根据自己真实场景来选择,否则会造成waf防护异常;
3、如果应用本身有防火墙,需要添加waf ip段到白名单。

二、WAF防护配置

通过点击对应域名【防护配置】,进入WAF防护配置界面。

案例1、办公区出口ip白名单

精准访问控制:办公区白名单,公网出口IP为1.1.1.1的全部放行。同理如果是黑名单,则选择对应的阻断即可。

2
目前阿里云WAF匹配字段支持比较全面,包括IP、URL、Refer、UA、Params、Cookie、Content-Type、XFF、Post-Body。

案例2、防止用接口被刷
通过CC安全防护 :URI:/api/login在一分钟内,单一IP访问次数大于10次,则对此ip封禁30分钟。(访问次数、封禁时长可以根据自身业务来调整)
3
CC防护对URI进行防护,通常可用于:防止短信接口、登录接口等被刷。

阿里云WAF上手还是比较容易的,但是所有的规则是预设的规则并不一定全部适用于自身业务,可参考但是不建议生搬。

三、日常维护

通过【总览】进入Dashboard,来查看所有应用业务状态。包括但不限于:业务QPS、带宽、业务异常监控、访问来源、慢接口、访问top5接口。可直观地看出业务访问量,是否有异常。

4
【安全报表】

通过攻击数据来新增策略,比如:发现单一IP,对业务有大量的sql注入,此时我们可以通过访问控制策略对该ip进行直接封禁。

【全量日志】
查看所有用户请求日志定位问题,目前支持如下选项:

5

四、现存问题

针对阿里云Web应用防火墙功能,我们在实际使用过程中依旧有一些瑕疵:比如用户访问分布地图,大多数的业务是在中国(或者根据客户ip来显示地图);访问控制:比如白名单不是网段或者list;还有一个最重要的就是日志类:异常不可以从Dashboard直接跳转到对应的日志、而且也不支持报表定制;与DDos接入不是很友好、不够简单;不过听说大屏近期上线,十分期待。

五、总结

阿里云Web应用防火墙功能WAF产品总体已经完全可以满足中小型企业安全防护要求,希望阿里云WAF产品飞快的迭代、完善。

目录
相关文章
|
网络协议 算法 数据库
|
Java Linux Docker
Linux服务器JRE中文字体设置,解决java.awt乱码、显示方块问题
最近因为需要在java应用中合成曲线图,使用了jfreechart库,但是发现图片中的中文全都显示成方块了。Linux机器一般都是没有中文字体的,所以在使用java.awt相关类生成图片时,输出的中文很可能显示乱码或者呈方块状。解决方案就是在服务器启动脚本里,加上安装中文字体的步骤。
2690 0
Linux服务器JRE中文字体设置,解决java.awt乱码、显示方块问题
|
JavaScript 前端开发 数据安全/隐私保护
VUE3实现全局水印功能
watermark-js-plus 是一个用于给图片添加水印的 JavaScript 库。它提供了一个简单的方式来在图片上添加文字水印、图片水印或自定义水印。
1430 0
|
2月前
|
XML 人工智能 JSON
为什么你的AI Agent像个傻子?因为你没给它装“Skill”
本文剖析AI Agent“能聊不能干”的困局,指出其核心瓶颈在于缺乏可执行、可复用的“Skill”(能力单元),而非模型本身。文章对比Prompt与Skill本质差异,拆解Skill三层结构,并以登录场景为例展示工程化落地路径,最后给出测试团队可立即实践的三步法:盘点重复操作、规范Skill设计、编写单元测试。
|
3月前
|
存储 人工智能 开发工具
OSS 向量 Bucket 最佳实践:快速构建多模态图片语义检索
本文介绍基于 OSS 向量 Bucket 和阿里云大模型服务平台百炼的多模态 Embedding 模型,搭建海量图片的智能语义检索系统,实现基于自然语言描述的文搜图能力的最佳实践,适用于电商商品搜索、智能相册、媒体资产管理、AI 语义检索、图片知识库等场景。
333 5
|
11月前
|
数据采集 自然语言处理 监控
跨境电商中的API是什么?
电商数据API为跨境电商、代购及无货源模式提供商品采集、价格监控、库存管理等功能,助力高效运营与精准选品。本文详解其核心价值、适用场景、功能及选择建议,助您把握数据红利。
|
XML 缓存 JSON
Bpmn.js 进阶指南之原理分析与模块改造(上)
Bpmn.js 进阶指南之原理分析与模块改造
2935 1
|
网络协议 物联网 数据处理
C语言在网络通信程序实现中的应用,介绍了网络通信的基本概念、C语言的特点及其在网络通信中的优势
本文探讨了C语言在网络通信程序实现中的应用,介绍了网络通信的基本概念、C语言的特点及其在网络通信中的优势。文章详细讲解了使用C语言实现网络通信程序的基本步骤,包括TCP和UDP通信程序的实现,并讨论了关键技术、优化方法及未来发展趋势,旨在帮助读者掌握C语言在网络通信中的应用技巧。
584 2
|
JavaScript Linux 编译器
c++开源协程库libgo介绍及使用
c++开源协程库libgo介绍及使用
|
网络虚拟化 安全 网络架构