最近,主机帮一个多年用户联系上主机帮,表示他们手上的一个政府网站被刷流量,导致服务器带宽一直满状态,访问卡慢,想上百度云防护看能不能解决。
别的产品主机帮不清楚,百度云防护确实可以解决被刷流量问题,原因很简单,百度云防护不仅智能的cc防护策略,同时还支持各类匹配条件的自定义拦截功能,其中对拦截效果最有帮助的是ja3指纹拦截。
说到ja3指纹,普通站长可能不知道,这里我们说明下:
ja3 指纹是一种用于识别 tls 客户端的“数字指纹”技术。它通过提取客户端在 tls 握手阶段发送的 client hello 报文中的五个关键字段:
- tls 版本
- 支持的加密套件(cipher suites)
- tls 扩展列表(extensions)
- 支持的椭圆曲线(elliptic curves)
- 椭圆曲线点格式(elliptic curve formats)
将这些字段按顺序拼接成一个字符串,并对其进行 md5 哈希计算,最终得到一个 32 位的哈希值,这就是 ja3 指纹 。
目录
ja3 指纹的核心特点:
- 唯一性:不同的客户端(如 chrome、firefox、python 请求库、恶意软件)由于使用的 tls 参数组合不同,会生成不同的 ja3 指纹。
- 稳定性:只要客户端的 tls 配置不变,即使 ip 地址变化,其 ja3 指纹也不会改变。
- 用途广泛:常用于恶意软件检测、僵尸网络识别、网络流量分析、反爬虫机制等场景 。
想要使用ja3 指纹拦截需要网站部署ssl证书,刚好客户政府网站是部署有ssl证书的。
我们通过接入百度云防护后,开启了智能cc防护功能。

由于怕误杀,客户只设置了宽松模式。
依然拦截了一堆的高频访问ip

不过虽然拦截了一些高频ip访问了,但依然流量很高,云防护消耗的流量飞快,接入1小时就消耗了十几g流量,作为一个政府网站,这是不正常的。
然后通过百度云防护日志查看,发现一个ja3指纹为:8ab05683f2e4dd948638ab312a972f44
大量访问了网站的图片资源,而且该ja3指纹明明是同一台机器,但却采用了大量不同的ipv6 ip进行访问网站,由此可以判断这是一个刷流量的机器在访问我们网站。

解决办法很简单,进入自定义规则功能-添加规则,添加规则如下图:

然后我们再进入攻击详情-自定义规则查看拦截情况。


果然拦截了一大堆ipv6的访问,通过查询这些ipv6的地址发现,这些ip地址都是广东各地的,可以判断应该是广东的某些代理ip服务进行刷流量行为,但其服务器并没有更换,所以无论怎么更换ip,他的ja3指纹都是不变的,这给了我们很好的拦截特征。
拦截后,流量消耗果然大降了,本次刷流量拦截成功!

目前客户网站两天只用了45g流量。
至于为什么有人会刷政府网站的流量,这点主机猜测可能跟pcdn有关,一些pcdn用户会故意“刷”静态文件(尤其是大文件),目的之一就是为了躲避运营商的“跨省结算”检查,这是一种“上有政策,下有对策”的规避行为。
下面是详细解释:
✅ 背景:什么是“跨省结算”?
运营商内部有省间结算机制,即不同省份之间的流量需要按规则结算费用。
- 如果某个省的用户频繁访问外省资源,该省运营商可能需要向外省支付费用。
- 而 pcdn 的流量往往跨省传输频繁,导致运营商结算成本上升,因此成为重点监管对象。
⚠️ pcdn 用户为何要“刷下行流量”?
运营商判断一个家庭宽带是否违规用于 pcdn,关键指标之一是“上传/下载比例”:
- 正常用户:下载远大于上传(比如 5:1)
- pcdn 用户:上传远大于下载(比如 1:5),因为他们在“分发内容”
为了掩盖这种异常比例,一些 pcdn 用户会:
主动大量下载大文件(如 .zip、.iso、.mp4),人为拉高“下行流量”,让上传/下载比例看起来“正常”。
他们是怎么刷的?
- 目标站点:优先选择提供大文件下载的静态网站(如镜像站、软件站、开源项目站)
- 请求特征:
- 只下载大文件,不访问网页
- user-agent 异常(如
go-http-client、okhttp) - ip 来源分散,多为家庭宽带
- 请求时间集中在晚上(pcdn 上传高峰时段)
✅ 总结一句话:
一些 pcdn 用户为了逃避运营商对其“上传异常”行为的识别,会故意刷静态大文件来“制造下行流量”,从而伪装成普通用户,躲避跨省结算检查和封号风险。
如果你网站的静态资源(尤其是大文件)被频繁、异常地下载,而你又不是热门下载站,那很可能就是被拿来“刷下行”了。建议:
- 开启 cdn 缓存,减少回源
- 设置防盗链或 token 验证
- 封禁异常 ua 或 ip 段
或者使用百度云防护,对ja3指纹进行拦截,这样即使对方再多的ip也无法刷到你的网站流量。