#46886 [SC-Low] `destroyAgent()` functionality can easily be bricked due to Frontrunning Attack
Description
Description
function destroy(address payable _recipient)
external
onlyAssetManager
nonReentrant
{
@>> require(token.totalSupply() == 0, "cannot destroy a pool with issued tokens");
token.destroy(_recipient);
// transfer native balance, if any (used to be done by selfdestruct)
Transfers.transferNAT(_recipient, address(this).balance);
// transfer untracked f-assets and wNat, if any
.............................
}Impact Details
Recommendations
Proof of Concept
Proof of Concept
Previous#46848 [SC-Insight] Minters can grief agents by deliberately fragmenting the agent's redemption ticket queue with minimal size tickets, preventing or delaying large transfers to core vaultNext#46858 [SC-High] The agent owner can exploit a malicious rewardManager to steal tokens from the protocol
Was this helpful?