Skip to content

FLOW-8: No Recovery Mechanism for Stray Tokens or Native Funds #23

@liobrasil

Description

@liobrasil

Severity: Low

Files Affected

  • solidity/src/FlowYieldVaultsRequests.sol

Description

FlowYieldVaultsRequests can hold native funds (via receive() and native deposits) and ERC20 tokens (via _validateDeposit() and refunds pulled in completeProcessing()), but it only transfers assets out through request-driven paths (startProcessing() to COA, and user/admin refund flows).

There is no generic recovery or sweep mechanism exposed in this file. However, tokens or native funds sent directly to the contract outside the intended request flows (including accidental transfers, airdrops, or mistaken deposits to unsupported tokens) are not recoverable through any function here, and may remain trapped indefinitely.

This could lead to permanent loss of accidentally sent assets and complicate operational handling if external systems mistakenly transfer funds to the contract address.

Recommendation

Add a constrained rescue mechanism for non-accounted assets (carefully excluding escrowed/refund-tracked balances) with clear operational controls.


Parent Issue: #15

Metadata

Metadata

Assignees

Labels

LowLow severity security finding⎈ QuantStampQuantStamp audit finding

Type

No type

Projects

No projects

Milestone

No milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions