paperbot · PL 论文追踪

全部论文 待读 收藏

P2 Following the “Thread”: Toward Finding Manipulatable Bottlenecks in Blockchain Clients

顺着“线程”:面向发现区块链客户端中的可操纵瓶颈
ISSTA Proceedings of the 33rd ACM SIGSOFT International Symposium on Software Testing and Analysis2024匹配度 1/10 · 该论文聚焦区块链客户端的可操纵瓶颈检测与DoS攻击面,属于系统安全与运行时分析;虽然标签涉及程序分析与抽象解释,但与用户关注的LLM/Agent、浮点程序分析、贝叶斯程序分析及AI与PL交叉方向基本无关。引用 1 inbox
Shuohan Wu, Zihao Li, Hao Zhou, Xiapu Luo, Jianfeng Li, Haoyu Wang
crossref: 2026-09-12

AI 速览

一句话:提出 ThreadNeck,以线程建模客户端运行时并识别可被攻击者利用的瓶颈,在四个主流客户端中发现 13 个可操纵瓶颈。

区块链客户端是区块链网络的基础组件,各自维护账本副本,对去中心化、完整性与稳定性至关重要。作为复杂软件,客户端也存在瓶颈;部分瓶颈会形成攻击面,攻击者故意过载这些弱点使客户端执行拥塞,导致拒绝服务,即“可操纵瓶颈”。现有研究仅关注少数瓶颈,且依赖人工分析,缺乏系统识别方法。本文剖析软件瓶颈的主要成因,提出工具 ThreadNeck,在客户端运行时监控瓶颈症状,并将客户端建模为多个线程及其相互关系以刻画行为;据此识别可疑瓶颈,并判断其是否可被外部攻击者利用。作者将 ThreadNeck 应用于四种不同编程语言开发的主流客户端,共发现 13 个可操纵瓶颈,其中 6 个为未知。

问题
区块链客户端中的部分瓶颈可被外部攻击者故意过载,造成拒绝服务;现有工作只覆盖少数瓶颈且依赖人工分析,缺少系统识别方法。
方法
提出 ThreadNeck,将客户端建模为多个线程及其相互关系,在运行时监控瓶颈症状,识别可疑瓶颈并判断其是否可被外部攻击者操纵。
评估
将 ThreadNeck 应用于四种不同编程语言实现的主流区块链客户端,共发现 13 个可操纵瓶颈,其中 6 个为此前未知。
原文摘要(Abstract)

Blockchain clients are the fundamental element of the blockchain network, each keeping a copy of the blockchain’s ledger. They play a crucial role in ensuring the network’s decentralization, integrity, and stability. As complex software systems, blockchain clients are not exempt from bottlenecks. Some bottlenecks create new attack surfaces, where attackers deliberately overload these weak points to congest client’s execution, thereby causing denial of service (DoS). We call them manipulatable bottlenecks. Existing research primarily focuses on a few such bottlenecks, and heavily relies on manual analysis. To the best of our knowledge, there has not been any study proposing a systematic approach to identify manipulatable bottlenecks in blockchain clients. To bridge the gap, this paper delves into the primary causes of bottlenecks in software, and develops a novel tool named ThreadNeck to monitor the symptoms that signal these issues during client runtime. ThreadNeck models the clients as a number of threads, delineating their inter-relationship to accurately characterize the client’s behavior. Building on this, we can identify the suspicious bottlenecks and determine if they could be exploited by external attackers. After applying ThreadNeck to four mainstream clients developed in different programming languages, we totally discover 13 manipulatable bottlenecks, six of which are previously unknown.

链接与引用

DOI 原文 · PDF(开放获取) ·

BibTeX
@inproceedings{paperbot8470,
  title = {Following the “Thread”: Toward Finding Manipulatable Bottlenecks in Blockchain Clients},
  author = {Shuohan Wu and Zihao Li and Hao Zhou and Xiapu Luo and Jianfeng Li and Haoyu Wang},
  booktitle = {ISSTA},
  year = {2024},
  doi = {10.1145/3650212.3680372}
}