@blamejs/exceptd-skills 0.13.1 → 0.13.2

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (38) hide show
  1. package/CHANGELOG.md +34 -0
  2. package/bin/exceptd.js +35 -6
  3. package/data/_indexes/_meta.json +25 -25
  4. package/data/_indexes/activity-feed.json +2 -2
  5. package/data/_indexes/catalog-summaries.json +2 -2
  6. package/data/_indexes/chains.json +1772 -88
  7. package/data/_indexes/frequency.json +8 -0
  8. package/data/_indexes/section-offsets.json +517 -517
  9. package/data/_indexes/token-budget.json +66 -66
  10. package/data/atlas-ttps.json +2 -0
  11. package/data/attack-techniques.json +22 -3
  12. package/data/cve-catalog.json +0 -28
  13. package/data/cwe-catalog.json +19 -3
  14. package/data/framework-control-gaps.json +291 -1
  15. package/data/zeroday-lessons.json +818 -0
  16. package/lib/lint-skills.js +50 -1
  17. package/manifest.json +60 -60
  18. package/orchestrator/index.js +8 -1
  19. package/package.json +1 -1
  20. package/sbom.cdx.json +47 -36
  21. package/scripts/check-test-count.js +146 -0
  22. package/scripts/predeploy.js +16 -0
  23. package/skills/age-gates-child-safety/skill.md +1 -0
  24. package/skills/ai-risk-management/skill.md +1 -0
  25. package/skills/defensive-countermeasure-mapping/skill.md +1 -0
  26. package/skills/email-security-anti-phishing/skill.md +1 -0
  27. package/skills/fuzz-testing-strategy/skill.md +1 -0
  28. package/skills/mlops-security/skill.md +1 -0
  29. package/skills/ot-ics-security/skill.md +1 -0
  30. package/skills/researcher/skill.md +1 -0
  31. package/skills/sector-energy/skill.md +1 -0
  32. package/skills/sector-federal-government/skill.md +1 -0
  33. package/skills/sector-telecom/skill.md +1 -0
  34. package/skills/skill-update-loop/skill.md +1 -0
  35. package/skills/threat-model-currency/skill.md +1 -0
  36. package/skills/threat-modeling-methodology/skill.md +1 -0
  37. package/skills/webapp-security/skill.md +1 -0
  38. package/skills/zeroday-gap-learn/skill.md +1 -0
@@ -269,6 +269,37 @@
269
269
  "verdict_when_failed": "compliance-theater"
270
270
  }
271
271
  },
272
+ "CIS-Kubernetes-Benchmark-5.7": {
273
+ "framework": "CIS Kubernetes Benchmark v1.10.0",
274
+ "control_id": "5.7",
275
+ "control_name": "Pod Security Standards and Network Policies",
276
+ "designed_for": "Section 5.7 of the CIS Kubernetes Benchmark — Pod Security Standards (replacing deprecated PodSecurityPolicy) and NetworkPolicy enforcement. Anchored on the assumption that pod-level isolation primitives (securityContext, seccomp, AppArmor, NetworkPolicy) constrain a compromised container to its declared boundary.",
277
+ "misses": [
278
+ "Pod-level isolation primitives presume runtime correctness — runc / containerd CVE classes (Leaky Vessels, file-descriptor leak, mount-namespace escape) bypass Pod Security Standards entirely because the escape happens below the pod boundary",
279
+ "No KEV-anchored patch SLA for container-runtime CVEs — section 5.7 governs workload configuration, not runtime-binary currency, leaving operators without a benchmark-driven response tier for container-escape KEV listings",
280
+ "Section 5.7 evidence collection is point-in-time (audit at install / annual review); does not enforce continuous runtime-binary version drift detection against the upstream CVE feed"
281
+ ],
282
+ "real_requirement": "Section 5.7 implementations must add a container-runtime currency tier: continuous runc / containerd / CRI-O version inventory cross-referenced against CISA KEV + the container-escape CVE class, with a documented 24h patch SLA when a runtime CVE lands on KEV and a 72h SLA for runtime CVEs with public PoC but no KEV listing. Pod Security Standards alone are insufficient; runtime currency is the load-bearing control.",
283
+ "status": "open",
284
+ "opened_date": "2026-05-17",
285
+ "evidence_cves": [
286
+ "CVE-2024-21626"
287
+ ],
288
+ "atlas_refs": [],
289
+ "attack_refs": [
290
+ "T1611"
291
+ ],
292
+ "theater_test": {
293
+ "claim": "Our Kubernetes posture meets CIS Benchmark section 5.7 — Pod Security Standards and Network Policies are enforced across every cluster.",
294
+ "test": "Pull the most recent CIS Kubernetes Benchmark assessment for section 5.7. Confirm it includes a container-runtime currency check (runc / containerd / CRI-O version inventory) cross-referenced against the CISA KEV catalog. Pull the past 12 months of container-runtime CVE listings; measure time-to-mitigation per cluster. Theater verdict if the section-5.7 evidence pack stops at pod-spec audits without a runtime-currency tier, or if any KEV-listed container-runtime CVE exceeded a 24h mitigation SLA.",
295
+ "evidence_required": [
296
+ "CIS Kubernetes Benchmark section 5.7 assessment report",
297
+ "container-runtime version inventory per cluster",
298
+ "KEV-listed container-runtime CVE mitigation timeline"
299
+ ],
300
+ "verdict_when_failed": "compliance-theater"
301
+ }
302
+ },
272
303
  "CMMC-2.0-Level-2": {
273
304
  "framework": "CMMC 2.0 (Cybersecurity Maturity Model Certification) Level 2",
274
305
  "control_id": "CMMC-2.0-Level-2",
@@ -726,6 +757,10 @@
726
757
  "opened_date": "2026-05-13",
727
758
  "evidence_cves": [
728
759
  "CVE-2024-3094",
760
+ "CVE-2025-12686",
761
+ "CVE-2025-62847",
762
+ "CVE-2025-62848",
763
+ "CVE-2025-62849",
729
764
  "CVE-2026-42897",
730
765
  "CVE-2026-42945",
731
766
  "CVE-2026-45321",
@@ -1058,6 +1093,37 @@
1058
1093
  "verdict_when_failed": "compliance-theater"
1059
1094
  }
1060
1095
  },
1096
+ "ISO-27001-2022-A.8.22": {
1097
+ "framework": "ISO/IEC 27001:2022",
1098
+ "control_id": "A.8.22",
1099
+ "control_name": "Segregation of networks",
1100
+ "designed_for": "Network-level segregation between groups of information services, users, and information systems. Annex A.8.22 anchors on the assumption that VLAN / subnet / firewall-zone boundaries are the unit of isolation, and that workloads within the same network segment share an acceptable trust relationship.",
1101
+ "misses": [
1102
+ "Container-runtime escapes (Leaky Vessels, runc / containerd CVE class) cross workload boundaries WITHIN a single network segment — A.8.22 has no concept of intra-host workload segregation enforced by the container runtime",
1103
+ "Multi-tenant Kubernetes namespaces / pod-level isolation are outside the network-segregation framing; a runtime escape grants host-level access regardless of how cleanly the network is segregated",
1104
+ "Cloud-native segregation primitives (Pod Security Standards, NetworkPolicy, gVisor / Kata sandboxes, user-namespaced containers) are not enumerated as segregation mechanisms in the A.8.22 implementation guidance"
1105
+ ],
1106
+ "real_requirement": "A.8.22 implementations must add a workload-segregation tier alongside network segregation: container-runtime version currency against the KEV-listed container-escape CVE class, sandboxed runtime (gVisor / Kata / user namespaces) for untrusted tenants, and a documented control distinction between network-zone isolation (north-south) and intra-host workload isolation (east-west within the same kernel).",
1107
+ "status": "open",
1108
+ "opened_date": "2026-05-17",
1109
+ "evidence_cves": [
1110
+ "CVE-2024-21626"
1111
+ ],
1112
+ "atlas_refs": [],
1113
+ "attack_refs": [
1114
+ "T1611"
1115
+ ],
1116
+ "theater_test": {
1117
+ "claim": "Our network and workload boundaries are segregated per ISO 27001:2022 A.8.22.",
1118
+ "test": "Pull the A.8.22 segregation register. Confirm it enumerates BOTH network-zone segregation (VLAN / subnet / firewall) AND intra-host workload segregation (container-runtime version currency, sandboxed runtime for untrusted tenants). Sample the most recent multi-tenant cluster; trace whether a runc / containerd KEV-listed CVE would have been mitigated within the documented response window. Theater verdict if the register stops at network zones without intra-host workload segregation, or if no sandboxed-runtime control exists for untrusted multi-tenant workloads.",
1119
+ "evidence_required": [
1120
+ "A.8.22 segregation register covering network and workload tiers",
1121
+ "container-runtime version inventory with KEV cross-reference",
1122
+ "sandboxed-runtime evidence for multi-tenant workloads (or documented risk acceptance)"
1123
+ ],
1124
+ "verdict_when_failed": "compliance-theater"
1125
+ }
1126
+ },
1061
1127
  "ISO-27001-2022-A.8.28": {
1062
1128
  "framework": "ISO/IEC 27001:2022",
1063
1129
  "control_id": "A.8.28",
@@ -1072,7 +1138,10 @@
1072
1138
  "real_requirement": "Separate AI system security controls are needed: prompt injection testing, model integrity verification, training pipeline security, RAG pipeline security. A.8.28 is not the right control family for AI system security.",
1073
1139
  "status": "open",
1074
1140
  "opened_date": "2026-01-01",
1075
- "evidence_cves": [],
1141
+ "evidence_cves": [
1142
+ "CVE-2023-43472",
1143
+ "CVE-2026-30623"
1144
+ ],
1076
1145
  "atlas_refs": [
1077
1146
  "AML.T0051",
1078
1147
  "AML.T0054"
@@ -1416,6 +1485,43 @@
1416
1485
  "verdict_when_failed": "compliance-theater"
1417
1486
  }
1418
1487
  },
1488
+ "NIST-800-218-SSDF-PW.4": {
1489
+ "framework": "NIST SP 800-218 (Secure Software Development Framework v1.1)",
1490
+ "control_id": "PW.4",
1491
+ "control_name": "Reuse Existing, Well-Secured Software",
1492
+ "designed_for": "PW.4 practice of the SSDF — reusing existing, well-secured software components (third-party libraries, frameworks, OS distributions) instead of writing equivalent functionality from scratch. Anchored on the assumption that an externally-maintained component with an active maintainer is safer than a one-off internal implementation, and that maintainer-account integrity holds across the upgrade lifecycle.",
1493
+ "misses": [
1494
+ "PW.4 assumes upstream components ARE secure — xz-utils was an upstream that compromised itself across two years of patient maintainer-account takeover; the SSDF has no compensating practice for upstream-maintainer-becomes-hostile",
1495
+ "Maintainer-account integrity is presumed; PW.4 does not require monitoring of registry-side MFA enforcement, maintainer-email-domain expiry, or post-publish freshness cooldowns on critical-path components",
1496
+ "Compromised-maintainer-republish (Shai-Hulud worm class, MAL-2026-TANSTACK-MINI) ships through the legitimate update channel — PW.4 controls catch tampered upstream but not legitimately-authenticated malicious upstream",
1497
+ "Tier-3 transitive dependencies (libsystemd → liblzma, package-A → package-B → package-C) routinely escape PW.4 reuse-inventory because the inventory stops at the direct dependency layer"
1498
+ ],
1499
+ "real_requirement": "PW.4 implementations must add a maintainer-integrity monitoring tier: (1) registry-side MFA enforcement evidence for every critical-path upstream maintainer, (2) post-publish cooldown periods on consumption of fresh releases from systemically-important upstreams, (3) lockfile audit against known-malicious version sets during the active exposure window, (4) transitive-dependency enumeration to at least tier-3, (5) documented response procedure for compromised-maintainer-republish that does not assume the upstream channel is trustworthy.",
1500
+ "status": "open",
1501
+ "opened_date": "2026-05-17",
1502
+ "evidence_cves": [
1503
+ "CVE-2024-3094",
1504
+ "MAL-2026-SHAI-HULUD-OSS",
1505
+ "MAL-2026-TANSTACK-MINI"
1506
+ ],
1507
+ "atlas_refs": [
1508
+ "AML.T0010"
1509
+ ],
1510
+ "attack_refs": [
1511
+ "T1195.001",
1512
+ "T1195.002"
1513
+ ],
1514
+ "theater_test": {
1515
+ "claim": "We reuse well-secured software per NIST SSDF PW.4 — third-party components are inventoried and managed.",
1516
+ "test": "Pull the PW.4 reuse register. Confirm it enumerates BOTH direct AND tier-2/tier-3 transitive dependencies for critical-path components, with maintainer-integrity signals (registry-side MFA evidence, maintainer-email-domain expiry tracking, post-publish freshness cooldowns) for systemically-important upstreams. Sample the most recent maintainer-account-compromise incident (Shai-Hulud worm reference set); verify the documented response covered lockfile audit against the malicious version set during the exposure window. Theater verdict if the register stops at direct dependencies, if maintainer-integrity monitoring is undocumented, or if the response procedure assumes a clean upstream channel.",
1517
+ "evidence_required": [
1518
+ "PW.4 reuse register including transitive dependencies",
1519
+ "maintainer-integrity monitoring records for critical-path upstreams",
1520
+ "lockfile audit log from the reference maintainer-compromise incident"
1521
+ ],
1522
+ "verdict_when_failed": "compliance-theater"
1523
+ }
1524
+ },
1419
1525
  "NIST-800-53-AC-2": {
1420
1526
  "framework": "NIST SP 800-53 Rev 5",
1421
1527
  "control_id": "AC-2",
@@ -1466,6 +1572,7 @@
1466
1572
  "status": "open",
1467
1573
  "opened_date": "2026-04-01",
1468
1574
  "evidence_cves": [
1575
+ "CVE-2024-3154",
1469
1576
  "CVE-2025-53773",
1470
1577
  "CVE-2026-30615"
1471
1578
  ],
@@ -1553,6 +1660,37 @@
1553
1660
  "verdict_when_failed": "compliance-theater"
1554
1661
  }
1555
1662
  },
1663
+ "NIST-800-53-SC-39": {
1664
+ "framework": "NIST SP 800-53 Rev 5",
1665
+ "control_id": "SC-39",
1666
+ "control_name": "Process Isolation",
1667
+ "designed_for": "Maintain a separate execution domain for each executing system process. Original 2013 context, retained in Rev 5 (2020); anchored on the assumption that the operating system (or hypervisor / container runtime) provides a correct isolation primitive, and the security posture inherits that correctness.",
1668
+ "misses": [
1669
+ "Container-runtime escape CVE class (Leaky Vessels, runc / containerd / CRI-O file-descriptor leak and mount-namespace escape) defeats SC-39 by breaking the isolation primitive itself — the control assumes runtime correctness, the bug class invalidates the assumption",
1670
+ "SC-39 has no companion patch-currency tier for the isolation-primitive code path; if the container runtime, hypervisor, or kernel namespace implementation has a KEV-listed escape, SC-39 evidence remains GREEN while the isolation guarantee is GONE",
1671
+ "Speculative-execution and shared-cache side channels (Spectre / Meltdown / Downfall class) also defeat the SC-39 model on shared hardware, but the bug class moves slowly enough that SC-39 implementers can plausibly cite microcode updates as compensating control — container runtime escapes do not have that breathing room"
1672
+ ],
1673
+ "real_requirement": "SC-39 implementations must add a runtime-currency control alongside the isolation requirement: documented patch SLA (≤24h for KEV-listed isolation-primitive CVEs, ≤72h for public PoC without KEV) on the container runtime, hypervisor, and kernel namespace code path, plus a runtime-binary inventory cross-referenced against the CISA KEV catalog. SC-39 in isolation is necessary-but-insufficient when the isolation primitive itself is the attack surface.",
1674
+ "status": "open",
1675
+ "opened_date": "2026-05-17",
1676
+ "evidence_cves": [
1677
+ "CVE-2024-21626"
1678
+ ],
1679
+ "atlas_refs": [],
1680
+ "attack_refs": [
1681
+ "T1611"
1682
+ ],
1683
+ "theater_test": {
1684
+ "claim": "We maintain process isolation per NIST 800-53 SC-39.",
1685
+ "test": "Pull the SC-39 control implementation evidence. Confirm it enumerates the isolation primitive (container runtime, hypervisor, kernel namespace) AND a patch-currency tier against the CISA KEV catalog for that primitive. Pull the past 12 months of isolation-primitive CVE listings (runc / containerd / Xen / KVM / kernel-namespace class); measure time-to-mitigation. Theater verdict if SC-39 evidence stops at workload configuration without runtime-binary currency, or if any KEV-listed isolation-primitive CVE exceeded a 24h mitigation SLA.",
1686
+ "evidence_required": [
1687
+ "SC-39 control implementation document",
1688
+ "container-runtime / hypervisor / kernel-namespace version inventory",
1689
+ "KEV-listed isolation-primitive CVE mitigation timeline"
1690
+ ],
1691
+ "verdict_when_failed": "compliance-theater"
1692
+ }
1693
+ },
1556
1694
  "NIST-800-53-SC-7": {
1557
1695
  "framework": "NIST SP 800-53 Rev 5",
1558
1696
  "control_id": "SC-7",
@@ -1568,6 +1706,7 @@
1568
1706
  "status": "open",
1569
1707
  "opened_date": "2026-05-01",
1570
1708
  "evidence_cves": [
1709
+ "CVE-2024-40635",
1571
1710
  "CVE-2026-42897"
1572
1711
  ],
1573
1712
  "atlas_refs": [
@@ -1703,6 +1842,12 @@
1703
1842
  "status": "open",
1704
1843
  "opened_date": "2026-03-15",
1705
1844
  "evidence_cves": [
1845
+ "CVE-2023-3519",
1846
+ "CVE-2025-12686",
1847
+ "CVE-2025-59389",
1848
+ "CVE-2025-62847",
1849
+ "CVE-2025-62848",
1850
+ "CVE-2025-62849",
1706
1851
  "CVE-2026-0300",
1707
1852
  "CVE-2026-31431",
1708
1853
  "CVE-2026-32202",
@@ -1744,6 +1889,7 @@
1744
1889
  "status": "open",
1745
1890
  "opened_date": "2026-02-01",
1746
1891
  "evidence_cves": [
1892
+ "CVE-2025-11837",
1747
1893
  "CVE-2026-32202",
1748
1894
  "CVE-2026-33825"
1749
1895
  ],
@@ -1764,6 +1910,42 @@
1764
1910
  "verdict_when_failed": "compliance-theater"
1765
1911
  }
1766
1912
  },
1913
+ "NIST-800-53-SR-3": {
1914
+ "framework": "NIST SP 800-53 Rev 5",
1915
+ "control_id": "SR-3",
1916
+ "control_name": "Supply Chain Controls and Processes",
1917
+ "designed_for": "Establish a process for identifying and addressing weaknesses or deficiencies in the supply chain elements and processes for system components, system services, and related supply chain elements. Anchored on a vendor-contract model — the organization has a direct contractual relationship with each supplier, and supply-chain risk is governed through that relationship.",
1918
+ "misses": [
1919
+ "Tier-3 transitive dependencies (libsystemd → liblzma class) routinely escape SR-3 inventory — the organization has no contract with the tier-3 upstream and no visibility into its maintainer-trust posture",
1920
+ "Open-source maintainer compromise (xz-utils, Shai-Hulud worm class) sits outside the vendor-contract framing entirely — the SR-3 controls catch tampered upstream but not legitimately-authenticated malicious upstream where the maintainer account itself is the compromised principal",
1921
+ "Registry-side controls (npm / PyPI / RubyGems / crates.io / GHCR maintainer-account integrity, registry-side MFA enforcement, post-publish freshness cooldowns) are not enumerated as supply-chain controls in SR-3 — the control class assumes B2B supplier relationships, not registry-mediated open-source distribution"
1922
+ ],
1923
+ "real_requirement": "SR-3 implementations must extend the supply-chain inventory to at least tier-3 transitive dependencies for critical-path components, with documented registry-side controls (maintainer MFA evidence, post-publish cooldowns on systemically-important upstreams, lockfile audit against known-malicious version sets) for registry-mediated supply chains. The vendor-contract model alone is insufficient; open-source maintainer-account integrity is a load-bearing supply-chain control that SR-3 does not currently enumerate.",
1924
+ "status": "open",
1925
+ "opened_date": "2026-05-17",
1926
+ "evidence_cves": [
1927
+ "CVE-2024-3094",
1928
+ "MAL-2026-SHAI-HULUD-OSS"
1929
+ ],
1930
+ "atlas_refs": [
1931
+ "AML.T0010"
1932
+ ],
1933
+ "attack_refs": [
1934
+ "T1195",
1935
+ "T1195.001",
1936
+ "T1195.002"
1937
+ ],
1938
+ "theater_test": {
1939
+ "claim": "Our supply chain is governed per NIST 800-53 SR-3 — suppliers are inventoried and risk-managed.",
1940
+ "test": "Pull the SR-3 supply-chain register. Confirm it extends to tier-3 transitive dependencies for critical-path components AND enumerates registry-side controls (maintainer MFA evidence, post-publish cooldowns, lockfile audit procedures) for registry-mediated open-source supply chains. Sample the most recent maintainer-account-compromise incident (xz-utils backdoor or Shai-Hulud worm reference case); verify the SR-3 response procedure covered lockfile audit against the malicious version set during the active exposure window. Theater verdict if the register stops at direct vendor relationships, if registry-side controls are absent, or if the response procedure assumes vendor-contract-based supply chain only.",
1941
+ "evidence_required": [
1942
+ "SR-3 supply-chain register including tier-3 transitive dependencies",
1943
+ "registry-side maintainer-integrity monitoring records",
1944
+ "lockfile audit log from the reference maintainer-compromise incident"
1945
+ ],
1946
+ "verdict_when_failed": "compliance-theater"
1947
+ }
1948
+ },
1767
1949
  "NIST-800-63B-rev4": {
1768
1950
  "framework": "NIST SP 800-63B Rev 4 (Digital Identity Guidelines — Authentication & Lifecycle Mgmt)",
1769
1951
  "control_id": "800-63B-rev4",
@@ -1834,6 +2016,39 @@
1834
2016
  "verdict_when_failed": "compliance-theater"
1835
2017
  }
1836
2018
  },
2019
+ "NIST-AI-RMF-MAP-3.4": {
2020
+ "framework": "NIST AI RMF 1.0",
2021
+ "control_id": "MAP 3.4",
2022
+ "control_name": "AI system risks identified, prioritized, and documented",
2023
+ "designed_for": "MAP function 3.4 of the AI Risk Management Framework — identifying, prioritizing, and documenting risks associated with AI system development and deployment. Anchored on the assumption that risk identification is an organizational activity scoped to the AI system being deployed (the defender's system), and that the threat model is bounded by what the deployer knows about its own AI use case.",
2024
+ "misses": [
2025
+ "AI-as-research-tool / AI-as-vulnerability-discovery — Hard Rule #7 establishes that 41% of 2025 zero-days were AI-discovered, making AI-assisted offensive capability a current operational reality; MAP 3.4 risk taxonomies treat AI offensive use as emerging or future-state rather than active threat input",
2026
+ "MAP 3.4 risk identification is scoped to risks OF the AI system, not risks FROM AI as an attacker capability — a CVE discovered by an autonomous AI analysis platform (depthfirst, etc.) is outside the MAP 3.4 frame because the deployer is not the one running the AI",
2027
+ "Adversarial AI-discovery shortens time-to-weaponized-exploit; MAP 3.4 risk prioritization does not require an ai_discovered classifier on incoming vulnerability intel, so AI-discovered CVEs flow through the existing risk pipeline at human-discovery cadence"
2028
+ ],
2029
+ "real_requirement": "MAP 3.4 implementations must add an AI-as-attacker-capability risk class: incoming vulnerability intelligence is tagged with an ai_discovered flag, and AI-discovered vulnerabilities receive an expedited risk-prioritization tier reflecting the compressed weaponization window. The MAP 3.4 risk register must enumerate not only risks of the deployer's AI system but also risks from AI as an offensive capability against the deployer's non-AI attack surface.",
2030
+ "status": "open",
2031
+ "opened_date": "2026-05-17",
2032
+ "evidence_cves": [
2033
+ "CVE-2026-42945"
2034
+ ],
2035
+ "atlas_refs": [
2036
+ "AML.T0040"
2037
+ ],
2038
+ "attack_refs": [
2039
+ "T1190"
2040
+ ],
2041
+ "theater_test": {
2042
+ "claim": "We identify, prioritize, and document AI system risks per NIST AI RMF MAP 3.4.",
2043
+ "test": "Pull the MAP 3.4 risk register. Confirm it enumerates BOTH risks of the deployer's AI system AND risks from AI-as-attacker-capability (AI-discovered vulnerabilities, AI-assisted weaponization). Confirm the vulnerability-intelligence pipeline tags incoming CVEs with an ai_discovered flag, and that AI-discovered CVEs receive an expedited prioritization tier. Sample the response to the most recent AI-discovered CVE on a deployer-owned component (CVE-2026-42945 NGINX Rift reference case); verify the prioritization tier triggered the expedited response. Theater verdict if the register treats AI offensive capability as emerging / future-state, if vulnerability intel lacks the ai_discovered classifier, or if AI-discovered CVEs flow through at human-discovery cadence.",
2044
+ "evidence_required": [
2045
+ "MAP 3.4 risk register including AI-as-attacker-capability entries",
2046
+ "vulnerability-intelligence pipeline schema showing the ai_discovered classifier",
2047
+ "incident response record for the reference AI-discovered CVE with prioritization-tier timestamps"
2048
+ ],
2049
+ "verdict_when_failed": "compliance-theater"
2050
+ }
2051
+ },
1837
2052
  "NIST-AI-RMF-MEASURE-2.5": {
1838
2053
  "framework": "NIST AI RMF 1.0",
1839
2054
  "control_id": "MEASURE 2.5",
@@ -2080,6 +2295,40 @@
2080
2295
  "verdict_when_failed": "compliance-theater"
2081
2296
  }
2082
2297
  },
2298
+ "OWASP-Top-10-2021-A06": {
2299
+ "framework": "OWASP Top 10 (2021)",
2300
+ "control_id": "A06:2021",
2301
+ "control_name": "Vulnerable and Outdated Components",
2302
+ "designed_for": "A06:2021 calls out applications that use components (libraries, frameworks, runtimes) with known vulnerabilities or out-of-date versions. The standard remediation guidance is to upgrade the vulnerable component to a fixed release through the normal patch-management process — vendor patch, dependency bump, redeploy.",
2303
+ "misses": [
2304
+ "Configuration-side mitigation paths are not enumerated — when a CVE is exploitable only when a specific configuration pattern is present (NGINX Rift requires unnamed PCRE captures in a rewrite directive), the operator-side fix (rewrite the directive to use named captures) is a faster mitigation than the vendor-patch path but A06 guidance defaults operators to vendor-patch waiting",
2305
+ "Live-patch / no-restart mitigation paths (operator-side configuration edits that retire the vulnerable code path without requiring a vendor release or component restart) are not framed as A06 remediation options",
2306
+ "A06 risk scoring inherits CVSS without recognising configuration-derived exposure — a CVE with a configuration prerequisite has lower real-world exposure than its CVSS suggests, and the configuration-prerequisite check is the real-world prioritization filter",
2307
+ "AI-discovered components / AI-discovered vulnerabilities are not enumerated in A06 risk identification — Hard Rule #7 establishes AI-discovery as current operational reality, A06 still implicitly assumes human-discovery cadence"
2308
+ ],
2309
+ "real_requirement": "A06:2021 implementations must add a configuration-derived-exposure tier: vulnerability triage on a known-vulnerable component first checks whether the deployed configuration matches the exploit prerequisite, and surfaces operator-side mitigation paths (configuration edits, code-path retirement) alongside the vendor-patch path. The fastest available mitigation wins, not the default vendor-patch path. Risk scoring incorporates configuration-derived exposure, not just component-version-based CVSS.",
2310
+ "status": "open",
2311
+ "opened_date": "2026-05-17",
2312
+ "evidence_cves": [
2313
+ "CVE-2026-42945"
2314
+ ],
2315
+ "atlas_refs": [
2316
+ "AML.T0040"
2317
+ ],
2318
+ "attack_refs": [
2319
+ "T1190"
2320
+ ],
2321
+ "theater_test": {
2322
+ "claim": "We track and remediate vulnerable and outdated components per OWASP Top 10 A06:2021.",
2323
+ "test": "Pull the A06 vulnerability-management procedure. Confirm it enumerates BOTH vendor-patch path AND configuration-side mitigation paths (operator-side configuration edits that retire the vulnerable code path without requiring a vendor release). Sample the most recent CVE on a deployed component where a configuration prerequisite governs exploitability (CVE-2026-42945 NGINX Rift reference case requires unnamed PCRE captures in a rewrite directive); verify the response surfaced the configuration-side mitigation before defaulting to vendor-patch waiting. Theater verdict if the procedure recognises only the vendor-patch path, if configuration-derived exposure is not in the prioritization filter, or if the sampled incident did not surface a faster mitigation path that was available.",
2324
+ "evidence_required": [
2325
+ "A06 vulnerability-management procedure document",
2326
+ "configuration-prerequisite check procedure for at least the top-5 deployed components",
2327
+ "incident record for the reference CVE showing mitigation-path selection and timestamps"
2328
+ ],
2329
+ "verdict_when_failed": "compliance-theater"
2330
+ }
2331
+ },
2083
2332
  "PCI-DSS-4.0-6.3.3": {
2084
2333
  "framework": "PCI DSS 4.0",
2085
2334
  "control_id": "6.3.3",
@@ -2095,6 +2344,7 @@
2095
2344
  "status": "open",
2096
2345
  "opened_date": "2026-03-15",
2097
2346
  "evidence_cves": [
2347
+ "CVE-2023-3519",
2098
2348
  "CVE-2026-31431"
2099
2349
  ],
2100
2350
  "atlas_refs": [],
@@ -2353,6 +2603,40 @@
2353
2603
  "verdict_when_failed": "compliance-theater"
2354
2604
  }
2355
2605
  },
2606
+ "SLSA-v1.0-Source-L3": {
2607
+ "framework": "SLSA v1.0 (Supply-chain Levels for Software Artifacts)",
2608
+ "control_id": "Source Track L3",
2609
+ "control_name": "Source track level 3 — verified history and retained provenance",
2610
+ "designed_for": "SLSA v1.0 source-track level 3 — source-control system retains verified version history (every revision is signed by an authenticated, identified actor) AND retains source-track provenance for a defined period. Anchored on the assumption that source-side integrity (signed commits + retained history) is achievable for projects whose source repositories are governed by the consuming organization or by a co-operative upstream.",
2611
+ "misses": [
2612
+ "Open-source packages distributed via npm / PyPI / RubyGems / crates.io with NO source-track provenance attestation are outside SLSA Source L3 coverage — the consuming organization has no source-track signal to verify against, and SLSA does not provide an alternative for the no-provenance-attestation case",
2613
+ "Maintainer-account-compromise (Shai-Hulud worm class, MAL-2026-TANSTACK-MINI) can produce Source L3-compliant artifacts when the malicious commits are signed by the compromised legitimate maintainer's authenticated identity — Source L3 attests authenticity, not benignness",
2614
+ "Freshness-of-published-version is not a Source L3 concern — a worm pivoting through a compromised maintainer can publish 84 malicious versions within hours, and Source L3 has no cooldown-period concept that would let the consumer wait out the active exposure window",
2615
+ "Source L3 has no consumer-side workflow for the no-provenance-attestation case beyond 'do not consume' — operators who must consume packages without source-track provenance are left without a graduated control set"
2616
+ ],
2617
+ "real_requirement": "Source L3 implementations on the consumer side must add a freshness-cooldown control for packages without source-track provenance attestation (post-publish quarantine on systemically-important upstreams), plus a maintainer-account-integrity signal layered on top of the authentication-only Source L3 attestation (registry-side MFA evidence, lockfile audit against known-malicious version sets during the exposure window). Source L3 is necessary-but-insufficient when the threat is maintainer-account compromise rather than upstream tampering.",
2618
+ "status": "open",
2619
+ "opened_date": "2026-05-17",
2620
+ "evidence_cves": [
2621
+ "MAL-2026-TANSTACK-MINI"
2622
+ ],
2623
+ "atlas_refs": [
2624
+ "AML.T0010"
2625
+ ],
2626
+ "attack_refs": [
2627
+ "T1195.001"
2628
+ ],
2629
+ "theater_test": {
2630
+ "claim": "Our supply chain consumes only SLSA Source L3-compliant packages — source-track integrity is verified.",
2631
+ "test": "Pull the SLSA Source L3 consumption policy. Confirm it enumerates the no-provenance-attestation case for npm / PyPI / RubyGems / crates.io packages, with a documented freshness-cooldown control (post-publish quarantine) for systemically-important upstreams without source-track provenance. Sample the most recent maintainer-account-compromise incident (MAL-2026-TANSTACK-MINI reference case); verify the consumer-side response covered lockfile audit against the malicious version set within the active exposure window. Theater verdict if the policy treats Source L3 attestation as sufficient signal of benignness, if there is no freshness-cooldown control for no-provenance upstreams, or if the sampled incident response did not include lockfile audit within the exposure window.",
2632
+ "evidence_required": [
2633
+ "SLSA Source L3 consumption policy document",
2634
+ "freshness-cooldown control evidence for systemically-important upstreams without source-track provenance",
2635
+ "lockfile audit log from the reference maintainer-compromise incident"
2636
+ ],
2637
+ "verdict_when_failed": "compliance-theater"
2638
+ }
2639
+ },
2356
2640
  "SOC2-CC6-logical-access": {
2357
2641
  "framework": "SOC 2 (AICPA Trust Services Criteria)",
2358
2642
  "control_id": "CC6",
@@ -3666,6 +3950,7 @@
3666
3950
  "status": "open",
3667
3951
  "opened_date": "2026-05-15",
3668
3952
  "evidence_cves": [
3953
+ "CVE-2023-3519",
3669
3954
  "CVE-2026-0300",
3670
3955
  "CVE-2026-42945"
3671
3956
  ],
@@ -3702,6 +3987,7 @@
3702
3987
  "opened_date": "2026-05-15",
3703
3988
  "evidence_cves": [
3704
3989
  "CVE-2026-0300",
3990
+ "CVE-2026-20182",
3705
3991
  "CVE-2026-42897",
3706
3992
  "CVE-2026-42945",
3707
3993
  "CVE-2026-46300",
@@ -3739,6 +4025,7 @@
3739
4025
  "status": "open",
3740
4026
  "opened_date": "2026-05-15",
3741
4027
  "evidence_cves": [
4028
+ "CVE-2024-1709",
3742
4029
  "CVE-2026-39987"
3743
4030
  ],
3744
4031
  "atlas_refs": [
@@ -3774,6 +4061,7 @@
3774
4061
  "status": "open",
3775
4062
  "opened_date": "2026-05-15",
3776
4063
  "evidence_cves": [
4064
+ "CVE-2026-30623",
3777
4065
  "CVE-2026-39987"
3778
4066
  ],
3779
4067
  "atlas_refs": [
@@ -3877,6 +4165,7 @@
3877
4165
  "status": "open",
3878
4166
  "opened_date": "2026-05-15",
3879
4167
  "evidence_cves": [
4168
+ "CVE-2025-11837",
3880
4169
  "CVE-2026-32202",
3881
4170
  "CVE-2026-33825",
3882
4171
  "CVE-2026-6973"
@@ -4078,6 +4367,7 @@
4078
4367
  "status": "open",
4079
4368
  "opened_date": "2026-05-17",
4080
4369
  "evidence_cves": [
4370
+ "CVE-2024-3154",
4081
4371
  "MAL-2026-NODE-IPC-STEALER",
4082
4372
  "MAL-2026-SHAI-HULUD-OSS",
4083
4373
  "MAL-2026-TANSTACK-MINI"