-
Notifications
You must be signed in to change notification settings - Fork 14
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
withApproval
is not checking if msg.sender
is a ward, blocking wards to do actions in LiquidityPool.sol
#41
Labels
bug
Something isn't working
downgraded by judge
Judge downgraded the risk level of this issue
edited-by-warden
grade-c
low quality report
This report is of especially low quality
primary issue
Highest quality submission among a set of duplicates
QA (Quality Assurance)
Assets are not at risk. State handling, function incorrect as to spec, issues with clarity, syntax
unsatisfactory
does not satisfy C4 submission criteria; not eligible for awards
Comments
c4-submissions
added
2 (Med Risk)
Assets not at direct risk, but function/availability of the protocol could be impacted or leak value
bug
Something isn't working
labels
Sep 10, 2023
code423n4
added a commit
that referenced
this issue
Sep 11, 2023
Wrong comments as confirmed by the sponsor in Discord. The code is correct. |
raymondfam marked the issue as low quality report |
c4-pre-sort
added
the
low quality report
This report is of especially low quality
label
Sep 14, 2023
raymondfam marked the issue as primary issue |
c4-pre-sort
added
the
primary issue
Highest quality submission among a set of duplicates
label
Sep 14, 2023
This was referenced Sep 14, 2023
gzeon-c4 changed the severity to QA (Quality Assurance) |
c4-judge
added
downgraded by judge
Judge downgraded the risk level of this issue
QA (Quality Assurance)
Assets are not at risk. State handling, function incorrect as to spec, issues with clarity, syntax
and removed
2 (Med Risk)
Assets not at direct risk, but function/availability of the protocol could be impacted or leak value
labels
Sep 25, 2023
gzeon-c4 marked the issue as grade-c |
c4-judge
added
the
unsatisfactory
does not satisfy C4 submission criteria; not eligible for awards
label
Sep 26, 2023
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Labels
bug
Something isn't working
downgraded by judge
Judge downgraded the risk level of this issue
edited-by-warden
grade-c
low quality report
This report is of especially low quality
primary issue
Highest quality submission among a set of duplicates
QA (Quality Assurance)
Assets are not at risk. State handling, function incorrect as to spec, issues with clarity, syntax
unsatisfactory
does not satisfy C4 submission criteria; not eligible for awards
Lines of code
https://github.com/code-423n4/2023-09-centrifuge/blob/main/src/LiquidityPool.sol#L97-L100
Vulnerability details
Impact
Contract wards are blocked from doing certain actions in
LiquidityPool.sol
. For example, withdraw, redeem, requestDeposit, ... This is because thewithApproval
modifier is not checking whether the message sender is a ward or not even though the @dev comments show that it should.Proof of Concept
Run the following test and verify the success
Tools Used
Manual review + vscode
Recommended Mitigation Steps
Replace
require(msg.sender == owner, "LiquidityPool/no-approval");
withrequire(msg.sender == owner || wards[msg.sender] == 1, "LiquidityPool/no-approval");
Assessed type
Access Control
The text was updated successfully, but these errors were encountered: