The protocol lacks sufficient checks to verify the status of the sequencer before executing critical operations. However, without proper checks to ensure that the sequencer is always operational and up-to-date, the protocol may inadvertently expose itself to various risks and vulnerabilities.
Proof of Concept
Below is a POC
Alice wants to withdraw 100 IBT tokens, she expects to receive the equivalent amount of PT and YT shares before withdraw
The withdraw function checks the current market rates for IBT to PT conversion to ensure appropriate amount of PT shares based on those rates.
sequencer is down and cannot complete the operation
sequencer is now back and the current market rates have dipped making Alice complete withdrawal but with bad rates
Tools Used
manual review
Recommended Mitigation Steps
Develop contingency plans and emergency actions to handle situations where the sequencer is unavailable or compromised. This could involve temporary suspension of critical operations, activating emergency modes like emergency withdraw, or transitioning to alternative sequencing mechanisms.
Lines of code
https://github.com/code-423n4/2024-02-spectra/blob/main/src/tokens/PrincipalToken.sol#L29
Vulnerability details
Impact
The protocol lacks sufficient checks to verify the status of the sequencer before executing critical operations. However, without proper checks to ensure that the sequencer is always operational and up-to-date, the protocol may inadvertently expose itself to various risks and vulnerabilities.
Proof of Concept
Below is a POC
Tools Used
manual review
Recommended Mitigation Steps
Develop contingency plans and emergency actions to handle situations where the sequencer is unavailable or compromised. This could involve temporary suspension of critical operations, activating emergency modes like emergency withdraw, or transitioning to alternative sequencing mechanisms.
Assessed type
Other