-
Notifications
You must be signed in to change notification settings - Fork 76
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
RSUS accepts contradictory CVSS 3.1 data #1028
Comments
From 2023-02-28 AWG meeting, taking no action for hard-deploy, forward to QWG. |
JSON 5.0 schema checks for valid CVSS values, but does not enforce CVSS math/logic. One other discussion item: The Program or another party may choose to perform various quality checks, such as CVSS math/logic validation. Quality issues could be flagged and fed back to the owning CNA/ADP. |
SPWG today agreed with the AWG proposal to reject upon submission CVE JSON with mismatched CVSS baseScore and baseSeverity. With an appropriatly clear error message. |
Looks like it would be simple to enforce matching score and severity with a small schema refactoring as suggested below. Split definitions of scoreType and severityType into five definitions and use oneOf construct. This does not solve mismatched vector and score, since that would require either implementing the calculator math logic/code in a schema. JSON-schema doesn't allow embedding arbitrary code for a reason.
|
I think you've reached the limits of what can be validated by the schema. Is there a particular reason for not just doing this validation in code in RSUS at submission time? |
Yes that math check is best done by RSUS and throw an error (don't accept the submission) if score and vectors don't match. Clients (cve-lib, cvelint, Vulnogram) doing the check before submission should reduce round trips to RSUS. |
For the record, this is payment on technical debt of supporting optional data (CVSS in this case) that is arguably not necessary to meet the CVE mission of identifing publicly disclosed vulnerabilities. There's no such thing as free optional data lunch. |
From today's AWG meeting, raise this to the CVE Board for guidance on whether and how to validate optional data elements. Regardless of the source, poor quality data in CVE Records reflects badly on the CVE Program. Stop supporting optional data? |
Come up with a plan to progressively up-level the data quality, reinforced by automation, and implement it? |
Closed by #1190 |
This issue does not report a defect in CVE Services as the requirements are currently understood; however, there is some community interest in having business rules enforced at the RSUS API layer, and it is conceivable that new requirements may arise.
Yesterday, Microsoft successfully submitted data (shown at the https://cveawg.mitre.org/api/cve/CVE-2023-23374 URL) of
This is not allowed by the CVSS 3.1 specification:
Here, 8.3 is the correct baseScore, but baseSeverity must be HIGH, not MEDIUM.
The text was updated successfully, but these errors were encountered: