一句话:提出COBRA,首个融合语义上下文与函数接口的字节码级智能合约漏洞检测框架。
智能合约漏洞检测受源码稀缺限制:以太坊仅约1.79%合约开源,现有字节码工具又常忽略函数接口信息。本文提出COBRA,首次融合语义上下文与函数接口进行字节码漏洞检测。为推断签名库缺失的函数签名,提出SRIF:用CFG收集函数相关字节码,从字节码自动学习签名规则,并以SSA格式操作码优化语义上下文。最终在隐空间融合上下文与函数接口表示,经解码器和注意力模块分类漏洞。实验显示,SRIF函数签名推断F1达94.76%;有真实ABI时漏洞分类F1为93.45%;无ABI时利用推断函数特征召回率达89.46%。
The detection of vulnerabilities in smart contracts remains a significant challenge. While numerous tools are available for analyzing smart contracts in source code, only about 1.79% of smart contracts on Ethereum are open-source. For existing tools that target bytecodes, most of them only consider the semantic logic context and disregard function interface information in the bytecodes. In this paper, we propose COBRA, a novel framework that integrates semantic context and function interfaces to detect vulnerabilities in bytecodes of the smart contract. To our best knowledge, COBRA is the first framework that combines these two features. Moreover, to infer the function signatures that are not present in signature databases, we present SRIF (Signatures Reverse Inference from Functions), automatically learn the rules of function signatures from the smart contract bytecodes. The bytecodes associated with the function signatures are collected by constructing a control flow graph (CFG) for the SRIF training. We optimize the semantic context using the operation code in the static single assignment (SSA) format. Finally, we integrate the context and function interface representations in the latent space as the contract feature embedding. The contract features in the hidden space are decoded for vulnerability classifications with a decoder and attention module. Experimental results demonstrate that SRIF can achieve 94.76% F1-score for function signature inference. Furthermore, when the ground truth ABI exists, COBRA achieves 93.45% F1-score for vulnerability classification. In the absence of ABI, the inferred function feature fills the encoder, and the system accomplishes an 89.46% recall rate.
DOI 原文 ·
@inproceedings{paperbot8305,
title = {COBRA: Interaction-Aware Bytecode-Level Vulnerability Detector for Smart Contracts},
author = {Wenkai Li and Xiaoqi Li and Zongwei Li and Yuqing Zhang},
booktitle = {ASE},
year = {2024},
doi = {10.1145/3691620.3695601}
}