Decent - piyushshukla's results

Decent enables one-click transactions using any token across chains.

General Information

Platform: Code4rena

Start Date: 19/01/2024

Pot Size: $36,500 USDC

Total HM: 9

Participants: 113

Period: 3 days

Judge: 0xsomeone

Id: 322

League: ETH

Decent

Findings Distribution

Researcher Performance

Rank: 110/113

Findings: 1

Award: $0.03

🌟 Selected for report: 0

🚀 Solo Findings: 0

Lines of code

https://github.com/decentxyz/decent-bridge/blob/7f90fd4489551b69c20d11eeecb17a3f564afb18/src/DcntEth.sol#L19

Vulnerability details

Impact

security vulnerability in the setRouter function of the DcntEth contract. The setRouter function is marked as public, which means that anyone can call it and potentially change the router address, leading to unauthorized access and potential exploitation of the contract.

Proof of Concept

setRouter function is public and lacks proper authorization checks. This allows any address to call the function and update the router address, potentially compromising the security of the contract.

https://github.com/decentxyz/decent-bridge/blob/7f90fd4489551b69c20d11eeecb17a3f564afb18/src/DcntEth.sol#L19C2-L23C1

function setRouter(address _router) public onlyOwner { router = _router; }

Tools Used

setRouter function to include an authorization check, allowing only authorized addresses to modify the router variable. An example is provided above, where the onlyOwner modifier is used to restrict access to the contract owner

modifier onlyOwner() { require(msg.sender == owner(), "Not the contract owner"); _; }

function setRouter(address _router) public onlyOwner { router = _router; }

Assessed type

Invalid Validation

#0 - c4-pre-sort

2024-01-25T20:11:23Z

raymondfam marked the issue as sufficient quality report

#1 - c4-pre-sort

2024-01-25T20:11:28Z

raymondfam marked the issue as duplicate of #14

#2 - alex-ppg

2024-02-03T13:09:27Z

The submission fails to articulate the precise impact of changing the router. Substantiated by the submission's mention of potential exploitation of the contract instead of direct exploitation of the sensitive mint functionality of the contract, I consider a penalty down to 25% correct.

#3 - c4-judge

2024-02-03T13:09:37Z

alex-ppg marked the issue as partial-25

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