A caller-selected contract could determine how much Slice’s FundsModule made available for withdrawal, and the flaw led to a loss of about $41,000.
The vulnerable function is identified by selector 0x9d2edfac. A contract picked by the caller supplied a release figure, which FundsModule used to set the amount available for withdrawal. The code did not confirm that matching Ether (ETH) or USD Coin (USDC) had entered the contract before permitting the payout. That left the withdrawal decision dependent on an external figure rather than a verified transfer of assets into FundsModule.
Two other smart contract incidents had separate failure points. BitBay Vault lost about 14,838.47 Dai (DAI) when a zero-liquidity condition led its withdrawal process to send its entire token balance. An Ethervista pool attack was estimated at $18,600 and involved a defect in swap validation. The reported Slice loss was greater than both amounts.



