Decent - darksnow'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: 74/113

Findings: 1

Award: $0.12

🌟 Selected for report: 0

🚀 Solo Findings: 0

Lines of code

https://github.com/decentxyz/decent-bridge/blob/7f90fd4489551b69c20d11eeecb17a3f564afb18/src/DcntEth.sol#L20-L30 https://github.com/decentxyz/decent-bridge/blob/7f90fd4489551b69c20d11eeecb17a3f564afb18/src/DecentEthRouter.sol#L301-L335

Vulnerability details

Impact

Lack of access control in setRouter function poses a risk of potential protocol disruption.

Anyone can set his own address as the router and then access mint and burn functions of DcntETh.

In addition DecentEthRouter can't anymore use these functions:

  • addLiquidityEth
  • removeLiquidityEth
  • addLiquidityWeth
  • removeLiquidityWeth

Proof of Concept

After attacker calls setRouter(attackerAddress) he then can:

  1. call mint(attackerAddress, anyAmount) bypassing onlyRouter modifier
  2. call burn(victimAddress, victimBalance) bypassing onlyRouter modifier

Tools Used

Manual review.

setRouter should have onlyOwner modifier.

Assessed type

Access Control

#0 - c4-pre-sort

2024-01-23T21:18:09Z

raymondfam marked the issue as sufficient quality report

#1 - c4-pre-sort

2024-01-23T21:18:16Z

raymondfam marked the issue as duplicate of #14

#2 - c4-judge

2024-02-03T13:31:49Z

alex-ppg marked the issue as satisfactory

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