M-08·
Weak signature validation allows multiple option mispricing vectors
TL;DR
The protocol's signature validation mechanism enables option mispricing through period manipulation and stale signatures:
Severity
MEDIUM
Method
MManual review
CAT.
02Section · Severity
Severity
Impact: Medium
Likelihood: Medium
03Section · Description
Description
The protocol's signature validation mechanism enables option mispricing through period manipulation and stale signatures:
- Period and Maturity Mismatch
solidity
function _hash(...) internal pure returns (bytes32) {@> return keccak256(abi.encode(iv, uAsset, oType, maturityDate, relativeStrike));}function iv(uint48 period, OptionType oType, uint256 strikePrice) external view returns (uint256 value) {@> value = _ivValues[period][oType][strikePrice]; // IV is queried based on `period`, `oType` and `strikePrice`}
- Missing Signature Deadline
solidity
function _recoverSigner(...) internal view returns (address) {@> address recoveredSigner = _recoverSigner(sig, iv, strategy, period._computeMaturityDate(), relativeStrike);}
This enables two primary attack vectors:
- Period Manipulation
- User requests signature for a 14-day period on April 3 (maturity: April 17 23:59).
- On April 10, the user executes the option with a 7-day period (maturity: April 17 23:59, results in the same maturity).
- The process validates this position with IV intended for a 14-day period, mispricing the option.
- Stale Strike Price
- User requests signature for a 10% relative strike at a spot price 3500 USD(strike = 3850 USD).
- User waits until the market moves to some spot price, ie 4200 USD (new strike = 4620 USD).
- User executes the option with a stale signature, still using the IV for strike 3850 USD.
- The protocol applies an outdated IV, mispricing the option.
04Section · Recommendation
Recommendation
Include all critical parameters and enforce signature expiration validation:
diff
function _hash(...) internal pure returns (bytes32) {return keccak256(abi.encode(iv,uAsset,oType,+ period,maturityDate,relativeStrike,+ deadline));}
05Section · Report provenance
Report provenance
Published by Pashov Audit Group, with Carlos (Bloqarl) participating as a contractor. The source report states that its fixes review was not fully completed; no final remediation disposition is recorded for this finding. Read the full report.