FIAT DAO veFDT contest - ayeslick's results

Unlock liquidity for your DeFi fixed income assets.

General Information

Platform: Code4rena

Start Date: 12/08/2022

Pot Size: $35,000 USDC

Total HM: 10

Participants: 126

Period: 3 days

Judge: Justin Goro

Total Solo HM: 3

Id: 154

League: ETH

FIAT DAO

Findings Distribution

Researcher Performance

Rank: 19/126

Findings: 1

Award: $389.99

🌟 Selected for report: 0

🚀 Solo Findings: 0

Findings Information

🌟 Selected for report: JohnSmith

Also found by: ayeslick, reassor, rokinot, scaraven

Labels

bug
duplicate
2 (Med Risk)

Awards

389.9867 USDC - $389.99

External Links

Lines of code

https://github.com/code-423n4/2022-08-fiatdao/blob/main/contracts/features/Blocklist.sol#L25

Vulnerability details

Impact

If a manager decides to add a contract to the block list he will call the block function within the BlockList contract. An operator can front run any calls to the block function that passes the operator's malicious smart wallet address with a SELFDESTRUCT call to his contract. This will cause the _isContract function to fail. The operator then can redeploy his contract to the same address using CREATE2.

Proof of Concept

The operator deploys a malicious smart wallet via a factory using CREATE2.

Manager spots the malicious smart wallet

Manager calls the block function with the malicious smart wallet’s address

The operator of this malicious smart wallet sees this call in the mempool

The operator front runs the manager's call to the block function with a SELFDESTRUCT call to his malicious smart wallet.

The manager's call to the block function fails because the address for the malicious smart wallet no longer has code.

The operator back runs the manager's call with a CREATE2 call to the factory which redeploys the same contract to the same address.

Block the address whether it’s a contract or not perhaps creating an approvedList which could work as well.

#0 - bahurum

2022-08-16T20:44:42Z

Duplicate of #168

#1 - lacoop6tu

2022-08-17T09:15:19Z

Duplicate of #168

#2 - gititGoro

2022-08-31T02:15:28Z

Duplicate of #75

AuditHub

A portfolio for auditors, a security profile for protocols, a hub for web3 security.

Built bymalatrax © 2024

Auditors

Browse

Contests

Browse

Get in touch

ContactTwitter