论文2024CCF-B-Credible Link Flooding Attack Detection and Mitigation: A Blockchain-Based Approach阅读
本文对CREDIT文章进行了阅读理解。该文采用选择接入到区块链中的节点,保证每条链路都包含至少一个C nodes,不断将节点中收集的特征(LBU、RTT、PKT)一旦超过预测值就会报警,并结合标准差较低的链路推断出脆弱链路,随后选择重路由或丢包的缓解策略
论文汇报:基于区块链的可信链路洪泛攻击检测与缓解 (CREDIT)
文章名称: Credible Link Flooding Attack Detection and Mitigation: A Blockchain-Based Approach
一、 研究背景与核心问题
1. 攻击的隐蔽性与危害性
-
链路洪泛攻击 (DDoS-LFA): LFA 是一种针对网络基础设施的分布式拒绝服务攻击。其隐蔽性在于它利用合法的、低速率的攻击流量,集中在少数被精心挑选的关键链路上,从而导致局部网络拥塞,有效隔离选定的网络区域。
-
传统防御的局限: 现有的防御机制在部署可信链路防御时面临巨大挑战,主要因为 LFA 攻击手段智能化且善于伪装成合法流量,使得流量溯源和攻击识别困难。

2. 本文的核心创新点
-
与其他工作的区别: 现有的将区块链应用于网络安全的工作,大多仅使用区块链来共享传统检测方法得出的检测结果。
-
CREDIT 的创新: CREDIT 方案将区块链的应用向前推进了一步,它被用来实时记录和共享链路与流的原始信息。这从根本上保证了检测数据的可信性(Credibility)和不可篡改性。
二、 CREDIT 框架的核心机制
CREDIT 框架巧妙地融合了区块链的可信数据源和深度学习的强大分析能力。

图1主要讲解 区块链的数据结构以及其不可篡改性的来源。
图1解释为什么区块链可以为后续的 DDoS-LFA 检测系统 CREDIT 提供可信、防篡改的数据存储,为后文“利用区块链共享流量、链路信息”的设计奠定基础
(1)区块链由一系列按时间顺序连接的“区块”组成。图上左为 Parent Block(父区块),右为 Child Block(子区块),中间的“链”形符号表示每个区块都会包含前一个区块的哈希值,从而形成链式结构。这是区块链“不能被随意修改”的关键原因之一。
(2)每个区块由区块头(Block Header)和区块体(Block Body)组成
区块头包含:
👉 文中强调:通过默克尔树结构,节点可以快速验证交易内容是否被恶意修改
-
previous hash:前一个区块的哈希值
-
timestamp:时间戳
-
version:版本号
-
difficulty:挖矿难度
-
Merkle root:默克尔树根,用于快速验证交易
-
nonce:PoW 工作量证明的随机数
-
👉 这些字段共同保证区块链的安全性、可验证性以及抗篡改性
-
区块体包含:
-
大量交易(Tx_1, Tx_2, ..., Tx_n)
-
对交易进行两两哈希构成的 Merkle 树结构(Hash 1,2 之类)
-
最终生成的顶层哈希就是区块头里的 Merkle root

链路洪泛攻击(LFA)目标并不是服务器,而是 靠近某个区域的关键链路(Target Link)
CREDIT 会部署在距离受保护区域不到十跳的路由器上。
图3所描述的内容:
-
攻击者控制 bot → 发送低速攻击流量
-
流量通过 Internet 进入受保护区域附近
-
多条 decoy server 路径被攻击流量模拟
-
流量最终汇聚到某条关键链路(Target Link)→ 被堵塞
-
CREDIT 系统就在这条链路附近的路由器上运行
-
使用区块链记录链路数据
-
使用 AI 模块检测异常
-
最终保护中心的 Protected Area 不受影响

图4 展示了CREDIT 的7个模块及其工作流程 :初始化、CREDIT 节点选择、脆弱链路分析、链路监控与特征提取、攻击检测、源头识别 和 攻击缓解 。

1.初始化模块,管理员在区块链智能合约上初始化三张表,状态表 (Status Table)、邻居表 (Neighbour Table)、链路表 (Link Table)。网络中的每个节点将其邻居信息上传到邻居表,将其连接的链路上传到链路表 。
状态表分为三种状态。
- C-NODE (CREDIT Node): 表示该节点被选为 CREDIT 节点。这些节点负责监控脆弱链路、提取特征、参与共识机制以及验证信息 。
-
N-NODE (Normal Node): 表示普通节点。这些节点处于被覆盖的状态(即其连接的链路已被 C-NODE 监控),不需要执行 CREDIT 的核心检测算法 。
U-NODE (Unknown Node): 表示未知状态节点。这是初始状态,意味着该节点尚未被分类为 C-NODE 或 N-NODE,需要通过后续的选择算法来确定其最终角色 。
2.CREDIT 节点选择模块 (CREDIT Node Selection Module),旨在选择最少数量的 C-NODEs 来监控所有链路。
-
计算与选择: 智能合约计算剩余节点的邻居数量(度),并使用贪婪算法(基于顶点覆盖问题 VCP)选择 C-NODEs 。
-
覆盖保证: 选择策略确保每条链路至少连接到一个 C-NODE 。
状态更新: 智能合约更新最终的状态表,所有节点同步此结果 。
3. 脆弱链路分析模块 (Fragile Link Analysis Module)用于识别高流量密度的“脆弱链路”(Fragile Links),这些链路最可能成为攻击目标 。
-
数据收集: C-NODEs 周期性读取数据包信息,收集流的源 IP 和目的 IP,分别存入源空间 (SS) 和目的空间 (DS) 。
权重计算: C-NODEs 根据流量密度计算每条链路的权重并更新到区块链上 。

