Skip to content

fix(hdf-converters): map Twistlock's distro-vendor pass-through severities - #8618

Open
wdower wants to merge 1 commit into
masterfrom
fix/twistlock-severity-mapping
Open

fix(hdf-converters): map Twistlock's distro-vendor pass-through severities#8618
wdower wants to merge 1 commit into
masterfrom
fix/twistlock-severity-mapping

Conversation

@wdower

@wdower wdower commented Sep 3, 2026

Copy link
Copy Markdown
Contributor

For OS-vendor-maintained packages Twistlock/Prisma Cloud reports the vendor's own severity string instead of NVD's, so distro vocabulary reaches the scan report. Closest doc available describing the possible severity levels one can see in the source format is the vendor table in Prisma's CVSS-scoring doc.

So for severity level mappings into OHDF, we're going to go with:

  • unassigned / not yet assigned / untriaged -> 0.5 (on the theory that we usually bucket "unknown" severity levels as "average" to split the difference)
  • unimportant / negligible -> 0.1 (the lowest ratings that aren't 0.0, which we usually take to mean "N/A")

Adds a (synthetic) fixture carrying all five severities plus a mapped control case, with targeted impact assertions. I am following up with the folks who brought #8611 to our attention to see if we can get a copy of the Twistlock scan that triggered the original error so that we can confirm it works with that one.

With #8610's warn-and-default fix this closes the Twistlock half of the severity data-loss report in #8611.

…ities

For OS-vendor-maintained packages Prisma Cloud reports the vendor's own
severity string instead of NVD's, so distro vocabulary reaches the scan
report. Per the vendor table in Prisma's CVSS-scoring doc and the
vendors' published definitions:

  unassigned / not yet assigned / untriaged (Ubuntu) -> 0.5 (explicit
    no-rating takes the conservative medium, matching dependency-track's
    'unassigned' and the grype mapper's 'unknown')
  unimportant (Debian/SUSE) -> 0.1 (Debian: the problem does not affect
    the shipped binary package; Prisma ranks it below negligible)
  negligible (Ubuntu) -> 0.1 ('technically a security problem' but
    theoretical/no real damage — the lowest rating)

The minimal ratings sit at 0.1 rather than 0.0: this codebase reserves
the 0.0 tier for informational non-findings, and impact 0 exports as
Not_Applicable in checklists — hiding findings the scanner reported.

Adds a fixture carrying all five severities plus a mapped control case,
with targeted impact assertions.

With #8610's warn-and-default fix this closes the Twistlock half of the
severity data-loss report in #8611.

Signed-off-by: Will <will@dower.dev>
@wdower
wdower requested a review from Amndeep7 September 3, 2026 20:51
@sonarqubecloud

sonarqubecloud Bot commented Sep 3, 2026

Copy link
Copy Markdown

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant