You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Now AddrC get's compromised and is not part of that Ethos Profile.
Now other Ethos Profile address can't archiveReview() and restoreReview()` because of the below check
if (review.author !=msg.sender) {
revertUnauthorizedArchiving(reviewId);
}
In case of account compromises, a profile can unregister an account and mark it as compromised.
In this case other ethosProfile addresses can't archive and restore the review.
This is clearly not a design choice as this case is handled properly in another function editReview()
if (review.authorProfileId != authorProfileId) {
revertUnauthorizedEdit(reviewId);
}
Impact
Other addresses of EthosProfile will not not be able to restore and archive reviews due to msg.sender check.
PoC
No response
Mitigation
Add a similar check which is their inside editReview()
if (review.authorProfileId != authorProfileId) {
revertUnauthorizedEdit(reviewId);
}
The text was updated successfully, but these errors were encountered:
sherlock-admin4
changed the title
Electric Satin Koala - EthosProfile which contains multiple address cannot work with archiveReview() and restoreReview()`
smbv-1923 - EthosProfile which contains multiple address cannot work with archiveReview() and restoreReview()`
Nov 20, 2024
smbv-1923
Medium
EthosProfile which contains multiple address cannot work with
archiveReview() and
restoreReview()`Summary
EthosProfile which contains multiple address cannot work with
archiveReview() and
restoreReview()`Root Cause
https://github.com/sherlock-audit/2024-10-ethos-network/blob/main/ethos/packages/contracts/contracts/EthosReview.sol#L300
https://github.com/sherlock-audit/2024-10-ethos-network/blob/main/ethos/packages/contracts/contracts/EthosReview.sol#L321
Internal pre-conditions
External pre-conditions
No response
Attack Path
addReview()
where author is set as msg.senderarchiveReview() and
restoreReview()` because of the below checkIn case of account compromises, a profile can unregister an account and mark it as compromised.
editReview()
Impact
PoC
No response
Mitigation
editReview()
The text was updated successfully, but these errors were encountered: