Roadmap: ingesting DISA's full SCAP/XCCDF benchmarks (beyond the sample crosswalk) #10
cognis-digital
started this conversation in
Ideas
Replies: 0 comments
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Uh oh!
There was an error while loading. Please reload this page.
-
The bundled
STIG_CONTROLStable instigsentry/core.pyis a labeled 8-entry public sample. On a real system, an SCC/OpenSCAP run produces hundreds of rules per STIG, so most findings currently land in theSS-UNK-*"unknown STIG ID" bucket and lose their NIST/CCI provenance.Two building blocks would close the gap, and I want feedback on the interface before implementing (tracked in #7 and #8):
*-xccdf.xmlinside a DISA STIG.zip:<Rule @severity>,<title>,V-id, and theCCI-*refs under<ident>. Build thestig_id -> {title, nist, sev, cci}table from it, falling back to the built-in sample when no benchmark is supplied. Cache the parsed table through the existing air-gapdatafeedslayer.CCI-*, look it up in DISAU_CCI_List.xmland still populate the control (keep theSS-UNK-*id so it is flagged as not-in-crosswalk).Questions for the community:
.zipdirectly, or only the extracted XCCDF?scan(target, benchmark=...)vs a separateload_benchmark()that returns a crosswalk dict you pass in?--benchmark-dirthat merges multiple product STIGs (RHEL + k8s + Windows) into one crosswalk for a mixed enclave?Beta Was this translation helpful? Give feedback.
All reactions