Simplify CVSS code in a more object-oriented manner

This commit is contained in:
2026-01-28 13:35:45 +01:00
parent de6dcf2b82
commit 98c0f72e0d
2 changed files with 31 additions and 49 deletions

View File

@@ -25,7 +25,7 @@
== Findings
The penetration test revealed #context([
#let num = cvss.riskCategoryStats.values().map(v => v.final()).sum()
#let num = cvss.riskCategories.values().map(v => v.state.final()).sum()
#if num == 1 {
[ #num finding ]
} else {
@@ -37,12 +37,12 @@
columns: (16.66%, 16.66%, 16.66%, 16.66%, 16.66%, 16.66%),
align: center,
[Critical], [High], [Medium], [Low], [None], [Other],
table.cell(context(cvss.riskCategoryStats.Critical.final()), fill: red, align: center),
table.cell(context(cvss.riskCategoryStats.High.final()), fill: orange, align: center),
table.cell(context(cvss.riskCategoryStats.Medium.final()), fill: yellow, align: center),
table.cell(context(cvss.riskCategoryStats.Low.final()), fill: lime, align: center),
table.cell(context(cvss.riskCategoryStats.None.final()), fill: white, align: center),
table.cell(context(cvss.riskCategoryStats.Other.final()), fill: gray, align: center),
table.cell(context(cvss.riskCategories.at("CRITICAL").state.final()), fill: red, align: center),
table.cell(context(cvss.riskCategories.at("HIGH").state.final()), fill: orange, align: center),
table.cell(context(cvss.riskCategories.at("MEDIUM").state.final()), fill: yellow, align: center),
table.cell(context(cvss.riskCategories.at("LOW").state.final()), fill: lime, align: center),
table.cell(context(cvss.riskCategories.at("NONE").state.final()), fill: white, align: center),
table.cell(context(cvss.riskCategories.at("OTHER").state.final()), fill: gray, align: center),
)
== Recommendations & Next Steps