Competition Finding Severity Criteria
Severity Matrix
The severity matrix serves as the baseline for assigning a severity to a bug. It’s often easier to think about the impact and the likelihood of the occurrence of an issue in two different categories.- A High impact situation would be one where funds can be lost.
- A High likelihood situation would be one in which any participant can trigger such a bug in the protocol.
| Severity | Impact: High | Impact: Medium | Impact: Low |
|---|---|---|---|
| Likelihood: High | High | High | Medium |
| Likelihood: Medium | High | Medium | Low |
| Likelihood: Low | Medium | Low | Informational |
Important Considerations
- If you submit a High or Medium severity issue, we strongly encourage you to submit a proof of concept. This is a piece of code, often an addition to the test case, that can be used to confirm the validity of the finding.
- Issues that are ultimately user errors and can be easily managed in the front-end should at most be informational.
- Issues that require admin access (or equivalent) to perform should at most be low severity, unless the protocol was designed to be resilient against such actions in the first place.
- AI generated findings: submitting AI generated findings without validating them can lead to disqualifications or worse, a permanent ban.
- The goal of getting a security review is for protocols to make meaningful changes to the protocols to improve its security. Make sure the findings you submit contribute to this cause.
- In case of public competitions, a judge will act as an independent arbiter for any disagreements. After judging is done, there will be an escalation phase where people can contest some judgements. Anyone can currently contest a judgement, but there will be a penalty for escalations that were invalid.
- Be mindful of the judges’ and the protocol-team’s time.
Protocol Behavior
The competition README must be used as the main reference for protocol behavior and not other sources.Tips
- Approval race conditions for ERC20 tokens will be considered invalid.
- Assume by default that a protocol will be using only standard ERC20 tokens. Any findings that rely on weird token properties should at most be a low severity finding.
- Losing dust amounts, say, due to rounding is at most a low severity finding.
- Any finding that has been acknowledged in a previous report will be considered invalid.