MorpheusAI

MorpheusAI
Foundry
22,500 USDC
View results
Submission Details
Severity: medium
Invalid

ETH sent to `outboundTransfer` could be lost

Summary

If a user send funds to outboundTransfer, the funds will be lost for ever. the function does not use the msg.value to perform any business logic.

Vulnerability Details

the function outboundTransfer only take into consideration the user _amount parameter to transfer tokens. However, this value may not represents the exact value sent in msg.value.

function outboundTransfer(
address _token,
address _to,
uint256 _amount,
uint256 _maxGas,
uint256 _gasPriceBid,
bytes calldata _data
) external payable returns (bytes memory) {
IERC20(_token).transferFrom(msg.sender, _to, _amount);
return abi.encode(_token, _to, _amount, _maxGas, _gasPriceBid, _data);
}

Impact

if a user send ETH to this function by accident, then all its ETH are lost forever.

Tools Used

Manual Audit

Recommendations

As the function does not use the msg.value to perform any business logic. therefore, there is no need for the outboundTransfer to be payable

Updates

Lead Judging Commences

inallhonesty Lead Judge
over 1 year ago
inallhonesty Lead Judge over 1 year ago
Submission Judgement Published
Invalidated
Reason: Known issue

Support

FAQs

Can't find an answer? Chat with us on Discord, Twitter or Linkedin.