tsw.jstsw.js

什么是IP聚集

一般来说,对于业务中的请求,不同的IP地址请求的次数应该是相近的。而如果业务被恶意攻击,就会有同一个IP地址短时间内多次请求的情况发生。我们将这种短时间内同一IP多次请求的现象称为IP聚集。

config相关配置

// IP聚集度阈值
this.CCIPLimit = 500;

// 是否超限后自动拉黑
this.CCIPLimitAutoBlock = false;

IP聚集工作原理

  1. TSW会收集统计最近请求的1000个IP地址
  2. 相同IP出现的次数作为一个数列
  3. 对这个数列的求标准方差。
  4. 对标准方差放大10倍方便观察波动
  5. 超过阈值时,告警并自动拉黑

相关指标

  • AVG_TSW_IP_STD_X10 -- IP访问次数加权方差,放大10倍方便观察
  • SUM_TSW_CC_LIMIT -- CC防御生效次数

开启IP聚集打击

如果业务本不该出现IP聚集,开发者就应该打开IP聚集检测,并采取拉黑等应对措施,保护业务安全。

// IP聚集度阈值
this.CCIPLimit = 500;

// 开启自动拉黑
this.CCIPLimitAutoBlock = true;

关闭IP聚集打击

  1. 对于本身有IP聚集的业务,应该关闭检测。
  2. 压力测试,应该关闭检测。
this.CCIPLimit = -1;