code-423n4 / 2023-05-base-findings

1 stars 0 forks source link

Loss of airdropped Token or NFT in NFT Bridge #110

Closed code423n4 closed 1 year ago

code423n4 commented 1 year ago

Lines of code

https://github.com/ethereum-optimism/optimism/blob/382d38b7d45bcbf73cb5e1e3f28cbd45d24e8a59/packages/contracts-bedrock/contracts/L1/L1ERC721Bridge.sol#L77

Vulnerability details

Impact

Loss of airdropped Token or NFT in NFT Bridge and Token Bridge

Proof of Concept

Contract L1ERC721Bridge is for bridging NFTs from L1 to L2 and it holds all the bridged NFTs.

Most of the NFT projects would airdrop new NFTs for previous owners or drop ERC20 token based either by sending the new NFTs to holders address or by allowing the holder to call a function and receive the airdrop.

There is no functionality to handle airdropped NFTs in the NFT bridge. users would lose pushed airdrops and they would be locked in the bridge. and for pull airdrops users need to bridge NFT from L2 and then call airdrop function.

the impact is

Tools Used

Manual Review

Recommended Mitigation Steps

We recommend the protocol add a function for admin to sweep token or NFT from the bridge to avoid loss of aridrop

Assessed type

Token-Transfer

c4-judge commented 1 year ago

0xleastwood marked the issue as primary issue

c4-judge commented 1 year ago

0xleastwood marked the issue as satisfactory

c4-judge commented 1 year ago

0xleastwood marked the issue as selected for report

anupsv commented 1 year ago

Provide a PoC to show the impact described.

c4-sponsor commented 1 year ago

anupsv marked the issue as sponsor disputed

itsmetechjay commented 1 year ago

@JeffCX please provide PoC per the sponsor's request.

JeeberC4 commented 1 year ago

@JeffCX please provide POC within 24 hours.

0xleastwood commented 1 year ago

No POC, so marking invalid for now.

c4-judge commented 1 year ago

0xleastwood marked the issue as unsatisfactory: Insufficient proof