@blamejs/exceptd-skills 0.18.20 → 0.18.22

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 (68) hide show
  1. package/AGENTS.md +3 -3
  2. package/ARCHITECTURE.md +4 -4
  3. package/CHANGELOG.md +12 -0
  4. package/CONTEXT.md +2 -2
  5. package/README.md +5 -5
  6. package/agents/threat-researcher.md +2 -2
  7. package/bin/exceptd.js +4 -1
  8. package/data/_indexes/_meta.json +43 -43
  9. package/data/_indexes/activity-feed.json +26 -26
  10. package/data/_indexes/catalog-summaries.json +12 -12
  11. package/data/_indexes/chains.json +67238 -589
  12. package/data/_indexes/frequency.json +10 -0
  13. package/data/_indexes/recipes.json +1 -1
  14. package/data/_indexes/section-offsets.json +82 -82
  15. package/data/_indexes/summary-cards.json +1 -1
  16. package/data/_indexes/token-budget.json +19 -19
  17. package/data/atlas-ttps.json +7 -7
  18. package/data/attack-techniques.json +295 -8
  19. package/data/cve-catalog.json +11443 -2
  20. package/data/cwe-catalog.json +366 -11
  21. package/data/framework-control-gaps.json +622 -15
  22. package/data/zeroday-lessons.json +5017 -2
  23. package/lib/auto-discovery.js +54 -67
  24. package/lib/cve-batch.js +216 -0
  25. package/lib/cve-curation.js +4 -0
  26. package/lib/cve-enrich.js +172 -0
  27. package/lib/prefetch.js +189 -110
  28. package/lib/schemas/skill-frontmatter.schema.json +1 -1
  29. package/lib/scoring.js +24 -0
  30. package/lib/version-pins.js +1 -1
  31. package/manifest-snapshot.json +2 -2
  32. package/manifest-snapshot.sha256 +1 -1
  33. package/manifest.json +88 -88
  34. package/package.json +2 -2
  35. package/sbom.cdx.json +149 -119
  36. package/scripts/builders/catalog-summaries.js +1 -1
  37. package/scripts/builders/recipes.js +1 -1
  38. package/skills/age-gates-child-safety/skill.md +2 -2
  39. package/skills/ai-attack-surface/skill.md +3 -3
  40. package/skills/ai-c2-detection/skill.md +4 -4
  41. package/skills/api-security/skill.md +1 -1
  42. package/skills/attack-surface-pentest/skill.md +3 -3
  43. package/skills/cloud-security/skill.md +2 -2
  44. package/skills/compliance-theater/skill.md +2 -2
  45. package/skills/container-runtime-security/skill.md +2 -2
  46. package/skills/coordinated-vuln-disclosure/skill.md +1 -1
  47. package/skills/dlp-gap-analysis/skill.md +4 -4
  48. package/skills/exploit-scoring/skill.md +1 -1
  49. package/skills/framework-gap-analysis/skill.md +3 -3
  50. package/skills/fuzz-testing-strategy/skill.md +1 -1
  51. package/skills/incident-response-playbook/skill.md +1 -1
  52. package/skills/mcp-agent-trust/skill.md +1 -1
  53. package/skills/mlops-security/skill.md +2 -2
  54. package/skills/ot-ics-security/skill.md +2 -2
  55. package/skills/policy-exception-gen/skill.md +2 -2
  56. package/skills/rag-pipeline-security/skill.md +3 -3
  57. package/skills/ransomware-response/skill.md +1 -1
  58. package/skills/sector-energy/skill.md +1 -1
  59. package/skills/sector-federal-government/skill.md +1 -1
  60. package/skills/sector-financial/skill.md +3 -3
  61. package/skills/sector-healthcare/skill.md +2 -2
  62. package/skills/security-maturity-tiers/skill.md +1 -1
  63. package/skills/skill-update-loop/skill.md +4 -4
  64. package/skills/supply-chain-integrity/skill.md +1 -1
  65. package/skills/threat-model-currency/skill.md +7 -7
  66. package/skills/threat-modeling-methodology/skill.md +1 -1
  67. package/skills/webapp-security/skill.md +1 -1
  68. package/skills/zeroday-gap-learn/skill.md +2 -2
package/AGENTS.md CHANGED
@@ -44,7 +44,7 @@ Each rule below carries a **Forcing function** annotation declaring whether it i
44
44
  12. **External data version pinning** — Every reference to external data (MITRE ATLAS, MITRE ATT&CK, NIST frameworks, CISA KEV, IETF RFCs and Internet-Drafts) must pin to a specific version. When a new version is released: (a) audit for breaking changes (renamed TTPs, tactic-split moves, replaced RFCs, deprecated controls), (b) bump `last_threat_review` in all affected skills, (c) update `_meta` version fields in the relevant `data/*.json` file, (d) update `last_verified` on affected `data/rfc-references.json` entries, (e) never silently inherit version changes. Frameworks lag RFCs; RFCs lag attacker innovation — skills must track lag at every layer.
45
45
  *Forcing function:* `_meta` version fields are schema-required; reviewer-checked for cross-file version consistency.
46
46
 
47
- **Pinned ATLAS version: v2026.05 (May 2026), Secure AI v2 layer (May 2026). Audit cadence: monthly** (ATLAS now ships monthly per CTID; the Secure AI v2 layered set and per-technique maturity classification are tracked separately in `data/atlas-ttps.json` via the `secure_ai_v2_layer` and `maturity` fields).
47
+ **Pinned ATLAS version: v2026.06 (June 2026), Secure AI v2 layer (May 2026). Audit cadence: monthly** (ATLAS now ships monthly per CTID; the Secure AI v2 layered set and per-technique maturity classification are tracked separately in `data/atlas-ttps.json` via the `secure_ai_v2_layer` and `maturity` fields).
48
48
 
49
49
  **Pinned ATT&CK version: v19.1 (May 2026). Audit cadence: semi-annual** (April and October releases). v19 split Defense Evasion (TA0005) into Stealth (TA0005) and Defense Impairment (TA0112) — affected entries in `data/attack-techniques.json` carry `tactic_moved_from` for traceability. v18 introduced Detection Strategies (DSxxxx) as first-class objects; record applicable strategy IDs on entries where canonical strategies exist.
50
50
 
@@ -206,7 +206,7 @@ Wrong: adding a new CVE to `data/cve-catalog.json` without completing all requir
206
206
  Right: every new entry requires all fields defined in the CVE catalog schema. Partial entries fail the schema validation in `lib/scoring.js`.
207
207
 
208
208
  **DR-7: Stale ATLAS / ATT&CK version**
209
- Current pinned ATLAS version: **v2026.05 (May 2026)** with the **CTID Secure AI v2 layer (May 2026)**. ATLAS audit cadence is **monthly** (CTID now ships monthly). Current pinned ATT&CK version: **v19.1 (May 2026)**, semi-annual cadence (April + October). When either source updates: audit all TTP IDs for changes (including v19's Defense Evasion → Stealth / Defense Impairment split), bump `last_threat_review` in affected skills, update `_meta` version fields in `data/atlas-ttps.json` and `data/attack-techniques.json`. Never silently upgrade.
209
+ Current pinned ATLAS version: **v2026.06 (June 2026)** with the **CTID Secure AI v2 layer (May 2026)**. ATLAS audit cadence is **monthly** (CTID now ships monthly). Current pinned ATT&CK version: **v19.1 (May 2026)**, semi-annual cadence (April + October). When either source updates: audit all TTP IDs for changes (including v19's Defense Evasion → Stealth / Defense Impairment split), bump `last_threat_review` in affected skills, update `_meta` version fields in `data/atlas-ttps.json` and `data/attack-techniques.json`. Never silently upgrade.
210
210
 
211
211
  **DR-8: Missing zero-day learning loop**
212
212
  Wrong: adding a new entry to `data/cve-catalog.json` without running the learning loop.
@@ -407,7 +407,7 @@ When in doubt, ship the playbook without a collector and open the gap as a follo
407
407
  - [ ] All new CVEs have complete `data/cve-catalog.json` entries
408
408
  - [ ] All new CVEs have `data/zeroday-lessons.json` entries
409
409
  - [ ] All skill `data_deps` resolve to existing files
410
- - [ ] All ATLAS refs are valid v2026.05 IDs (current pinned version); Secure AI v2 layer flags + maturity present on AI-pipeline entries
410
+ - [ ] All ATLAS refs are valid v2026.06 IDs (current pinned version); Secure AI v2 layer flags + maturity present on AI-pipeline entries
411
411
  - [ ] All ATT&CK refs are valid v19.1 IDs (current pinned version); post-split tactics (Stealth / Defense Impairment) used where applicable
412
412
  - [ ] All framework control IDs resolve in `data/framework-control-gaps.json`
413
413
  - [ ] No skill body contains placeholder language (TODO, TBD, coming soon, placeholder)
package/ARCHITECTURE.md CHANGED
@@ -36,7 +36,7 @@ data_deps:
36
36
  - cve-catalog.json # files in data/ this skill reads
37
37
  - atlas-ttps.json
38
38
  atlas_refs:
39
- - AML.T0043 # MITRE ATLAS v2026.05 TTP IDs
39
+ - AML.T0043 # MITRE ATLAS v2026.06 TTP IDs
40
40
  - AML.T0054
41
41
  attack_refs:
42
42
  - T1068 # MITRE ATT&CK TTP IDs
@@ -124,7 +124,7 @@ Schema per entry:
124
124
  "AML.T0043": {
125
125
  "name": "Craft Adversarial Data",
126
126
  "tactic": "ML Attack Staging",
127
- "atlas_version": "2026.05",
127
+ "atlas_version": "2026.06",
128
128
  "description": "...",
129
129
  "framework_coverage": {
130
130
  "NIST-800-53": {"covered": false, "nearest_control": null, "gap_description": "..."},
@@ -176,7 +176,7 @@ Tracks PoC status, weaponization stage, and AI-assist factor per CVE. Updated wh
176
176
 
177
177
  ### `data/cwe-catalog.json`
178
178
 
179
- 189 CWE entries pinned to **CWE v4.20**. Covers the Top 25 Most Dangerous Software Weaknesses (2024 release) plus AI- and supply-chain-relevant weakness classes (prompt-injection-as-trust-boundary failure, training data integrity, dependency confusion, untrusted artifact ingestion). Each entry records root-cause description, common consequences, mitigation patterns, and the CVEs in `cve-catalog.json` that instantiate the weakness. Skills cite CWE IDs in `cwe_refs` to anchor a finding to a stable weakness taxonomy rather than to a single CVE; the CWE provides the durable root-cause lens that survives across exploit generations.
179
+ 199 CWE entries pinned to **CWE v4.20**. Covers the Top 25 Most Dangerous Software Weaknesses (2024 release) plus AI- and supply-chain-relevant weakness classes (prompt-injection-as-trust-boundary failure, training data integrity, dependency confusion, untrusted artifact ingestion). Each entry records root-cause description, common consequences, mitigation patterns, and the CVEs in `cve-catalog.json` that instantiate the weakness. Skills cite CWE IDs in `cwe_refs` to anchor a finding to a stable weakness taxonomy rather than to a single CVE; the CWE provides the durable root-cause lens that survives across exploit generations.
180
180
 
181
181
  `_meta.cwe_version` pins the version; on a CWE release, audit IDs for renames or deprecations, bump `last_threat_review` on affected skills, and update `_meta`.
182
182
 
@@ -204,7 +204,7 @@ RWEP (Real-World Exploit Priority) scoring engine.
204
204
 
205
205
  - `score(cveId)` — Return RWEP score for a CVE in the catalog
206
206
  - `scoreCustom(factors)` — Score a custom factor set (for CVEs not yet in catalog)
207
- - `validate()` — Schema validation: check all skill data_deps resolve, all CVE entries are complete, all ATLAS refs are valid v2026.05 IDs
207
+ - `validate()` — Schema validation: check all skill data_deps resolve, all CVE entries are complete, all ATLAS refs are valid v2026.06 IDs
208
208
  - `compare(cveId)` — Return CVSS vs. RWEP comparison with explanation of the delta
209
209
 
210
210
  RWEP factor weights:
package/CHANGELOG.md CHANGED
@@ -1,5 +1,17 @@
1
1
  # Changelog
2
2
 
3
+ ## 0.18.22 — 2026-07-11
4
+
5
+ CVE catalog currency: one hundred more CISA-KEV-listed, actively-exploited CVEs are now curated in the offline catalog (519 → 619), covering the most recent additions to the CISA Known Exploited Vulnerabilities catalog (September 2024 through July 2026). Each entry carries a verified NVD CVSS vector and CWE, ATT&CK technique mappings, real-world exploitation status, primary-source indicators where public exploit code exists, global-first framework-control-gap declarations (NIST, EU NIS2/DORA, UK CAF, AU ISM/Essential 8, ISO 27001), an RWEP score, and a paired zero-day lesson. The batch spans internet-facing edge and enterprise infrastructure — Palo Alto PAN-OS management auth bypass (CVE-2025-0108), SonicWall SonicOS SSLVPN authentication bypass (CVE-2024-53704), Fortinet FortiManager "FortiJump" (CVE-2024-47575) and the FortiOS fgfmd format-string RCE (CVE-2024-23113), SimpleHelp path traversal on RMM servers (CVE-2024-57727), an Ivanti Cloud Services Appliance path-traversal chain (CVE-2024-8963), Veeam Backup & Replication deserialization RCE (CVE-2024-40711), Trimble Cityworks deserialization (CVE-2025-0994), and Microsoft SharePoint code injection (CVE-2024-38094) — alongside client and mobile exploitation such as the Apple iOS USB Restricted Mode bypass used in targeted attacks (CVE-2025-24200), a Firefox animation-timeline use-after-free deployed by RomCom (CVE-2024-9680), the Windows NTLM hash-disclosure flaw (CVE-2024-43451), and an Android Framework privilege escalation (CVE-2024-43093). Two of the hundred were AI-assisted discoveries, including the PTZOptics camera command-injection pair surfaced by an LLM triaging honeypot traffic (CVE-2024-8956, CVE-2024-8957); the Langflow server-side code execution flaw is also included (CVE-2026-55255). Six weakness classes backing these entries are new to the CWE catalog: CWE-114, CWE-134, CWE-176, CWE-273, CWE-303, and CWE-425.
6
+
7
+ Batch curation tooling: the new `exceptd refresh --curate-batch` command promotes a set of KEV drafts into fully-curated catalog entries from a facts file and a per-CVE judgment file in one pass, refusing to write any entry whose CWE, ATT&CK, or framework-control references are not already present in their catalogs. The nightly data refresh now pre-enriches newly-KEV-listed CVEs with NVD (CVSS, CWE) and FIRST EPSS data at import time and raises the per-run discovery cap from twenty to one hundred, so auto-imported drafts arrive with their mechanical fields already populated; `vendor_advisories` now reflects only real vendor advisories rather than a placeholder, so the catalog-gap detector correctly surfaces entries still missing one.
8
+
9
+ ## 0.18.21 — 2026-07-03
10
+
11
+ CVE catalog currency: twenty more CISA-KEV-listed, actively-exploited CVEs are now curated in the offline catalog (519 total), each carrying a verified NVD CVSS vector and CWE, an ATT&CK technique mapping, behavioral indicators, global-first framework-control-gap declarations, an RWEP score, and a paired zero-day lesson. The additions cover Microsoft SharePoint Server deserialization (CVE-2026-45659) and the Windows MSC "EvilTwin" console-file bypass exploited by EncryptHub/Water Gamayun (CVE-2025-26633); the SimpleHelp OIDC signature-verification bypass on internet-facing RMM servers (CVE-2026-48558); the three Ivanti Endpoint Manager credential-coercion path traversals (CVE-2024-13159, CVE-2024-13160, CVE-2024-13161); the Advantive VeraCore upload and SQL-injection pair used by XE Group (CVE-2024-57968, CVE-2025-25181); a Linux kernel HID information leak used in a Cellebrite Android-unlock chain (CVE-2024-50302); Progress WhatsUp Gold path-traversal RCE (CVE-2024-4885); a Windows Win32k local privilege escalation (CVE-2018-8639); the Hitachi Vantara Pentaho BA Server authorization-bypass-plus-injection chain (CVE-2022-43769, CVE-2022-43939); the end-of-life Cisco Small Business RV command injection abused by the PolarEdge botnet (CVE-2023-20118); Zimbra Collaboration Suite stored XSS (CVE-2023-34192); Microsoft Partner Center (CVE-2024-49035) and Power Pages (CVE-2025-24989) access-control flaws; Oracle Agile PLM (CVE-2024-20953) and Adobe ColdFusion BlazeDS (CVE-2017-3066) deserialization RCE; and the Palo Alto PAN-OS authenticated arbitrary file read that attackers chain with the CVE-2025-0108 auth bypass (CVE-2025-0111). Four weakness classes backing these entries are new to the CWE catalog: CWE-707, CWE-404, CWE-647, and CWE-610.
12
+
13
+ Threat-intelligence pins: MITRE ATLAS advances from v2026.05 to v2026.06 across the manifest, the TTP catalog metadata, and every operator-facing reference. The update is additive — v2026.06 adds three techniques (Steal Web Session Cookie, its web-session-cookie sub-technique, and AI Service Web Interface) and refreshes the LLM Jailbreak technique, with no technique-ID removals or renames, so every cited AML.T* mapping stays valid.
14
+
3
15
  ## 0.18.20 — 2026-06-28
4
16
 
5
17
  Twenty more CISA-KEV-listed, actively-exploited CVEs are now in the catalog (479 → 499), each curated to the full bar: verified NVD CVSS and CWE, MITRE ATT&CK mapping, behavioral indicators of compromise, global-first framework-control-gap analysis (NIST 800-53, ISO 27001:2022, EU NIS2, UK CAF, AU Essential Eight), an RWEP score, and a paired zero-day lesson. Five weakness classes the new entries reference were added to the CWE catalog (184 → 189): hard-coded cryptographic key (CWE-321), path equivalence (CWE-44) and incorrectly-resolved names (CWE-706), absolute path traversal (CWE-36), and improper isolation (CWE-653).
package/CONTEXT.md CHANGED
@@ -114,7 +114,7 @@ Skills and playbooks read from `data/`. Authoritative catalog inventory:
114
114
  | File | Entries | Purpose |
115
115
  |------|---------|---------|
116
116
  | `cve-catalog.json` | 459 | CVEs with CVSS, RWEP score, EPSS estimates, CISA KEV flags, PoC and live-patch availability |
117
- | `atlas-ttps.json` | 170 | MITRE ATLAS v2026.05 (May 2026) techniques with framework gap flags |
117
+ | `atlas-ttps.json` | 170 | MITRE ATLAS v2026.06 (May 2026) techniques with framework gap flags |
118
118
  | `attack-techniques.json` | 805 | MITRE ATT&CK techniques with framework coverage mappings |
119
119
  | `framework-control-gaps.json` | 194 | Framework control gap entries: designed-for vs. what each control misses |
120
120
  | `exploit-availability.json` | 28 | Per-CVE PoC locations, weaponization stage, AI-acceleration factor, live-patch status |
@@ -245,7 +245,7 @@ The `researcher` **skill** (front-door dispatcher) and `threat-researcher` **age
245
245
  |------|------------|
246
246
  | RWEP | Real-World Exploit Priority — risk score beyond CVSS |
247
247
  | KEV | CISA Known Exploited Vulnerabilities catalog |
248
- | ATLAS | MITRE ATLAS v2026.05 — AI threat framework |
248
+ | ATLAS | MITRE ATLAS v2026.06 — AI threat framework |
249
249
  | MCP | Model Context Protocol — AI tool integration standard |
250
250
  | HNDL | Harvest-Now-Decrypt-Later — quantum threat to current crypto |
251
251
  | Framework lag | Gap between what a framework requires and what current TTPs demand |
package/README.md CHANGED
@@ -15,7 +15,7 @@
15
15
  [![OpenSSF Scorecard](https://api.scorecard.dev/projects/github.com/blamejs/exceptd-skills/badge)](https://scorecard.dev/viewer/?uri=github.com/blamejs/exceptd-skills)
16
16
  [![License: Apache 2.0](https://img.shields.io/badge/License-Apache_2.0-blue.svg)](https://www.apache.org/licenses/LICENSE-2.0)
17
17
  [![Skills](https://img.shields.io/badge/skills-51-d946ef)](#skill-inventory)
18
- [![ATLAS](https://img.shields.io/badge/MITRE%20ATLAS-v2026.05-d946ef)](https://atlas.mitre.org)
18
+ [![ATLAS](https://img.shields.io/badge/MITRE%20ATLAS-v2026.06-d946ef)](https://atlas.mitre.org)
19
19
  [![ATT&CK](https://img.shields.io/badge/MITRE%20ATT%26CK-v19.1-d946ef)](https://attack.mitre.org)
20
20
  [![Ed25519-signed](https://img.shields.io/badge/skills-Ed25519--signed-2ea043)](AGENTS.md)
21
21
  [![Jurisdictions](https://img.shields.io/badge/jurisdictions-35-blue)](data/global-frameworks.json)
@@ -30,7 +30,7 @@ This platform surfaces what is actually happening right now. Every skill explici
30
30
 
31
31
  ## Status
32
32
 
33
- Pre-1.0. Latest release lives on [GitHub Releases](https://github.com/blamejs/exceptd-skills/releases) and on npm as [`@blamejs/exceptd-skills`](https://www.npmjs.com/package/@blamejs/exceptd-skills) with signed npm provenance attestation and Ed25519-signed skill bodies. The package ships 51 skills across kernel LPE, MCP supply chain, AI-as-C2, prompt injection, post-quantum crypto, SBOM integrity, identity-incident response, and 35 other AI/security domains, plus 11 intelligence catalogs (CVE / ATLAS / ATT&CK / CWE / D3FEND / DLP / RFC / framework gaps / global frameworks / zero-day lessons / exploit availability) covering 35 jurisdictions; the CVE catalog holds 439 actively-exploited and high-priority entries, each carrying behavioral indicators, an ATT&CK technique mapping, and a defense-chain zero-day lesson. 33 investigation playbooks (kernel, MCP, AI-API, framework, SBOM, runtime, hardening, secrets, cred-stores, containers, crypto, plus `webhook-callback-abuse`, `cicd-pipeline-compromise`, `identity-sso-compromise`, `llm-tool-use-exfil`, `post-quantum-migration`, `ai-discovered-cve-triage`, `supply-chain-recovery`, `citation-hygiene`, `vc-wallet-trust`, `mail-server-hardening`, `network-trust`, `audit-log-integrity`, `self-update-integrity`, `multitenancy-isolation`, `decompression-dos`, `log-injection-telemetry`, `privacy-consent-ops`, and more), a CLI for discovery and investigation built around `discover → brief → run → attest` (each run executes the playbook's seven-phase contract), and a nightly auto-refresh job that pulls KEV / NVD / EPSS / GHSA / OSV / IETF deltas plus 15 primary-source advisory, research-blog, and tech-press feeds (Qualys TRU, Red Hat RHSA, Ubuntu USN, ZDI, kernel.org, oss-security, JFrog, CISA, Microsoft Security Blog, Sysdig, Trail of Bits, Embrace the Red, BleepingComputer security, and The Hacker News) into auto-PRs for editorial review, alongside a silent-regression watcher that flags historical CVEs re-broken without a new identifier.
33
+ Pre-1.0. Latest release lives on [GitHub Releases](https://github.com/blamejs/exceptd-skills/releases) and on npm as [`@blamejs/exceptd-skills`](https://www.npmjs.com/package/@blamejs/exceptd-skills) with signed npm provenance attestation and Ed25519-signed skill bodies. The package ships 51 skills across kernel LPE, MCP supply chain, AI-as-C2, prompt injection, post-quantum crypto, SBOM integrity, identity-incident response, and 35 other AI/security domains, plus 11 intelligence catalogs (CVE / ATLAS / ATT&CK / CWE / D3FEND / DLP / RFC / framework gaps / global frameworks / zero-day lessons / exploit availability) covering 35 jurisdictions; the CVE catalog holds 519 actively-exploited and high-priority entries, each carrying behavioral indicators, an ATT&CK technique mapping, and a defense-chain zero-day lesson. 33 investigation playbooks (kernel, MCP, AI-API, framework, SBOM, runtime, hardening, secrets, cred-stores, containers, crypto, plus `webhook-callback-abuse`, `cicd-pipeline-compromise`, `identity-sso-compromise`, `llm-tool-use-exfil`, `post-quantum-migration`, `ai-discovered-cve-triage`, `supply-chain-recovery`, `citation-hygiene`, `vc-wallet-trust`, `mail-server-hardening`, `network-trust`, `audit-log-integrity`, `self-update-integrity`, `multitenancy-isolation`, `decompression-dos`, `log-injection-telemetry`, `privacy-consent-ops`, and more), a CLI for discovery and investigation built around `discover → brief → run → attest` (each run executes the playbook's seven-phase contract), and a nightly auto-refresh job that pulls KEV / NVD / EPSS / GHSA / OSV / IETF deltas plus 15 primary-source advisory, research-blog, and tech-press feeds (Qualys TRU, Red Hat RHSA, Ubuntu USN, ZDI, kernel.org, oss-security, JFrog, CISA, Microsoft Security Blog, Sysdig, Trail of Bits, Embrace the Red, BleepingComputer security, and The Hacker News) into auto-PRs for editorial review, alongside a silent-regression watcher that flags historical CVEs re-broken without a new identifier.
34
34
 
35
35
  ---
36
36
 
@@ -49,7 +49,7 @@ Assess Linux kernel local privilege escalation exposure. Covers Copy Fail (CVE-2
49
49
  ### AI-Specific Attack Surface
50
50
 
51
51
  **[ai-attack-surface](skills/ai-attack-surface/skill.md)**
52
- Comprehensive AI/ML attack surface assessment mapped to MITRE ATLAS v2026.05 with explicit gap flags. Covers prompt injection as enterprise RCE (CVE-2025-53773 CVSS 7.8, 85%+ bypass rate against SOTA defenses), MCP supply chain RCE (CVE-2026-30615, zero user interaction, 150M+ downloads), RAG exfiltration, model poisoning, AI-assisted exploit development (41% of 2025 zero-days), credential theft acceleration (160% increase).
52
+ Comprehensive AI/ML attack surface assessment mapped to MITRE ATLAS v2026.06 with explicit gap flags. Covers prompt injection as enterprise RCE (CVE-2025-53773 CVSS 7.8, 85%+ bypass rate against SOTA defenses), MCP supply chain RCE (CVE-2026-30615, zero user interaction, 150M+ downloads), RAG exfiltration, model poisoning, AI-assisted exploit development (41% of 2025 zero-days), credential theft acceleration (160% increase).
53
53
 
54
54
  **[mcp-agent-trust](skills/mcp-agent-trust/skill.md)**
55
55
  Enumerate MCP (Model Context Protocol) trust boundary failures. Covers tool allowlisting gaps, unsigned server manifests, prompt injection via tool responses, supply chain compromise. CVE-2026-30615 (Windsurf, zero-interaction RCE). Generates: tool allowlist policy, server signing requirements, bearer auth config, output sanitization requirements.
@@ -622,7 +622,7 @@ All skills pull from `data/`. Cross-validated against canonical upstream sources
622
622
  To resolve a single citation rather than refresh the whole catalog, `exceptd cve <CVE-ID>` and `exceptd rfc <number>` return a status verdict for one id (catalog → resolved cache → one NVD / datatracker lookup, offline-capable). The lookup caches, so a fan-out of agents shares the answer instead of each independently re-researching the same citation.
623
623
 
624
624
  - `cve-catalog.json` — CVE metadata with RWEP scores, CISA KEV status, PoC availability, live-patch info
625
- - `atlas-ttps.json` — MITRE ATLAS v2026.05 TTPs with gap flags and exploitation examples. Each TTP now carries a `cve_refs[]` back-edge — operators reading an ATLAS entry see the catalogued CVEs that cite it without grepping `cve-catalog.json`. The same back-edge is populated on `attack-techniques.json`, and each playbook carries a `_meta.fed_by[]` reverse field naming the upstream playbooks that chain into it.
625
+ - `atlas-ttps.json` — MITRE ATLAS v2026.06 TTPs with gap flags and exploitation examples. Each TTP now carries a `cve_refs[]` back-edge — operators reading an ATLAS entry see the catalogued CVEs that cite it without grepping `cve-catalog.json`. The same back-edge is populated on `attack-techniques.json`, and each playbook carries a `_meta.fed_by[]` reverse field naming the upstream playbooks that chain into it.
626
626
  - `framework-control-gaps.json` — Per-framework, per-control: what it was designed for vs. what it misses
627
627
  - `exploit-availability.json` — PoC locations, weaponization status, AI-assist factor
628
628
  - `global-frameworks.json` — All major global compliance frameworks (35 jurisdictions) with control inventories and lag scores
@@ -638,7 +638,7 @@ To resolve a single citation rather than refresh the whole catalog, `exceptd cve
638
638
 
639
639
  **Compliance is not security.** A SOC 2 Type II report confirms that controls existed and operated effectively during the audit period. It says nothing about whether those controls are adequate for current attack patterns. When NIST 800-53 SI-2 says "apply security patches in a timely manner" and Copy Fail is a 732-byte deterministic root with a public PoC and no race condition, "timely" is the wrong frame entirely.
640
640
 
641
- **Framework lag is measured in months.** MITRE ATLAS v2026.05 (May 2026) is the most current AI threat framework available. It still lags real exploitation by 3-6 months. NIST AI RMF lags by years. ISO 27001:2022 has no AI-specific controls. These skills explicitly flag every place where framework coverage ends and real attacker capability begins.
641
+ **Framework lag is measured in months.** MITRE ATLAS v2026.06 (May 2026) is the most current AI threat framework available. It still lags real exploitation by 3-6 months. NIST AI RMF lags by years. ISO 27001:2022 has no AI-specific controls. These skills explicitly flag every place where framework coverage ends and real attacker capability begins.
642
642
 
643
643
  **AI changed the exploit development timeline.** Copy Fail was discovered by an AI system in approximately one hour. 41% of 2025 zero-days involved AI-assisted reverse engineering on the attacker side. The time between vulnerability introduction and reliable exploitation is compressing faster than patch management processes can adapt. Risk scoring must reflect this.
644
644
 
@@ -52,9 +52,9 @@ Research and validate new threat intelligence — CVEs, attack campaigns, new AT
52
52
  - Distinguish: "CISA KEV confirmed" vs. "suspected" vs. "no evidence"
53
53
 
54
54
  6. **Map to ATLAS/ATT&CK**
55
- - Identify which ATLAS v2026.05 TTPs are relevant to this CVE's attack vector
55
+ - Identify which ATLAS v2026.06 TTPs are relevant to this CVE's attack vector
56
56
  - Identify which ATT&CK techniques are relevant
57
- - Flag any ATLAS gaps (attack pattern not in ATLAS v2026.05)
57
+ - Flag any ATLAS gaps (attack pattern not in ATLAS v2026.06)
58
58
 
59
59
  7. **Identify affected skills**
60
60
  - Which skills cover the CVE's technology domain?
package/bin/exceptd.js CHANGED
@@ -718,10 +718,13 @@ function main() {
718
718
  // data slice without requiring a full package upgrade.
719
719
  effectiveCmd = "refresh-network";
720
720
  effectiveRest = rest.filter(a => a !== "--network");
721
- } else if (cmd === "refresh" && rest.includes("--curate")) {
721
+ } else if (cmd === "refresh" && (rest.includes("--curate") || rest.includes("--curate-batch"))) {
722
722
  // v0.12.0: --curate <CVE-ID> emits editorial questions + ranked
723
723
  // candidates (atlas/attack/cwe/framework) for a draft catalog entry.
724
724
  // Operator or AI assistant fills the null editorial fields.
725
+ // --curate-batch <facts+judgments files> assembles + writes many
726
+ // gate-passing entries in one shot; cve-curation.js's cli() branches
727
+ // to lib/cve-batch.js when it sees the flag.
725
728
  effectiveCmd = "refresh-curate";
726
729
  effectiveRest = rest;
727
730
  }
@@ -1,62 +1,62 @@
1
1
  {
2
2
  "schema_version": "1.1.0",
3
- "generated_at": "2026-06-28T07:52:35.014Z",
3
+ "generated_at": "2026-07-11T23:54:45.339Z",
4
4
  "generator": "scripts/build-indexes.js",
5
5
  "source_count": 64,
6
6
  "source_hashes": {
7
- "manifest.json": "c7b75dd1cd77b282f6653b474f9f85b7dbf2fdc53fde76ea18ef35280505eeda",
8
- "README.md": "e7b854e7db9a364a1b368b5084b4f0c2a8282f0459ce39800ac1d1dabdc06074",
9
- "data/atlas-ttps.json": "5bc59e23d6c2defa54168de161a0825299b9cc4a49c6b26df2dae70b4f42eedf",
10
- "data/attack-techniques.json": "9766ea6eb2b7abd96f4a028d535d01aca176b084dc1d6d854c9bac42263d7a24",
11
- "data/cve-catalog.json": "8f115499a1a554ad2fa19ed7c69afd758d6eeb8903e7b49f06b35068574eda4c",
12
- "data/cwe-catalog.json": "0a63829b2e7baa5bb0d099f473d27b1dd08bdc1dfb1fe69f3a4f38bb8578607d",
7
+ "manifest.json": "640ae4a66f3db19b0cb14761f45be4de1d432d0728f402cff45c1a4cb62807a7",
8
+ "README.md": "91d223cb15dacbeb16642b2f4e0afcd41e086d33a10006a6d3b686f76ae32539",
9
+ "data/atlas-ttps.json": "a414f3957956762a7f5aec07d36391b6579f45d1491b2a3db27eee38a4fad503",
10
+ "data/attack-techniques.json": "8bfd00768b038f17601ad8cab9d4efee4bb5dd9319dc9924c6724be2fa37864c",
11
+ "data/cve-catalog.json": "59e9b78bcc2f36e76ff9fad7fd3ca20feae799da8ff889e202db312c1c7b330b",
12
+ "data/cwe-catalog.json": "0fe9c3d27daddaf1edf287ee7b8cbbdc004ab656e54abed41f8ddbe739df29eb",
13
13
  "data/d3fend-catalog.json": "b5c1e83d216ba8ece6be1368d807d1636f3d77622fd4e9148e9ba2f5fd44ee0d",
14
14
  "data/dlp-controls.json": "d2406c482dddd30e49203879999dc4b3a7fd4d0494d6a61d86b91ee76415df19",
15
15
  "data/exploit-availability.json": "ec2656f0d9a893610e27b43eb6035fe9b18e057c9f6dfaac7e7d4959bbcbb795",
16
- "data/framework-control-gaps.json": "39c5b141a3cea0b2264614ccb67eec5ea36feaa3c94b9090eb6e83a0c9ff671c",
16
+ "data/framework-control-gaps.json": "832547285529fdeb8110d39d471120cfee3053a8b2de3de1a9350715ef518732",
17
17
  "data/global-frameworks.json": "20b18a851b3ab82e57cd159b49476d69fe544f02523398b2015189ab81c7c3f8",
18
18
  "data/rfc-references.json": "5db2f7006a1d7f2b8642a3e393213394e92798604576df973d0a0b8550f4b5ac",
19
- "data/zeroday-lessons.json": "1cafe8b3774c928fdcd0a1c0e00b55330e8846c115c582719034ec420d850a57",
19
+ "data/zeroday-lessons.json": "96556be0a5fe8f4f72fb3924cc7caf6d8f801cbeb12b85816cf8b0e1af7e81e6",
20
20
  "skills/kernel-lpe-triage/skill.md": "0f79c641cef6e5f4a942eb94f43c460562bf83dfb67ae112d146c39c6b320fb0",
21
- "skills/ai-attack-surface/skill.md": "6eefa7772f1faf9c8ed971f2a827cd48398a12ab3b691b258c7c8364a5deb39c",
22
- "skills/mcp-agent-trust/skill.md": "bda6842bfa3b8bfd5edb3ef37751c493ff32a3ca80f771c3d988ede4176f0803",
23
- "skills/framework-gap-analysis/skill.md": "fdc5a60f63af6050a2a89d123bc99b63196b1dbd64b3d22259a423b5b560d125",
24
- "skills/compliance-theater/skill.md": "72f97f85ff93894ce3d514d5c6ebb8d843be4c0eb5f5f5dce079eaa90738309a",
25
- "skills/exploit-scoring/skill.md": "b59a24c70e79c0fc5a389f095a07a07c9a96e266fa37f507d886daa4df535abc",
26
- "skills/rag-pipeline-security/skill.md": "c839de2fe1efc23c4c89745cea953f8e81de43c55117a4192e80b7e487670078",
27
- "skills/ai-c2-detection/skill.md": "ac555b9c9a59a26655bfa79cbccd8aa1bd2773c1314abf33546353e852939ff9",
28
- "skills/policy-exception-gen/skill.md": "1a2dbb8e836277cddba0e24c86e57088b36a9a766bf907adb21d7ce4a487277f",
29
- "skills/threat-model-currency/skill.md": "a784c2b9f00aa259c1612eb9983cc8a53a91331a800831d2cda5301ea951a914",
21
+ "skills/ai-attack-surface/skill.md": "9a1fca96c27803506a9ebe98ffb1eb17206278b0aba39ecc5cd19d74f3a32fbf",
22
+ "skills/mcp-agent-trust/skill.md": "fae25ffa7680b9ba66c86bb0aead7ea01f497c93ad9c1d04c6fdcdc42987b209",
23
+ "skills/framework-gap-analysis/skill.md": "3eca7d751da22c4b6ac9d399d5519853f9274ed03fcb315cdedab67e7b4e4cb9",
24
+ "skills/compliance-theater/skill.md": "a7742199a9c25dde18ca022c5f844eed7395ff7b1aa350f7d0b573e721f2d04a",
25
+ "skills/exploit-scoring/skill.md": "b7015d8a6b0f8b8fae92d8bda12ee64d62429ab57edfec49d4d7772f03885c67",
26
+ "skills/rag-pipeline-security/skill.md": "20439a98ff5026adad9684649b249371a68e685b27be6b42358068d635a8e296",
27
+ "skills/ai-c2-detection/skill.md": "6503b57a793885b73aabfef6d336fd2717af33b1228571a2fb732dc9f5f475dc",
28
+ "skills/policy-exception-gen/skill.md": "4c368d05875cbb4a7f008e627a7452a176db21b9ac5f08f813ac8007ddd17bbc",
29
+ "skills/threat-model-currency/skill.md": "11be4c065cab1bdd5230b03869850651b61478aa8fd690ca47373bcf205af5f6",
30
30
  "skills/global-grc/skill.md": "8d1dfbae79153d403d543b3481f463260a89a35d068db0fa9eeda21c01c78e09",
31
- "skills/zeroday-gap-learn/skill.md": "b0d81f110d4aac3dbcf605c638b9cb4b5b377a2589ac98de60a72445368ed903",
31
+ "skills/zeroday-gap-learn/skill.md": "b9216006195d7db2e2f66e55b8b9e99702c7e6a36100dea641709101027b2825",
32
32
  "skills/pqc-first/skill.md": "803b3dc39eba4caa4f08980806b5fd02fb20b3655625cf014adccd85e4320e16",
33
- "skills/skill-update-loop/skill.md": "d3514386d1fa04d21998991a0681c8dc154867f3ebe24a85131d526264ecd68c",
34
- "skills/security-maturity-tiers/skill.md": "376e104f8a3f8aa2951825aa90de1acc2282ccc87a87615610277bffd1239db1",
33
+ "skills/skill-update-loop/skill.md": "fbcc0786ebbc2d2735944269f82ded10affd9f4efa29c2f6cdc4c283024837de",
34
+ "skills/security-maturity-tiers/skill.md": "7b8c0b3d5924b57a1bf6bb61faf23a0869ed034dcfcdf1b5fcb5566dac87ee6e",
35
35
  "skills/researcher/skill.md": "9f1211d177c64e4c465407a45ad9e2901c5c6c0af410a0d0a51cc8fb780420d4",
36
- "skills/attack-surface-pentest/skill.md": "014863752eee05b8538aa8401511295c37df94fdb2936828ef37b66ed5388b11",
37
- "skills/fuzz-testing-strategy/skill.md": "636a2d1d5846ecad3d75c48425d85b8a463fa68eca98858d5d96aca205905c4f",
38
- "skills/dlp-gap-analysis/skill.md": "85f4025b41ab0ad6560155842b04a400c0f1a34bf89164f2d2bf4df05753c2dc",
39
- "skills/supply-chain-integrity/skill.md": "b1fa90145a886e2943d89fc588fae6dccac2fec21a5068fd5b009a0e8b0efe8c",
36
+ "skills/attack-surface-pentest/skill.md": "5b1f96ae23825c0a1eb77d2ede29143308b7219e10f99c5b657fb6f788fad3b8",
37
+ "skills/fuzz-testing-strategy/skill.md": "632b4004ae953fbea3ede136557dc044395ea8aa7b49b220e7d1e5d0c5cb676f",
38
+ "skills/dlp-gap-analysis/skill.md": "485a628c5153a579e771077c79c7ddd647a2fba98dbe2b048ca98d0f8d54007f",
39
+ "skills/supply-chain-integrity/skill.md": "3a6ae83729b9e8967740aa9ccb3951e474471424225f8d15815d68f36801b6ea",
40
40
  "skills/defensive-countermeasure-mapping/skill.md": "48f140a265a96cd8c2d065f63a351ad02bbcbca5f75a686f3e8094e93f2d0383",
41
41
  "skills/identity-assurance/skill.md": "86649aa573bde5b2ef2456a77d2fbfa9d1b623a4ef1326dd7a7ab384d0419307",
42
- "skills/ot-ics-security/skill.md": "80aa5a27ba31e57a80eb6d6fb8c8319a17e036ab341fc203515619b334449ab4",
43
- "skills/coordinated-vuln-disclosure/skill.md": "8b752a1c7cafcb414ed32ef573ec62542e1e55872aa51157e86289deb0acb3f9",
44
- "skills/threat-modeling-methodology/skill.md": "b67ce043e018df5079a7d7d5708687a63af177ea915aff52baaee1aa7b19e606",
45
- "skills/webapp-security/skill.md": "d9817acfc1b52025857303d2839e2d9b4e87ee963c7ab9ffdc356d938eed0c72",
42
+ "skills/ot-ics-security/skill.md": "1424e2468f630f43e98deb711c5fe00e696963bf4c7432cd23f4d33776354131",
43
+ "skills/coordinated-vuln-disclosure/skill.md": "85c83345ea12b84370c33d17a69b3923c437461c9056200bf48ac5a07c530c91",
44
+ "skills/threat-modeling-methodology/skill.md": "5bc17057a36c6d57dfb7a89eeffd0115255505e24731e992a6eaaa7ada241b7f",
45
+ "skills/webapp-security/skill.md": "1f51b893bd52819763d9a15cc8245a64c48a25e99243c6bff602ea56a3a0f7e4",
46
46
  "skills/ai-risk-management/skill.md": "3e116dc6f03f31e32f1ee885516d72d9c11d3ff67d2184108b13dcbdf5f417bf",
47
- "skills/sector-healthcare/skill.md": "c8fecc8d7e0d3d88c3134bf9be3e4a9bf3e192b8307d393894bf1dee577ace25",
48
- "skills/sector-financial/skill.md": "364839b2ed70e09bbce1db387633c6235422959758f73150d58e5ae728adf21c",
49
- "skills/sector-federal-government/skill.md": "35ac67e9c67802b71576b723538704222426781f1feab48e08126c5f71db061a",
50
- "skills/sector-energy/skill.md": "8c20e93e687fb41b5880d6f270a26915ecc8efa4b65797f728363dd59d7374fc",
47
+ "skills/sector-healthcare/skill.md": "c3648a045d7caf584f7183f3b1171eb6056c5655446d84c143068ed2a5c08e1d",
48
+ "skills/sector-financial/skill.md": "8ed139656416b59fae9d04d077c3381bbf8d39d41b102d23e83ce012f317d54d",
49
+ "skills/sector-federal-government/skill.md": "f62fde3f38da53f11bc342ce7d5ed0aa08f989d39f6a737a82748ae7866cc77e",
50
+ "skills/sector-energy/skill.md": "52eaf78e2adbd082f3f5507d1cc304e36b48e435284b4277953853fcae93e7bc",
51
51
  "skills/sector-telecom/skill.md": "4b80771e78a474e3f43227ecc730ddda1684bff98d7e6e53f5ec373e1e886f34",
52
- "skills/api-security/skill.md": "9cd5bc4b6ae46afade496b0772d013a302a4a6858414dd757f317c1f9c84942d",
53
- "skills/cloud-security/skill.md": "128323a2bae6a70e9e8fc31f7bf207688542da7d7f0355fbe72bd6db7dc73768",
54
- "skills/container-runtime-security/skill.md": "6d9f3c04e4ae7323d41f66d563d96bbdef2c301459b2bf9d4828a5dbae9ef021",
55
- "skills/mlops-security/skill.md": "af4e563f7da7b98c75d56556ec7d1f9bba8f204c586ebd981562c5e3526dbed8",
56
- "skills/incident-response-playbook/skill.md": "20e4f0463aea6b1968f1cafb5b682ecdab3b7f38c16c9e051ce9514f50c42faf",
57
- "skills/ransomware-response/skill.md": "d2f84694fdfa5fc21a5e959dcc8b4458d595715cb240642f30638ceb3d00c100",
52
+ "skills/api-security/skill.md": "ad548f992000bb8192ec1e9f2d022969cd0159af8d4d3ab1ed43df03d6d9a391",
53
+ "skills/cloud-security/skill.md": "70840280d14c8b01c16c05757774da6cfe97e85ec6f18948e4081a3e1d784880",
54
+ "skills/container-runtime-security/skill.md": "39b3944f2a02987fcfdc08c5e710552097937098b5e89799932f43ea1765c321",
55
+ "skills/mlops-security/skill.md": "b004014c10181571db4fe8b2bb329ebf82d209eb5b1b020fd5d5e32b1b593ee9",
56
+ "skills/incident-response-playbook/skill.md": "306c8a34c2d57792bf892c2e0f611944f4622f81b5c7aeb048614887c5e29a62",
57
+ "skills/ransomware-response/skill.md": "932ab8b0958f9bdcbb0b0430bd88ab8005398b43417bcdac715141a9ad85b63c",
58
58
  "skills/email-security-anti-phishing/skill.md": "0965eca982e8fc633b85e70c0ba6becb8c0f5ee7bdd0be96ad73a9a222bb8816",
59
- "skills/age-gates-child-safety/skill.md": "2cae96ba7cfde40b98016b8a9bc5450d79c6218cabb7165625cfaf3f5fd06f2e",
59
+ "skills/age-gates-child-safety/skill.md": "d299a1bb4374343a9e0c066f4579df0ba89d86fc74b1b622219c57b4b17050da",
60
60
  "skills/cloud-iam-incident/skill.md": "6aab2e400d1e87df7ac2b6f0a17dac6aa99723b217258c4a7b446703d1521775",
61
61
  "skills/idp-incident-response/skill.md": "cb2f2c5b90de4592bfd66dcd55f9bf2004f370746d519cad577fcbaf36125878",
62
62
  "skills/vc-wallet-trust/skill.md": "802dada75d934c9ab322246f650eb2eac9e2f72c1f094b0cebcfa605b56108a5",
@@ -101,13 +101,13 @@
101
101
  "dlp_refs": 0
102
102
  },
103
103
  "trigger_table_entries": 688,
104
- "chains_cve_entries": 486,
105
- "chains_cwe_entries": 189,
104
+ "chains_cve_entries": 606,
105
+ "chains_cwe_entries": 199,
106
106
  "jurisdictions_indexed": 34,
107
107
  "handoff_dag_nodes": 51,
108
108
  "summary_cards": 51,
109
109
  "section_offsets_skills": 51,
110
- "token_budget_total_approx": 435989,
110
+ "token_budget_total_approx": 436045,
111
111
  "recipes": 8,
112
112
  "jurisdiction_clocks": 29,
113
113
  "did_ladders": 8,
@@ -5,12 +5,36 @@
5
5
  "event_count": 63
6
6
  },
7
7
  "events": [
8
+ {
9
+ "date": "2026-07-03",
10
+ "type": "catalog_update",
11
+ "artifact": "data/atlas-ttps.json",
12
+ "path": "data/atlas-ttps.json",
13
+ "schema_version": "1.0.0",
14
+ "entry_count": 170
15
+ },
16
+ {
17
+ "date": "2026-07-03",
18
+ "type": "catalog_update",
19
+ "artifact": "data/cwe-catalog.json",
20
+ "path": "data/cwe-catalog.json",
21
+ "schema_version": "1.0.0",
22
+ "entry_count": 199
23
+ },
24
+ {
25
+ "date": "2026-07-03",
26
+ "type": "catalog_update",
27
+ "artifact": "data/zeroday-lessons.json",
28
+ "path": "data/zeroday-lessons.json",
29
+ "schema_version": "1.1.0",
30
+ "entry_count": 619
31
+ },
8
32
  {
9
33
  "date": "2026-06-10",
10
34
  "type": "skill_review",
11
35
  "artifact": "ai-attack-surface",
12
36
  "path": "skills/ai-attack-surface/skill.md",
13
- "note": "Comprehensive AI/ML attack surface assessment mapped to MITRE ATLAS v2026.05 with explicit framework gap flags"
37
+ "note": "Comprehensive AI/ML attack surface assessment mapped to MITRE ATLAS v2026.06 with explicit framework gap flags"
14
38
  },
15
39
  {
16
40
  "date": "2026-06-10",
@@ -229,14 +253,6 @@
229
253
  "path": "skills/age-gates-child-safety/skill.md",
230
254
  "note": "Age-related gates and child online safety for mid-2026 — COPPA + CIPA + California AADC + GDPR Art. 8 + DSA Art. 28 + UK Online Safety Act + UK Children's Code + AU Online Safety Act + IN DPDPA child provisions + KOSA pending; age verification standards (IEEE 2089-2021, OpenID Connect age claims); AI product age policies"
231
255
  },
232
- {
233
- "date": "2026-06-10",
234
- "type": "catalog_update",
235
- "artifact": "data/atlas-ttps.json",
236
- "path": "data/atlas-ttps.json",
237
- "schema_version": "1.0.0",
238
- "entry_count": 170
239
- },
240
256
  {
241
257
  "date": "2026-06-10",
242
258
  "type": "catalog_update",
@@ -314,23 +330,7 @@
314
330
  "artifact": "data/cve-catalog.json",
315
331
  "path": "data/cve-catalog.json",
316
332
  "schema_version": "1.0.0",
317
- "entry_count": 499
318
- },
319
- {
320
- "date": "2026-06-01",
321
- "type": "catalog_update",
322
- "artifact": "data/cwe-catalog.json",
323
- "path": "data/cwe-catalog.json",
324
- "schema_version": "1.0.0",
325
- "entry_count": 189
326
- },
327
- {
328
- "date": "2026-06-01",
329
- "type": "catalog_update",
330
- "artifact": "data/zeroday-lessons.json",
331
- "path": "data/zeroday-lessons.json",
332
- "schema_version": "1.1.0",
333
- "entry_count": 499
333
+ "entry_count": 619
334
334
  },
335
335
  {
336
336
  "date": "2026-05-27",
@@ -7,9 +7,9 @@
7
7
  "catalogs": {
8
8
  "atlas-ttps.json": {
9
9
  "path": "data/atlas-ttps.json",
10
- "purpose": "MITRE ATLAS TTPs (AML.T0xxx) cited by skills, with tactic, name, description. Pinned to ATLAS v2026.05 (May 2026).",
10
+ "purpose": "MITRE ATLAS TTPs (AML.T0xxx) cited by skills, with tactic, name, description. Pinned to ATLAS v2026.06 (May 2026).",
11
11
  "schema_version": "1.0.0",
12
- "last_updated": "2026-06-10",
12
+ "last_updated": "2026-07-03",
13
13
  "tlp": "CLEAR",
14
14
  "source_confidence_default": "A1",
15
15
  "freshness_policy": {
@@ -62,20 +62,20 @@
62
62
  "rebuild_after_days": 365,
63
63
  "note": "Per-entry last_verified governs decay. Skills depending on this catalog must check entry freshness before high-stakes use."
64
64
  },
65
- "entry_count": 499,
65
+ "entry_count": 619,
66
66
  "sample_keys": [
67
- "CVE-2022-23812",
68
- "MAL-2026-TRAPDOOR-CROSS-ECOSYSTEM",
69
- "MAL-2026-MOIKA-DEPCONFUSION",
70
- "CVE-2025-0282",
71
- "CVE-2025-22457"
67
+ "CVE-2026-56291",
68
+ "CVE-2026-48939",
69
+ "CVE-2026-56290",
70
+ "CVE-2026-55255",
71
+ "CVE-2026-48908"
72
72
  ]
73
73
  },
74
74
  "cwe-catalog.json": {
75
75
  "path": "data/cwe-catalog.json",
76
76
  "purpose": "MITRE CWE entries used by the project (subset with skill citations), with severity hint and category. Pinned to a CWE catalog version.",
77
77
  "schema_version": "1.0.0",
78
- "last_updated": "2026-06-01",
78
+ "last_updated": "2026-07-03",
79
79
  "tlp": "CLEAR",
80
80
  "source_confidence_default": "A1",
81
81
  "freshness_policy": {
@@ -84,7 +84,7 @@
84
84
  "rebuild_after_days": 365,
85
85
  "note": "Per-entry last_verified governs decay. Skills depending on this catalog must check entry freshness before high-stakes use."
86
86
  },
87
- "entry_count": 189,
87
+ "entry_count": 199,
88
88
  "sample_keys": [
89
89
  "CWE-20",
90
90
  "CWE-22",
@@ -229,7 +229,7 @@
229
229
  "path": "data/zeroday-lessons.json",
230
230
  "purpose": "Distilled lessons from notable zero-days and campaigns (SesameOp, Copy Fail, Dirty Frag, Copilot RCE, Windsurf MCP). Each entry: technique, distinguishing characteristic, what it means for the framework lag.",
231
231
  "schema_version": "1.1.0",
232
- "last_updated": "2026-06-01",
232
+ "last_updated": "2026-07-03",
233
233
  "tlp": "CLEAR",
234
234
  "source_confidence_default": "B2",
235
235
  "freshness_policy": {
@@ -238,7 +238,7 @@
238
238
  "rebuild_after_days": 365,
239
239
  "note": "Per-entry last_verified governs decay. Skills depending on this catalog must check entry freshness before high-stakes use."
240
240
  },
241
- "entry_count": 499,
241
+ "entry_count": 619,
242
242
  "sample_keys": [
243
243
  "CVE-2026-31431",
244
244
  "CVE-2025-53773",