计算机科学
智能合约
数据库事务
计算机安全
执行
访问控制
国家(计算机科学)
小贩
数据库
算法
法学
政治学
作者
Xiaoli Zhang,Wenping Sun,Zhicheng Xu,Hongbing Cheng,Chengjun Cai,Helei Cui,Qi Li
标识
DOI:10.1109/tifs.2024.3349852
摘要
Recently, smart contracts have been widely applied in security-sensitive fields yet are fragile to various vulnerabilities and attacks. Regarding this, existing research efforts either statically scrutinize smart contracts’ code or detect suspicious transaction execution flows. However, they either fail to timely protect contracts or only handle a small subset of well-known vulnerabilities. In the paper, we propose EVM-Shield that secures vulnerable smart contracts in real-time via fine-grained access control over sensitive states. The behind rationale is most of attacks aim to manipulate money-related states (e.g., tokens) for profits. Specifically, transaction-level state access control policies are first defined by developers and then translated into EVM-level policies with contract-aware function-level state access permissions. In policy enforcement, EVM-Shield introduces a hybrid storage analyzer to accurately identify (dynamic-allocated) storage locations for policy-involved states and a multi-stage cache based filter to fast revert bad transactions with unexpected state access behaviors. Finally, we conduct thorough experiments using 12 types of real-world contract vulnerabilities and all open-source smart contracts on the first 8 M blocks of Ethereum. The results demonstrate that EVM-Shield outperforms two state-of-the-art runtime analysis tools in terms of attack detection. Extensive performance evaluations with 185 M real-world transactions show that EVM-Shield can block 100% unexpected state accesses at the cost of 8% throughput degradation (compared with the native EVM).
科研通智能强力驱动
Strongly Powered by AbleSci AI