当前位置:网站首页>Superfluid_ HQ hacked analysis
Superfluid_ HQ hacked analysis
2022-07-06 01:18:00 【Know Chuangyu blockchain Security Laboratory】
front ⾔
2022 year 2 month 8 Japan , Know Chuangyu blockchain Security Lab Detected on Ethereum DeFi agreement superfluid Encounter hacker attack , Loss exceeding 1300 Thousands of dollars . The laboratory tracked and analyzed this event for the first time .
The attack involves basic information
Superfluid:0xEBbe9a6688be25d058C9469Ee4807E5eF192897f
Attack trading hash:0x396b6ee91216cf6e7c89f0c6044dfc97e84647f5007a658ca899040471ab4d67
Hacker address :0x1574F7F4C9d3aCa2EbcE918e5d19d18aE853c090
Attack contract address : 0x32D47ba0aFfC9569298d4598f7Bf8348Ce8DA6D4
Vulnerability analysis
The core of the vulnerability
The core of this vulnerability lies in the function callAgreement, This function is mainly used to provide a function named "ctx" Data structure of ,“ctx” Used for communication sharing between protocols . The attacker of this incident is right ”ctx“ The data are forge , Achieve the purpose of cheating the contract .
Exploit
Why fake data is used and how attackers construct fake “ctx” Data ?
From the transaction, we can see that the attacker is directly in callData A false is passed in at the end “ctx”, At the same time, it's really “ctx” The data is also constructed , It's just that the program will callData Data and “ctx” Packaged into an object , When the protocol decodes the object ,ABI The decoder will only process the data at the front and ignore the data at the back .
And build a fake “ctx” The data is not complicated , because “ctx” The end of the structure is all zero, so we only need to imitate “ctx” Structure adds it directly to userData in , The following is an official example of how to build a fake “ctx”:
summary
This attack event lies in the unconditional trust of the source data during protocol data processing , User data should be identified and distinguished from official construction data . In the near future , Various contract vulnerabilities and security incidents occur frequently , Contract audit 、 Risk control measures 、 It is necessary to implement the emergency plan .
边栏推荐
- Ordinary people end up in Global trade, and a new round of structural opportunities emerge
- Finding the nearest common ancestor of binary tree by recursion
- Questions about database: (5) query the barcode, location and reader number of each book in the inventory table
- Installation and use of esxi
- Cglib dynamic agent -- example / principle
- vSphere实现虚拟机迁移
- China Taiwan strategy - Chapter 8: digital marketing assisted by China Taiwan
- Mathematical modeling learning from scratch (2): Tools
- Recursive method to realize the insertion operation in binary search tree
- Introduction to robotics I. spatial transformation (1) posture, transformation
猜你喜欢
Four commonly used techniques for anti aliasing
SSH login is stuck and disconnected
Finding the nearest common ancestor of binary search tree by recursion
Cf:h. maximum and [bit operation practice + K operations + maximum and]
现货白银的一般操作方法
Daily practice - February 13, 2022
The inconsistency between the versions of dynamic library and static library will lead to bugs
ORA-00030
Yii console method call, Yii console scheduled task
About error 2003 (HY000): can't connect to MySQL server on 'localhost' (10061)
随机推荐
Some features of ECMAScript
什么是弱引用?es6中有哪些弱引用数据类型?js中的弱引用是什么?
Development trend of Ali Taobao fine sorting model
In the era of industrial Internet, we will achieve enough development by relying on large industrial categories
The growth path of test / development programmers, the problem of thinking about the overall situation
The basic usage of JMeter BeanShell. The following syntax can only be used in BeanShell
Cf:c. the third problem
Cf:h. maximum and [bit operation practice + K operations + maximum and]
Netease smart enterprises enter the market against the trend, and there is a new possibility for game industrialization
Opinions on softmax function
Zhuhai's waste gas treatment scheme was exposed
Construction plan of Zhuhai food physical and chemical testing laboratory
Cf:d. insert a progression [about the insert in the array + the nature of absolute value + greedy top-down]
Vulhub vulnerability recurrence 75_ XStream
Code Review关注点
记一个 @nestjs/typeorm^8.1.4 版本不能获取.env选项问题
IP storage and query in MySQL
A glimpse of spir-v
SSH login is stuck and disconnected
C language programming (Chapter 6 functions)