Detecting Asymmetric Application-layer Denial-of-Service Attacks In-Flight with FineLame

eBPF+KMeans基于资源指标检测非对称DoS攻击。

FINELAME Design

主要由三部分组成

  • Programmer annotations:标志着一个请求正在被处理
  • Fine-grained resource monitors:以文本切换、mallocs、页面故障的粒度跟踪in-flight请求的资源利用率
  • cross-layer anomaly detection:学习合法的行为,并在攻击偏离这些行为时立即检测出来

Request-mapping in FINELAME

主要规定了三个annotations

  • startProcessing:开始一个phase。记录这之后的任何资源利用或分配
  • attributeRequest:把phase attribute给一个request
  • endProcessing:表示处理完了

上面这个模型显然是串行的,如果存在并行或者shared的情况,需要程序员灵活应变。

Resource Monitor Architecture

表二列举了FineLame采集的事件。主要是sche、page fault、malloc

Attack Detection

这个检测问题可以简化为在n维空间中量化一个向量的异常。一旦收集到足够多的数据来计算合法请求行为的细微特征,我们就可以训练一个异常检测模型。

论文用的是K-means。