Changes in CVE Record Format 5.2.0:
- Added support for PURL (Package URL) identifiers using the packageURL property within the affected array items (i.e., product objects).
- Added additionalProperties equal to false for the affected array items. New or renamed properties are no longer allowed for affected array items (i.e., product objects).
- Updates were made to the example CVE Records including PURL examples, tag examples, and a fix to improve compliance with the CNA Rules.
- Multiple documentation and infrastructure improvements were made to better support future CVE Record Format updates.
CVE JSON producing tools or CVE client implementation considerations:
If you have either forked or developed tools based on Vulnogram, you may need to update your code to support loading of 5.2.0 CVE Records.
You should modify default/cve5/script.js (was line 526 within Vulnogram) so that 5.2 is a valid value. A similar update where the 5.1 support was added can be viewed in a GitHub commit here.
Replace:
(res && res.dataVersion == "5.0" || res.dataVersion == "5.1")
with
(res && (res.dataVersion == "5.0" || res.dataVersion == "5.1" || res.dataVersion == "5.2"))
Another alternative would be to replace the code with something that allows all 5.x versions such as:
(res?.dataVersion?.match?.(/^5\.(0|[1-9][0-9]*)(\.(0|[1-9][0-9]*))?$/))
✅ Note that adding PURLs to a CVE Record is optional and NOT required for CNAs.
✅ The CVE Record Format will disallow a package version as part of a PURL. The reason is that it could conflict with the version property that is already part of the affected array data. PURLs within the CVE Record Format should NOT include a version.
✅ Important Additional Guidance for PURL Support - When included, the provided PURLs should align with the human-readable product and version properties that are already required when producing CVE Records.
✅ With the exception of the rare case described above, if a tool is already producing valid CVE 5.1.1 Records then no changes to client-side tooling are required. However, it is recommended to upgrade to the CVE Record Format 5.2.0 to support the new features listed above.
CVE data consumer considerations:
✅ If a CVE data consumer is not validating the JSON data against the CVE Record Format schema, then no changes are required to the consumer side code.