#43528 [SC-Low] fund freeze scenario

Submitted on Apr 7th 2025 at 19:20:26 UTC by @Shahen for Audit Comp | Spectra Finance

  • Report ID: #43528

  • Report Type: Smart Contract

  • Report severity: Low

  • Target: https://github.com/immunefi-team/Spectra-Audit-Competition/blob/main/src/router/Dispatcher.sol

  • Impacts:

    • Temporary freezing of funds for at least 24 hour

Description

Brief/Intro

In the Dispatcher._dispatch() function, If the passed command is TRANSFER_NATIVE and the recipient cant accept native tokens, instead of reverting the whole transaction the native tokens will be stuck in the contract where Dispatcher.sol is inherited to. Mitigation is simple by checking the return value of the low-level call in L485 (Dispatcher.sol).

I have attached a coded foundry poc, Make a new test file under /test and paste the test code. Run forge test --match-path <testfile-name> -vvv

Vulnerability Details

Same as above brief intro

Impact Details

Freezing of native tokens if recipient address cant accept natives.

References

https://github.com/immunefi-team/Spectra-Audit-Competition/blob/1cebdc67a9276fd87105d13f302fd77d000d0c0b/src/router/Dispatcher.sol#L485

Proof of Concept

Proof of Concept

Was this helpful?