Slowmist: 3,619 ETH-based tokens are affected by fake deposit vulnerability
On 11 July, Slowmist disclose full detail of “fake deposit” vulnerability as they promised. Several days ago, they disclosed similar case for USDT based on omni protocol. According to incomplete summary, 3,619 token contracts based on ERC-20 are affected and some of them are well-known tokens. Migration to new contract is advised for these tokens or exchanges may suffer loss.
The “fake deposit” vulnerability of Ethereum-based token has a very wide impact, including at least: related centralized exchanges, centralized wallets, token contracts, etc. There are 3,619 contracts involved as per incomplete summary. As there are many well-known tokens, a self-review is advised for all parties concerned. Since this is not just a vulnerability, it is already a ongoing attack! For the sake of impact, we took a responsible disclosure process.
The timeline of the disclosure of this attack was as follows:
2018/6/28 Slowmist detected “fake deposit” of USDT tokens.
2018/7/1 Slowmist began to analyze whether there are similar problems in the well-known public blockchain
2018/7/7 Slowmist captures and confirms Ethereum-related tokens are being exploited by the vulnerability.
2018/7/8 Slowmist analyzed that the impact may be greater than USDT alone and promptly notify relevant customers and partners of Slowmist.
2018/7/9 Slowmist zone issued the first warning
2018/7/10 Slowmist safety team forward details to at least 10 peers of blockchain security
2018/7/11 disclose detailed report officially
For technical detail, please check the original report.
The report also disclose an example of the attack
In addition to judging the success of transaction event, a secondary judgment of whether the balance is accurately increased should also be added, which could be implemented through the event log. Many centralized exchanges, wallets and other service platforms will use the event log to obtain the transfer amount to determine the accuracy of the transfer. But the event can be written arbitrarily and not an option that cannot to be altered by default.
As an exchange, strict security audits should be conducted before listing new token contracts. Such security audits must enforce best security practices on contract builders.
As a token issuer, the best security practices should be strictly enforced in coding, and third-party security auditor should be required to complete a rigorous and complete security audit.
Q: Why do Slowmist adopt such a disclosure method?
A: The nature is to race against the attacker, but this ecology is too big. Our resources is not enough cover them all. We can only cover it as much as we can. For example, we notified our customers in the first place, then the partners with Slowmist and then security peers. Details was disclosed eventually.
Q: Why do you say that it is not just a vulnerability but an attack?
A: Actually, in our style, we generally don’t just mention loopholes. The vulnerability is too common for us. It is not a good way to promote us through high-profile vulnerability. However, real attack is different. The attack has already happened and we must race against the attacker. Disclosure is a piece of art. Nothing is perfect, we can only do our best to make this ecology safe.
Q: At least 3,619 token are exposed to “fake deposit” vulnerabilities. What should these tokens do?
A: It’s very hard to say. Generally speaking, the best way to secure these tokens is to recreate them and swap them the old tokens. If they don’t do this, it will be like a “time bomb”. You can’t expect all the centralized exchanges, centralized wallets and other platforms to do the listing safely. Once the checking of “fake deposit” is not implemented, the exchanges may suffer loss. And if the platform loses heavily, it will certainly be a loss to the entire market.
Q: What are the well-known tokens that are exposed to “fake deposit” vulnerabilities?
A: We will not give specific names.
Q: Which exchanges and wallets have been attacked by the “fake deposit” vulnerability?
A: I am afraid no one will say it publicly, and we will do the same.
Q: Is it possible not to reissue these tokens?
A: Maybe, but there is potential risk. Those tokens that choose not to recreate contract should either be ready to launch mainnet or notify all exchanges of the issue.
Q: Why can Slowmist capture such attacks?
A: We have a robust threat intelligence network. When we detect an exception, we tend to think this is an attack.
Q: In addition to “fake deposit” vulnerability in USDT and Ethereum-based tokens, is other blockchain affected?
A: We will not disclose it for the time being, but believe that the “fake deposit” vulnerability has become a type of vulnerability that cannot be ignored in the blockchain ecosystem. This is a very important finding of the Slowmist security team in the history.