As one of the representative blockchain platforms, Ethereum has attracted lots of attacks. Due to the existed financial loss, there is a pressing need to perform timely investigation and detect more attack instances. Though multiple systems have been proposed, they suffer from the scalability issue due to the following reasons. First, the tight coupling between malicious contract detection and blockchain data importing makes them infeasible to repeatedly detect different attacks. Second, the coarse-grained archive data makes them inefficient to replay transactions. Third, the separation between malicious contract detection and runtime state recovery consumes lots of storage. In this paper, we present the design of a scalable attack detection framework on Ethereum. It overcomes the scalability issue by saving the Ethereum state into a database and providing an efficient way to locate suspicious transactions. The saved state is fine-grained to support the replay of arbitrary transactions. The state is well-designed to avoid saving unnecessary state to optimize the storage consumption. We implement a prototype named EthScope and solve three technical challenges, i.e., incomplete Ethereum state, scalability, and extensibility. The performance evaluation shows that our system can solve the scalability issue, i.e., efficiently performing a large-scale analysis on billions of transactions, and a speedup of around 2,300x when replaying transactions. It also has lower storage consumption compared with existing systems. The result with three different types of information as inputs shows that our system can help an analyst understand attack behaviors and further detect more attacks. To engage the community, we will release our system and the dataset of detected attacks.
翻译:作为具有代表性的连锁平台之一, Eceenum 吸引了许多攻击。 由于存在财务损失, 迫切需要及时进行调查并发现更多的攻击事件。 虽然提出了多个系统, 但由于以下原因, 它们面临可缩缩的问题。 首先, 恶意合同检测和连锁数据导入之间的紧密连接使得它们无法反复发现不同的攻击。 第二, 粗糙的档案数据使得它们无法保存不必要的状态以优化交易。 第三, 恶意合同检测和运行时间状态恢复之间的分离消耗了大量的存储量。 在本文件中, 我们向 Etheenum 展示了一个可缩缩放攻击行为类型的测试框架。 它通过将 Ethereum 状态保存到数据库中来克服可缩放问题的可缩放性问题, 提供了找到可疑交易的有效途径。 保存的状态被微小地放大了支持任意交易的重现。 该状态的设计周密地避免了不必要的状态, 以优化我们更低的存储量消费。 我们实施了名为 EthScope 和解决了三大技术挑战, 也就是说, 不完整的 Eceum 状态、 可缩缩缩度、 可缩缩略性、 和扩展的系统分析, 将显示我们现有的系统交易的快速性分析结果。