结论: 链路的权重越高,意味着其承载的潜在流量密度越大。因此,这些高权重链路最容易成为攻击者的目标,被称为“脆弱链路”,需要被重点监控 。
排序与筛选: 智能合约对链路权重进行降序排列,选出权重最高的几条链路作为“脆弱链路”进行重点监控 。

4. 链路监控与特征提取模块 (Link Monitoring & Feature Extraction Module)
-
链路特征(用于发现攻击)LBU: 链路带宽利用率 。PKT: 数据包数量 。RTT: 往返时间(用于判断链路是否阻塞)。
- 源特征(用于识别僵尸网络): 计算源发送数据包的 4 种标准差(SDSP, SDP, SDB, SDT),因为僵尸网络通常表现出相似的发送特征(低标准差)。SDSP:发送数据包平均大小的标准差 。SDP:发送数据包数量的标准差(单位时间内发送包数的波动)。SDB:发送字节数的标准差(单位时间内发送数据量的波动)。SDT:数据包发送时间间隔的标准差 。
5. 攻击检测模块 (Attack Detection Module)
- 模型训练与预测: 使用“可信长短期记忆网络”(C-LSTM)模型。在启动阶段利用区块链上的实时数据训练模型,在运行阶段预测下一时刻正常的 LBU 和 PKT 值 。、
- 异常判断: 将实际提取的 LBU/PKT 值与预测值进行比较。如果差异巨大,则触发警报 。
-
攻击确认: 如果 LBU 和 PKT 均报警,且 RTT(往返时间)异常升高,系统确认正在发生攻击 。
-

6. 源头识别模块 (Source Identification Module)
当检测到攻击后,该模块用于精确定位恶意的僵尸网络节点(Bots)。
相似度分析: C-NODEs 计算不同源的特征相似度。如果两个源的特征高度相似(标准差小且接近),则被判定为僵尸节点 。
协作确认: 各 C-NODE 将识别出的可疑源列表上传至区块链,智能合约取所有列表的交集作为最终结果,以减少误判 。
7. 攻击缓解模块 (Attack Mitigation Module)
最后,C-NODEs 根据区块链下发的最终恶意源列表执行缓解措施 。
-
策略执行:重路由 (Reroute): 如果连接拥塞链路的 C-NODE 有另一条低负载(低 LBU)的备用链路,则将恶意流量重路由到该链路 。丢包 (Drop): 如果没有备用链路,则直接丢弃来自恶意源的数据包 。

图5说明 CREDIT 节点选择算法的数学基础
图5(a)顶点覆盖问题 (VCP) 的示例,该问题用于选择最少的节点作为 CREDIT 节点 (C-NODEs) 来覆盖网络中的所有链路 。
图5(b) 展示了如何将 VCP 转化为集合覆盖问题 (SCP),CREDIT 系统利用 SCP 的贪婪算法来解决节点选择问题 。


1. 区块链作为可信数据层
-
功能: 区块链作为底层数据基础设施,负责记录网络中**链路(Link)和流(Flow)**的实时状态信息,例如链路带宽、流量、延迟以及流的路径信息等。
-
价值: 这种实时、可信的数据共享机制赋予了受保护区域的路由器两个关键能力:
-
轻松追踪所有活动流的路径(Trace Paths): 这是 LFA 防御的关键,因为 LFA 的攻击流量往往通过多条路径汇聚在某一个脆弱链路上。
-
捕获脆弱链路(Capture Fragile Links): 基于链路的实时特征,可以准确识别最易受到攻击的或已经被攻击的链路。
-
2. 可信深度学习检测模块
-
输入: 模块的输入是基于区块链提供的高质量、可信且实时的链路特征。
-
模型: 采用可信深度学习方法(Credible Deep Learning)。该模型基于链路特征,在随机选择的特征子集上进行训练和推断。
-
核心目标: 利用深度学习的非线性拟合能力,从大量合法流量中精确分辨出低速率、伪装良好的 LFA 攻击流量模式,并判断链路是否处于被洪泛状态。
3. 攻击缓解与响应
-
基础: 一旦检测模块识别出脆弱链路和攻击流,缓解机制便会启动。
-
策略: 基于攻击流的路径信息和链路状态,采用流量工程(Traffic Engineering)手段进行缓解,典型的操作包括:
-
流量重路由(Rerouting): 将合法流量从受攻击的链路绕开。
-
流量限速/过滤(Throttling/Filtering): 对检测出的攻击流进行速率限制或直接丢弃。
-
三、 实验验证与主要贡献
1. 实验环境
-
论文在一个基于 **SDN(软件定义网络)**架构的测试平台(如 Mininet)上进行了实验验证,以模拟真实的网络环境和动态流量。
2. 性能优势
-
检测精度: CREDIT 在 LFA 检测方面表现出更高的准确率(Accuracy)和召回率(Recall),尤其是在应对低速率和高隐蔽性攻击时。
-
可信性: 区块链机制保证了数据源的可靠性,增强了整个防御系统的可信度。
-
缓解效率: 能够快速准确地定位攻击路径和脆弱链路,从而实现高效的缓解,显著降低了网络性能(如吞吐量、延迟)的损失。
四、 总结
CREDIT 方案的价值在于,它不仅为 LFA 防御提供了一种新的深度学习模型,更重要的是,它创造性地利用区块链技术解决了网络安全领域中数据源不可信的这一根本性难题。通过构建一个实时、可信的链路/流信息共享机制,CREDIT 为快速、准确的 LFA 检测和缓解奠定了坚实的基础。
更多推荐

所有评论(0)