攻击流量和正常用户请求,在网络层看起来可能一模一样——都是TCP连接、都是HTTP请求。高防CDN要做的判断是:这条请求放行还是拦截。判断错了,要么攻击穿透,要么正常用户被误杀。真正拉开差距的,是这套判断逻辑有多细。
第一层是网络层检测。看的是包的特征:源IP的请求频率、TCP连接的状态、包大小分布、是否有明显的伪造特征。SYN Flood、UDP反射这类流量型攻击在这一层就能识别,特征是单位时间内某个IP或某个端口段的数据包异常密集。这一层的盲区是慢速攻击——攻击者用极低的频率发请求,每个IP看起来都像正常用户,网络层检测不到。
第二层是协议层检测。看的是HTTP请求本身是否合规:请求头是否完整、Cookie是否异常、User-Agent是否伪造、请求路径是否存在规律性。CC攻击的早期形态在这一层能拦下,比如大量请求同一个接口但参数随机、请求头缺失常见字段。这一层的盲区是模拟真实浏览器的攻击——攻击者用无头浏览器构造完整的请求链,协议层看不出问题。
第三层是行为层检测,也是判断精度的关键。看的是请求序列和交互模式:用户是否加载了页面引用的静态资源、鼠标轨迹是否符合人类操作、两次请求之间的间隔是否规律、会话内是否完成了正常的页面跳转。真实用户访问一个页面会连带请求CSS、JS、图片,而攻击脚本通常只请求目标接口,不加载任何静态资源。这一层能识别出模拟浏览器的高级CC攻击,但对检测模型的精度要求极高,模型太严会误封爬虫和API调用,太松则拦不住攻击。
三层的判断结果叠加后,才决定放行还是拦截。只做网络层检测的方案成本低但误封率高,只做行为层的方案精度高但资源消耗大。坚果盾高防CDN的处理方式是把三层检测串起来:网络层过滤明显的流量型攻击,协议层筛掉不合规请求,行为层对剩余流量做精细判断,最终误封率控制在0.1%以下。这个数字的意义在于,正常用户的访问不会被误伤,而攻击流量在行为层被识别出来。
为什么误封率比拦截率重要
拦截率高的方案,可能是把所有可疑请求一刀切封掉,代价是正常用户一起被拦。对于电商、SaaS这类依赖用户访问的业务,误封一个正常用户的成本远高于漏过一条攻击请求。选型时看误封率,比看拦截率更能反映实际使用体验。
价格参考
标准版100元/月起,含无限DDoS防护、无限CC防护、2个接入域名、30G月流量、500每秒请求数;企业版500元/月,全功能版1500元/月。三层检测能力在标准版即已包含,不需要额外购买高级防护包。
判断一个高防CDN好不好,不是看它拦了多少,而是看它放过的正常用户有没有被误伤。检测逻辑越细,这个平衡才越稳。