CC防御指引

速盾网络 团队

CC攻击防护设置

步骤一:登录控制台

  1. 登录 Sudun 控制台:https://protal.sudun.com/view/login
  2. 进入 WEB加速 > 域名管理 >配置
  3. 点击CC防护下面的各类型按钮,根据需求开启


1、每秒请求数:系统实时监测站点访问情况,超过设定阈值将自动启动下方所配置的CC防护策略;


2、默认规则:开启此防御后将启动本站内置的默认CC防御模块,可兼容所有WEB防御目标零误封;


3、验证码防御:将启用特征智能模块检测,恶意来源IP需操作浏览器通过机器识别后才可继续访问;


4、无感防御:将启动浏览器指纹CC防护结合浏览器的指纹统计信息判断识别异常客户端的CC攻击行为;


5、随机数防御:针对同时海量IP请求域名伪造根目录及文件名等大量不同随机数的CC攻击行为识别;


6、关闭CC防御:将会对每秒请求数设置为不限制,仅对系统默认内置防护和自定义防护规则防护生效;


7、API专用防御:API防御目前采用SHA256+ECDSA签名方式,请保护好私钥不泄漏, 签名完整流程;


API专用防御说明

1. 签名算法概述

算法类型:ECDSA (secp256k1)
哈希算法:SHA256
输出格式:r(32 bytes) || s(32 bytes) || recid(1 byte),总长度65 bytes


2. 签名流程

  1. 构建消息 msg → hash = SHA256(msg)
  2. 使用私钥签名,得到 (r,s),low-s 规范化
  3. 计算 recid (0 或 1),输出 raw_signature = r||s||recid

3. 示例(javascript)


const ec = new EC('secp256k1')


const key = ec.keyFromPrivate(SIGNKEY, 'hex')


const ts = Math.floor(Date.now() / 1000) // 获取当前时间戳


const content = md5('hello world'); // hello world 可以替换成其他的


const message = `${ts}_${content}_${ts}`; // 签名的原始内容


const hash = CryptoJS.SHA256(message).toString(CryptoJS.enc.Hex)


const signature = key.sign(hash, { canonical: true })


const recid = key.getPublic(true)


const r = signature.r.toArrayLike(Buffer, 'be', 32)


const s = signature.s.toArrayLike(Buffer, 'be', 32)


// 最终签名结果


const rawSigHex = Buffer.concat([r, s, Buffer.from([recid])]).toString('hex')


cc防御设置cc防御设置