Audit findings are submitted to this repo.
Unless otherwise discussed, this repo will be made public after audit completion, sponsor review, judging, and issue mitigation window.
Contributors to this repo: prior to report publication, please review the Agreements & Disclosures issue.
Note that when the repo is public, after all issues are mitigated, your comments will be publicly visible; they may also be included in your C4 audit report.
Sponsors have three critical tasks in the audit process: Reviewing the two lists of curated issues, and once you have mitigated your findings, sharing those mitigations.
- Respond to curated High- and Medium-risk submissions ↓
- Respond to curated Low-risk submissions ↓
- Share your mitigation of findings (optional) ↓
Note: It’s important to be sure to only review issues from the curated lists. There are two lists of curated issues to review, which filter out unsatisfactory issues that don't require your attention.
(expand to read more)
Wardens submit issues without seeing each other's submissions, so keep in mind that there will always be findings that are duplicates. For all issues labeled 3 (High Risk)
or 2 (Medium Risk)
, these have been pre-sorted for you so that there is only one primary issue open per unique finding. All duplicates have been labeled duplicate
, linked to a primary issue, and closed.
Any warden submissions in these two categories are submitted as bulk listings of issues and recommendations:
- QA reports include all low severity findings and governance/centralization risk findings from an individual warden.
- Gas reports (if applicable) include all gas optimization recommendations from an individual warden.
This curated list will shorten as you work. View the original, longer list →
For each curated High- or Medium-risk finding, please:
sponsor confirmed
, meaning: "Yes, this is a problem and we intend to fix it."sponsor disputed
, meaning either: "We cannot duplicate this issue" or "We disagree that this is an issue at all."sponsor acknowledged
, meaning: "Yes, technically the issue is correct, but we are not going to resolve it for xyz reasons."
Add any necessary comments explaining your rationale for your evaluation of the issue.
Note: Adding or changing labels other than those in this list will be automatically reverted by our bot, which will note the change in a comment on the issue.
If you believe a finding is technically correct but disagree with the listed severity, leave a comment indicating your reasoning for the judge to review. For a detailed breakdown of severity criteria and how to estimate risk, please refer to the judging criteria in our documentation.
Judges have the ultimate discretion in determining validity and severity of issues, as well as whether/how issues are considered duplicates. However, sponsor input is a significant criterion.
This curated list will shorten as you work. View the original, longer list →
- Leave a comment for the judge on any reports you consider to be particularly high quality.
- Add the
sponsor disputed
label to any reports that you think should be completely disregarded by the judge, i.e. the report contains no valid findings at all.
When you have finished labeling and responding to findings, drop the C4 team a note in your private Discord backroom channel and let us know you've completed the sponsor review process. At this point, we will pass the repo over to the judge to review your feedback while you work on mitigations.
Once you have confirmed the findings you intend to mitigate, you will want to address them before tha audit report is made public. Linking your mitigation PRs to your audit findings enables us to include them in your C4 audit report.
Note: You can work on your mitigations during the judging phase -- or beyond it, if you need more time. We won't publish the final audit report until you give us the OK.
- In your own Github repo, create a branch based off of the commit you used for your Code4rena audit, then
- Create a separate Pull Request for each High or Medium risk C4 audit finding that you confirmed (e.g. one PR for finding H-01, another for H-02, etc.)
- Link the PR to the issue that it resolves within your audit findings repo. (If the issue in question has duplicates, please link to your PR from the open/primary issue.)
Most C4 mitigation reviews focus exclusively on reviewing mitigations of High and Medium risk findings. Therefore, QA and Gas mitigations should be done in a separate branch. If you want your mitigation review to include QA or Gas-related PRs, please reach out to C4 staff and let’s chat!
If several findings are inextricably related (e.g. two potential exploits of the same underlying issue, etc.), you may create a single PR for the related findings.
- Within a repo in your own GitHub organization, create a pull request for each finding.
- Link the PR to the issue that it resolves within your audit findings repo. (If the issue in question has duplicates, please link to your PR from the open/primary issue.)
This will allow for complete transparency in showing the work of mitigating the issues found in the audit.