DeFiFoundry
60,000 USDC
View results
Submission Details
Severity: low
Valid

The contract doesn't have any mechanism to accept ether

Summary

The contract used chainlink data streams for report verification during order settlement. It needs to send fees either in ethor linkTokento chainlink verifier. However, contract doesn't have any mechanism to accept eth which will lead to revert in settlement of orders.

Vulnerability Details

https://github.com/Cyfrin/2024-07-zaros/blob/d687fe96bb7ace8652778797052a38763fbcbb1b/src/perpetuals/leaves/SettlementConfiguration.sol#L169-L171

https://github.com/Cyfrin/2024-07-zaros/blob/d687fe96bb7ace8652778797052a38763fbcbb1b/src/external/chainlink/ChainlinkUtil.sol#L95-L104

The contract needs to forward fee amount to chainlink verifierto get verified report data. However, since contract doesn't have any ether, this function will revert and settlement of orders won't be possible.

Impact

Settlement of orders won't be possible.

Tools Used

Manual

Recommendations

Add the functionality to accept ether in the contract.

Updates

Lead Judging Commences

inallhonesty Lead Judge over 1 year ago
Submission Judgement Published
Validated
Assigned finding tags:

No means for the PerpEngine to receive native to pay the Chainlink Verifier in case Chainlinks charges fees to the protocol

Support

FAQs

Can't find an answer? Chat with us on Discord, Twitter or Linkedin.

Give us feedback!