Open zlsecure3 opened 1 year ago
submission_id:1772554115
review_type:GRADING
result: TBD-yes,no
rating: TBD-123
comment: TBD-Rejected,Accepted by Secure3.
severity: TBD-Critical,Medium,Low,Informational
category:
description:
submission_id:1772554115
review_type:CLIENT_FEEDBACK
result: TBD-yes,no
severity: TBD-Critical,Medium,Low,Informational
comment:
submission_id:1772554115
review_type:CLIENT_FEEDBACK_DECISION
result: TBD-yes,no,yes-honored,no-honored
severity: TBD-Critical,Medium,Low,Informational
comment:
subject
centralization issue for the oracle
description
the vault claims that they use the
stork
oracle to get a more accurate price on-chain. however, inside itsFeedVerifier
implementation, the valid signer is controlled by the project owner. basically, the owner can submit any number as a price into the Aark system. for theofficialStorkFeedVerifier
, according to the stork docs, it is basically a ecrecover funciton. it does not verify the oracle_pubkey is valid or not. and the oracle_pubkey is controlled by the project.while inside the FeedVerifier contract, the verifySignature function
staticcall
theofficialStorkFeedVerifier
address for the verifySignature.since the signer is valid only by passing the following requirement
the project owner can basically set their own address as a valid publisher, and send whatever price into the oracle. and it will be thought as valid.
recommendation
consider use the chainlink instead. to reduce the centralization, avoid Rug pull possibilities.
locations
severity
Low
damage
exploitability
category
Oracle Manipulation
system_generated: auditor:comcat submission_id:1772554115