Ethereum Credit Guild - Takarez's results

A trust minimized pooled lending protocol.

General Information

Platform: Code4rena

Start Date: 11/12/2023

Pot Size: $90,500 USDC

Total HM: 29

Participants: 127

Period: 17 days

Judge: TrungOre

Total Solo HM: 4

Id: 310

League: ETH

Ethereum Credit Guild

Findings Distribution

Researcher Performance

Rank: 16/127

Findings: 1

Award: $1,107.90

🌟 Selected for report: 0

🚀 Solo Findings: 0

Findings Information

🌟 Selected for report: EV_om

Also found by: Takarez

Labels

bug
2 (Med Risk)
insufficient quality report
partial-75
duplicate-1249

Awards

1107.8966 USDC - $1,107.90

External Links

Lines of code

https://github.com/code-423n4/2023-12-ethereumcreditguild/blob/2376d9af792584e3d15ec9c32578daa33bb56b43/src/loan/SurplusGuildMinter.sol#L259

Vulnerability details

Summary

The getRewards() function here https://github.com/code-423n4/2023-12-ethereumcreditguild/blob/2376d9af792584e3d15ec9c32578daa33bb56b43/src/loan/SurplusGuildMinter.sol#L259 allows users to claim reward, but a call has been made to the mint function at https://github.com/code-423n4/2023-12-ethereumcreditguild/blob/2376d9af792584e3d15ec9c32578daa33bb56b43/src/rate-limits/RateLimitedMinter.sol#L49 which has whenNotPaused modifier . This will denied user from getting rewards. This opens up an attack vector, where the protocol owner can decide if the users are able to withdraw/claim any funds from it.

This is a common centralization problem which means the contract owner can "rug" users.

Proof of Concept

https://github.com/code-423n4/2023-12-ethereumcreditguild/blob/2376d9af792584e3d15ec9c32578daa33bb56b43/src/loan/SurplusGuildMinter.sol#L259

Tools Used

manual code review

Impact

user funds can be left stuck in the contract funds can stay forever if a Governor or Guardian renounce ownership or compromised (The multiSig) will leave the funds there forever

Remove the whenNotPaused modifier from mint function or implement a way where user can claim reward without minting them(pre-mint), so users can claim vested tokens even if admin pauses the contract.

Assessed type

Access Control

#0 - 0xSorryNotSorry

2024-01-03T18:57:55Z

inflated, since the Governor role is trusted

#1 - c4-pre-sort

2024-01-03T18:58:00Z

0xSorryNotSorry marked the issue as insufficient quality report

#2 - c4-judge

2024-01-21T19:36:38Z

Trumpero marked the issue as unsatisfactory: Invalid

#3 - Trumpero

2024-01-31T13:15:53Z

After reviewing again, I believe this is a dup of #1249.

#4 - c4-judge

2024-01-31T13:16:17Z

Trumpero marked the issue as duplicate of #1249

#5 - Trumpero

2024-01-31T13:17:54Z

Give this issue 75% partial credit due to its lack of quality

#6 - c4-judge

2024-01-31T13:17:58Z

Trumpero marked the issue as partial-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