Lido assures LDO, stETH tokens remain safe despite flaw in token contract
Ethereum staking protocol Lido Finance has assured both Lido DAO (LDO) and staked-Ether (stETH) tokens remain safe despite hackers allegedly exploiting a known security flaw in LDO’s token contract.
Lido didn’t confirm any exploits, but acknowledged the security flaw was known and reassured LDO and stETH funds remain safe in response to a Sept. 10 post by blockchain security firm SlowMist.
SlowMist said LDO’s flawed token contract allows bad actors to facilitate “fake deposit” attacks on exchanges because LDO’s token contract enables users to execute transactions even where they don’t have sufficient funds. This code deviates from the Ethereum Request for Comment 20 (ERC-20) token standard, according to SlowMist.
However, Lido Finance argued the flaw is built into all ERC-20 tokens — not just Lido’s LDO token:
This behaviour is expected and conforms to the ERC20 token standard (see tweet below). Both LDO and stETH (and Lido governance) remain safe.
Lido token integration guides will be updated with LDO specifics to make this more visible shortly.
— Lido (@LidoFinance) September 10, 2023
SlowMist said the “fake deposit” attacks came from LDO’s token contract executing transfers where the value is larger than what the user actually owns, triggering a false return as opposed to reverting the transaction. While the firm said Lido’s token contract has recently been exploited via this attack, no on-chain evidence was provided.
Cointelegraph reached out to SlowMist for comment but did not receive an immediate response.
Meanwhile, on-chain analyst “Hercules” explained on Sept. 10 that the security flaw may not be picked up by cryptocurrency exchanges.
SlowMist recommends LDO holders to also check the return values of the token contract transfers in addition to the success or failure of a transaction.
The blockchain security firm concluded that token contract implementations and behaviors vary by project and to conduct comprehensive testing before integrating any new tokens.
However, Lido highlighted in the official Ethereum Improvement Proposal document — co-authored by Vitalik Buterin in November 2015 — that both the “transfer” and “transferFrom” functions must return the transfer status and are only recommended to revert a transaction in exceptional cases.
ERC20 token standard: https://t.co/YlrS1ZN6Fd
1) Both transfer and transferFrom are required to return transfer status and are only recommended to revert a tx in exceptional cases.
2) The standard says that a caller is obliged to check the return status (see ‘Token methods’). pic.twitter.com/6KTcIyxo2F
— Lido (@LidoFinance) September 10, 2023
To resolve the security flaw, Lido confirmed the LDO token integration guides will soon be updated.