Ajna Protocol - circlelooper's results

A peer to peer, oracleless, permissionless lending protocol with no governance, accepting both fungible and non fungible tokens as collateral.

General Information

Platform: Code4rena

Start Date: 03/05/2023

Pot Size: $60,500 USDC

Total HM: 25

Participants: 114

Period: 8 days

Judge: Picodes

Total Solo HM: 6

Id: 234

League: ETH

Ajna Protocol

Findings Distribution

Researcher Performance

Rank: 73/114

Findings: 2

Award: $54.07

🌟 Selected for report: 0

🚀 Solo Findings: 0

Findings Information

🌟 Selected for report: hyh

Also found by: Jiamin, Juntao, aashar, bytes032, circlelooper, mrpathfindr

Labels

bug
2 (Med Risk)
partial-25
duplicate-465

Awards

17.8317 USDC - $17.83

External Links

Lines of code

https://github.com/code-423n4/2023-05-ajna/blob/276942bc2f97488d07b887c8edceaaab7a5c3964/ajna-grants/src/grants/base/StandardFunding.sol#L441

Vulnerability details

Impact

Proposals with 0 funding votes are allowd to be updated in slate.

Proof of Concept

Winning proposals from screening stage will be voted upon in funding stage, then in the following challenge period, user can submit proposalIds in slate, if the sum of funding votes received by the proposals is higher than that of the existing slate, the top slate will be update to the new slate, proposals in the top slate are expected to be executed. In StandardFunding.sol, _validateSlate() is used to check if the submitted proposals is valid and to calculate the sum of funding votes. However, it does not check if any of the proposal received 0 funding votes, so it's possible that even if a proposal gets no funding vote, it may still be updated in slate and be executed after challenge period.

if (proposal.fundingVotesReceived < 0) revert InvalidProposalSlate();

Tools Used

Manual Review

Proposals with 0 funding votes should not be updated in slate, please refer to the following fix:

if (proposal.fundingVotesReceived <= 0) revert InvalidProposalSlate();

Assessed type

Access Control

#0 - c4-judge

2023-05-18T16:04:15Z

Picodes marked the issue as duplicate of #465

#1 - c4-judge

2023-05-30T20:11:35Z

Picodes 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