The current and only unstaking strategy for "STETH" involves transfering ERC721, as depicted in the provided Solidity code.
However, there's a issue here. If the msg.sender doesn't handel ERC721 the function will revert. This creates an issue for Contracts who intend to deposit ETH following the unstaking process. If they couldn' handle ERC721, They find themselves in a situation where they cannot perform the burn operation, forcing them to withdrawing STETH instead of ETH.
If you're operating as a contract and your functionality is dependent on receiving ETH, this situation can be problematic. Contracts might not be programmed to execute a "withdraw" or handle STETH. They may not be equipped to handle the process of swapping STETH for ETH on an exchange. All of these are a loss of funds for the user. and if they can "withdraw" and swap STETH, this incurs gas costs and potential slippage.
manual review
add more strategy for unstakeing STETH (add swapping on exchange)
The contest is live. Earn rewards by submitting a finding.
This is your time to appeal against judgements on your submissions.
Appeals are being carefully reviewed by our judges.