Open github-actions[bot] opened 1 year ago
Acknowledge this issue. Generally, we expect option token durations to be over a week+ duration so users will have a lot of time to exercise. Observed sequencer outages have been measured in hours. Therefore, we view the overall risk to the user as low. However, we will keep this in mind and explore how much complexity it would add to account for this on L2s.
Ok! Thanks!
Past similar finding: https://github.com/sherlock-audit/2023-03-Y2K-judging/issues/422
The report has "won't fix" tag, assume the sponsor acknowledge the report.
Yep, acknowledge the issue, but we don't plan on implementing a fix for this.
ctf_sec
medium
Loss of option token from Teller and reward from OTLM if L2 sequencer goes down
Summary
Loss of option token from Teller and reward from OTLM if L2 sequencer goes down
Vulnerability Detail
In the current implementation, if the option token expires, the user is not able to exerise the option at strike price
if the option token expires, the user lose rewards from OTLM as well when claim the reward
and
And in the onchain context, the protocol intends to deploy the contract in arbitrum and optimsim
However, If Arbitrum and optimism layer 2 network, the sequencer is in charge of process the transaction
For example, the recent optimism bedrock upgrade cause the sequencer not able to process transaction for a hew hours
https://cryptopotato.com/optimism-bedrock-upgrade-release-date-revealed/
In Arbitrum
https://thedefiant.io/arbitrum-outage-2
and
https://beincrypto.com/arbitrum-sequencer-bug-causes-temporary-transaction-pause/
If the option expires during the sequencer down time, the user basically have worthless option token because they cannot exercise the option at strike price
the user would lose his reward as option token from OTLM.sol, which defeats the purpose of use OTLM to incentive user to provide liquidity
Impact
Loss of option token from Teller and reward from OTLM if L2 sequencer goes down
Code Snippet
https://github.com/sherlock-audit/2023-06-bond/blob/fce1809f83728561dc75078d41ead6d60e15d065/options/src/fixed-strike/FixedStrikeOptionTeller.sol#L336
https://github.com/sherlock-audit/2023-06-bond/blob/fce1809f83728561dc75078d41ead6d60e15d065/options/src/fixed-strike/liquidity-mining/OTLM.sol#L496
Tool used
Manual Review
Recommendation
chainlink has a sequencer up feed
https://docs.chain.link/data-feeds/l2-sequencer-feeds
consider integrate the up time feed and give user extra time to exercise token and claim option token reward if the sequencer goes down