@blamejs/exceptd-skills 0.9.1
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.
- package/AGENTS.md +232 -0
- package/ARCHITECTURE.md +267 -0
- package/CHANGELOG.md +616 -0
- package/CONTEXT.md +203 -0
- package/LICENSE +200 -0
- package/NOTICE +82 -0
- package/README.md +307 -0
- package/SECURITY.md +73 -0
- package/agents/README.md +81 -0
- package/agents/report-generator.md +156 -0
- package/agents/skill-updater.md +102 -0
- package/agents/source-validator.md +119 -0
- package/agents/threat-researcher.md +149 -0
- package/bin/exceptd.js +183 -0
- package/data/_indexes/_meta.json +88 -0
- package/data/_indexes/activity-feed.json +362 -0
- package/data/_indexes/catalog-summaries.json +229 -0
- package/data/_indexes/chains.json +7135 -0
- package/data/_indexes/currency.json +359 -0
- package/data/_indexes/did-ladders.json +451 -0
- package/data/_indexes/frequency.json +2072 -0
- package/data/_indexes/handoff-dag.json +476 -0
- package/data/_indexes/jurisdiction-clocks.json +967 -0
- package/data/_indexes/jurisdiction-map.json +536 -0
- package/data/_indexes/recipes.json +319 -0
- package/data/_indexes/section-offsets.json +3656 -0
- package/data/_indexes/stale-content.json +14 -0
- package/data/_indexes/summary-cards.json +1736 -0
- package/data/_indexes/theater-fingerprints.json +381 -0
- package/data/_indexes/token-budget.json +2137 -0
- package/data/_indexes/trigger-table.json +1374 -0
- package/data/_indexes/xref.json +818 -0
- package/data/atlas-ttps.json +282 -0
- package/data/cve-catalog.json +496 -0
- package/data/cwe-catalog.json +1017 -0
- package/data/d3fend-catalog.json +738 -0
- package/data/dlp-controls.json +1039 -0
- package/data/exploit-availability.json +67 -0
- package/data/framework-control-gaps.json +1255 -0
- package/data/global-frameworks.json +2913 -0
- package/data/rfc-references.json +324 -0
- package/data/zeroday-lessons.json +377 -0
- package/keys/public.pem +3 -0
- package/lib/framework-gap.js +328 -0
- package/lib/job-queue.js +195 -0
- package/lib/lint-skills.js +536 -0
- package/lib/prefetch.js +372 -0
- package/lib/refresh-external.js +713 -0
- package/lib/schemas/cve-catalog.schema.json +151 -0
- package/lib/schemas/manifest.schema.json +106 -0
- package/lib/schemas/skill-frontmatter.schema.json +113 -0
- package/lib/scoring.js +149 -0
- package/lib/sign.js +197 -0
- package/lib/ttp-mapper.js +80 -0
- package/lib/validate-catalog-meta.js +198 -0
- package/lib/validate-cve-catalog.js +213 -0
- package/lib/validate-indexes.js +83 -0
- package/lib/validate-package.js +162 -0
- package/lib/validate-vendor.js +85 -0
- package/lib/verify.js +216 -0
- package/lib/worker-pool.js +84 -0
- package/manifest-snapshot.json +1833 -0
- package/manifest.json +2108 -0
- package/orchestrator/README.md +124 -0
- package/orchestrator/dispatcher.js +140 -0
- package/orchestrator/event-bus.js +146 -0
- package/orchestrator/index.js +874 -0
- package/orchestrator/pipeline.js +201 -0
- package/orchestrator/scanner.js +327 -0
- package/orchestrator/scheduler.js +137 -0
- package/package.json +113 -0
- package/sbom.cdx.json +158 -0
- package/scripts/audit-cross-skill.js +261 -0
- package/scripts/audit-perf.js +160 -0
- package/scripts/bootstrap.js +205 -0
- package/scripts/build-indexes.js +721 -0
- package/scripts/builders/activity-feed.js +79 -0
- package/scripts/builders/catalog-summaries.js +67 -0
- package/scripts/builders/currency.js +109 -0
- package/scripts/builders/cwe-chains.js +105 -0
- package/scripts/builders/did-ladders.js +149 -0
- package/scripts/builders/frequency.js +89 -0
- package/scripts/builders/jurisdiction-clocks.js +126 -0
- package/scripts/builders/recipes.js +159 -0
- package/scripts/builders/section-offsets.js +162 -0
- package/scripts/builders/stale-content.js +171 -0
- package/scripts/builders/summary-cards.js +166 -0
- package/scripts/builders/theater-fingerprints.js +198 -0
- package/scripts/builders/token-budget.js +96 -0
- package/scripts/check-manifest-snapshot.js +217 -0
- package/scripts/predeploy.js +267 -0
- package/scripts/refresh-manifest-snapshot.js +57 -0
- package/scripts/refresh-sbom.js +222 -0
- package/skills/age-gates-child-safety/skill.md +456 -0
- package/skills/ai-attack-surface/skill.md +282 -0
- package/skills/ai-c2-detection/skill.md +440 -0
- package/skills/ai-risk-management/skill.md +311 -0
- package/skills/api-security/skill.md +287 -0
- package/skills/attack-surface-pentest/skill.md +381 -0
- package/skills/cloud-security/skill.md +384 -0
- package/skills/compliance-theater/skill.md +365 -0
- package/skills/container-runtime-security/skill.md +379 -0
- package/skills/coordinated-vuln-disclosure/skill.md +473 -0
- package/skills/defensive-countermeasure-mapping/skill.md +300 -0
- package/skills/dlp-gap-analysis/skill.md +337 -0
- package/skills/email-security-anti-phishing/skill.md +206 -0
- package/skills/exploit-scoring/skill.md +331 -0
- package/skills/framework-gap-analysis/skill.md +374 -0
- package/skills/fuzz-testing-strategy/skill.md +313 -0
- package/skills/global-grc/skill.md +564 -0
- package/skills/identity-assurance/skill.md +272 -0
- package/skills/incident-response-playbook/skill.md +546 -0
- package/skills/kernel-lpe-triage/skill.md +303 -0
- package/skills/mcp-agent-trust/skill.md +326 -0
- package/skills/mlops-security/skill.md +325 -0
- package/skills/ot-ics-security/skill.md +340 -0
- package/skills/policy-exception-gen/skill.md +437 -0
- package/skills/pqc-first/skill.md +546 -0
- package/skills/rag-pipeline-security/skill.md +294 -0
- package/skills/researcher/skill.md +310 -0
- package/skills/sector-energy/skill.md +409 -0
- package/skills/sector-federal-government/skill.md +302 -0
- package/skills/sector-financial/skill.md +398 -0
- package/skills/sector-healthcare/skill.md +373 -0
- package/skills/security-maturity-tiers/skill.md +464 -0
- package/skills/skill-update-loop/skill.md +463 -0
- package/skills/supply-chain-integrity/skill.md +318 -0
- package/skills/threat-model-currency/skill.md +404 -0
- package/skills/threat-modeling-methodology/skill.md +312 -0
- package/skills/webapp-security/skill.md +281 -0
- package/skills/zeroday-gap-learn/skill.md +350 -0
- package/vendor/blamejs/LICENSE +201 -0
- package/vendor/blamejs/README.md +54 -0
- package/vendor/blamejs/_PROVENANCE.json +54 -0
- package/vendor/blamejs/retry.js +335 -0
- package/vendor/blamejs/worker-pool.js +418 -0
|
@@ -0,0 +1,738 @@
|
|
|
1
|
+
{
|
|
2
|
+
"_meta": {
|
|
3
|
+
"schema_version": "1.0.0",
|
|
4
|
+
"last_updated": "2026-05-11",
|
|
5
|
+
"d3fend_version": "1.0.0",
|
|
6
|
+
"d3fend_release_date": "2024-06-01",
|
|
7
|
+
"source": "https://d3fend.mitre.org",
|
|
8
|
+
"skill_refs_field": "d3fend_refs",
|
|
9
|
+
"complement_to": "atlas-ttps.json (offensive); D3FEND covers defensive countermeasures",
|
|
10
|
+
"root_tactics": [
|
|
11
|
+
"Model",
|
|
12
|
+
"Harden",
|
|
13
|
+
"Detect",
|
|
14
|
+
"Isolate",
|
|
15
|
+
"Deceive",
|
|
16
|
+
"Evict",
|
|
17
|
+
"Restore"
|
|
18
|
+
],
|
|
19
|
+
"note": "Curated subset of D3FEND 1.0 techniques mapped to the offensive coverage in atlas-ttps.json and cve-catalog.json. Per AGENTS.md rule #10, only D3FEND IDs verified against the canonical ontology are included; uncertain IDs were omitted rather than fabricated. Per rule #9, every entry declares ai_pipeline_applicability — defenses architecturally impossible in ephemeral/serverless/AI pipeline contexts state an explicit alternative. Per rule #2 (framework lag), lag_notes capture the delta between framework-prescribed control behavior and the D3FEND-defined defensive behavior.",
|
|
20
|
+
"tlp": "CLEAR",
|
|
21
|
+
"source_confidence": {
|
|
22
|
+
"scheme": "Admiralty (A-F + 1-6)",
|
|
23
|
+
"default": "A1",
|
|
24
|
+
"note": "B = usually reliable; 2 = probably true. Per-entry overrides via entry-level source_confidence field. Public-record catalogs (NVD, ATLAS, CWE, RFC, framework publishers) get A1 (completely reliable, confirmed). Project-curated catalogs (zeroday-lessons, exploit-availability) default to B2 with source citations."
|
|
25
|
+
},
|
|
26
|
+
"freshness_policy": {
|
|
27
|
+
"default_review_cadence_days": 90,
|
|
28
|
+
"stale_after_days": 180,
|
|
29
|
+
"rebuild_after_days": 365,
|
|
30
|
+
"note": "Per-entry last_verified governs decay. Skills depending on this catalog must check entry freshness before high-stakes use."
|
|
31
|
+
}
|
|
32
|
+
},
|
|
33
|
+
"D3-EAL": {
|
|
34
|
+
"id": "D3-EAL",
|
|
35
|
+
"name": "Executable Allowlisting",
|
|
36
|
+
"tactic": "Harden",
|
|
37
|
+
"subtactic": "Application Hardening",
|
|
38
|
+
"description": "Using a digital signature or other artifact-identifying property to restrict process execution to a pre-approved set of executables, blocking arbitrary binaries from running regardless of file path or user privilege.",
|
|
39
|
+
"counters_attack_techniques": [
|
|
40
|
+
"T1068",
|
|
41
|
+
"T1059",
|
|
42
|
+
"T1204",
|
|
43
|
+
"AML.T0010",
|
|
44
|
+
"AML.T0010.003"
|
|
45
|
+
],
|
|
46
|
+
"digital_artifacts_addressed": [
|
|
47
|
+
"Process",
|
|
48
|
+
"Executable Binary",
|
|
49
|
+
"Executable Script"
|
|
50
|
+
],
|
|
51
|
+
"skills_referencing": [
|
|
52
|
+
"kernel-lpe-triage",
|
|
53
|
+
"mcp-agent-trust"
|
|
54
|
+
],
|
|
55
|
+
"implementation_examples": [
|
|
56
|
+
"AppLocker (Windows)",
|
|
57
|
+
"Windows Defender Application Control (WDAC)",
|
|
58
|
+
"fapolicyd (Linux)",
|
|
59
|
+
"SELinux/AppArmor application profiles",
|
|
60
|
+
"Santa (macOS)"
|
|
61
|
+
],
|
|
62
|
+
"framework_controls_partially_mapped": [
|
|
63
|
+
"NIST-800-53-CM-7(1)",
|
|
64
|
+
"NIST-800-53-CM-7(2)",
|
|
65
|
+
"NIST-800-53-CM-8(3)",
|
|
66
|
+
"ISO-27001-2022-A.8.19",
|
|
67
|
+
"PCI-DSS-v4-2.2.4"
|
|
68
|
+
],
|
|
69
|
+
"ai_pipeline_applicability": "Partially applicable. In serverless and ephemeral container runtimes the OS-level allowlister cannot be installed; equivalent control is achieved by signed-image policy at the registry admission controller (Sigstore/cosign verification, Kyverno/OPA Gatekeeper image-signature rules) plus immutable rootfs. For MCP server runtimes the equivalent is binary-hash pinning per D3-EHB.",
|
|
70
|
+
"lag_notes": "NIST CM-7(1) prescribes 'least functionality' and CM-7(2) 'authorized software' but does not require cryptographic verification; many auditors accept inventory-only implementations. D3-EAL requires the runtime to actively block non-listed binaries — a behavior gap that paper-compliant CM-7 implementations routinely fail.",
|
|
71
|
+
"last_verified": "2026-05-11"
|
|
72
|
+
},
|
|
73
|
+
"D3-EHB": {
|
|
74
|
+
"id": "D3-EHB",
|
|
75
|
+
"name": "Executable Hashbased Allowlist",
|
|
76
|
+
"tactic": "Harden",
|
|
77
|
+
"subtactic": "Application Hardening",
|
|
78
|
+
"description": "Restricting execution to binaries whose cryptographic hash matches a pre-approved allowlist entry, providing stronger identity guarantees than path- or signer-based allowlisting because hashes change on any binary modification.",
|
|
79
|
+
"counters_attack_techniques": [
|
|
80
|
+
"T1195.001",
|
|
81
|
+
"T1195.002",
|
|
82
|
+
"AML.T0010",
|
|
83
|
+
"AML.T0010.001",
|
|
84
|
+
"AML.T0010.002",
|
|
85
|
+
"AML.T0010.003"
|
|
86
|
+
],
|
|
87
|
+
"digital_artifacts_addressed": [
|
|
88
|
+
"Executable Binary",
|
|
89
|
+
"File Hash"
|
|
90
|
+
],
|
|
91
|
+
"skills_referencing": [
|
|
92
|
+
"mcp-agent-trust",
|
|
93
|
+
"kernel-lpe-triage"
|
|
94
|
+
],
|
|
95
|
+
"implementation_examples": [
|
|
96
|
+
"WDAC hash rules",
|
|
97
|
+
"fapolicyd hash trust database",
|
|
98
|
+
"MCP server binary hash pinning in client config",
|
|
99
|
+
"in-toto / SLSA Level 3 attestation for ML model and tool binaries"
|
|
100
|
+
],
|
|
101
|
+
"framework_controls_partially_mapped": [
|
|
102
|
+
"NIST-800-53-SA-12",
|
|
103
|
+
"NIST-800-53-CM-7(5)",
|
|
104
|
+
"ISO-27001-2022-A.8.30",
|
|
105
|
+
"SOC2-CC9.2"
|
|
106
|
+
],
|
|
107
|
+
"ai_pipeline_applicability": "Highly applicable to AI pipelines — directly addresses HuggingFace typosquat, malicious model weight files, and MCP server supply chain compromise (CVE-2026-30615 class). For ephemeral inference containers the hash check moves from runtime to admission control (registry signature plus model weight SHA-256 verification at load time).",
|
|
108
|
+
"lag_notes": "SA-12 supply-chain controls do not specify cryptographic hash verification at load time, and no framework yet requires hash pinning of pretrained model weights or MCP server binaries. Auditors accept SBOM presence as SA-12 evidence; D3-EHB requires the runtime to actively reject unpinned binaries, which most SBOM programs do not implement.",
|
|
109
|
+
"last_verified": "2026-05-11"
|
|
110
|
+
},
|
|
111
|
+
"D3-PSEP": {
|
|
112
|
+
"id": "D3-PSEP",
|
|
113
|
+
"name": "Process Segment Execution Prevention",
|
|
114
|
+
"tactic": "Harden",
|
|
115
|
+
"subtactic": "Platform Hardening",
|
|
116
|
+
"description": "Marking memory regions as non-executable so injected shellcode or data written to data segments cannot be executed by the CPU. Implemented as DEP / NX bit on x86_64 and PXN/UXN on ARM.",
|
|
117
|
+
"counters_attack_techniques": [
|
|
118
|
+
"T1068",
|
|
119
|
+
"T1055",
|
|
120
|
+
"T1203"
|
|
121
|
+
],
|
|
122
|
+
"digital_artifacts_addressed": [
|
|
123
|
+
"Process Memory",
|
|
124
|
+
"Process Segment"
|
|
125
|
+
],
|
|
126
|
+
"skills_referencing": [
|
|
127
|
+
"kernel-lpe-triage"
|
|
128
|
+
],
|
|
129
|
+
"implementation_examples": [
|
|
130
|
+
"NX bit (x86_64)",
|
|
131
|
+
"PXN/UXN (ARM64)",
|
|
132
|
+
"W^X memory mappings (OpenBSD, hardened Linux)",
|
|
133
|
+
"SMEP / SMAP (kernel-mode counterpart)"
|
|
134
|
+
],
|
|
135
|
+
"framework_controls_partially_mapped": [
|
|
136
|
+
"NIST-800-53-SI-16",
|
|
137
|
+
"ISO-27001-2022-A.8.9"
|
|
138
|
+
],
|
|
139
|
+
"ai_pipeline_applicability": "Inherited from the underlying kernel; container and serverless workloads receive DEP/NX automatically. Not a workload-configurable control in ephemeral environments — verify only that the host kernel has SMEP/SMAP enabled and that JIT runtimes (Python ML stacks with native extensions) do not disable W^X for performance.",
|
|
140
|
+
"lag_notes": "SI-16 (memory protection) is present in nearly all compliance baselines but never specifies SMEP/SMAP/PXN enforcement at the kernel level. For Copy Fail class LPEs (CVE-2026-49105) DEP is a prerequisite, not a sufficient defense — the exploit operates inside the kernel's executable mapping where SMEP/SMAP applies but is bypassable via the underlying class flaw.",
|
|
141
|
+
"last_verified": "2026-05-11"
|
|
142
|
+
},
|
|
143
|
+
"D3-ASLR": {
|
|
144
|
+
"id": "D3-ASLR",
|
|
145
|
+
"name": "Address Space Layout Randomization",
|
|
146
|
+
"tactic": "Harden",
|
|
147
|
+
"subtactic": "Platform Hardening",
|
|
148
|
+
"description": "Randomizing the base addresses of executable, stack, heap, and library memory regions to prevent attackers from reliably hard-coding addresses in exploit payloads.",
|
|
149
|
+
"counters_attack_techniques": [
|
|
150
|
+
"T1068",
|
|
151
|
+
"T1055",
|
|
152
|
+
"T1203"
|
|
153
|
+
],
|
|
154
|
+
"digital_artifacts_addressed": [
|
|
155
|
+
"Process Memory",
|
|
156
|
+
"Process Segment"
|
|
157
|
+
],
|
|
158
|
+
"skills_referencing": [
|
|
159
|
+
"kernel-lpe-triage"
|
|
160
|
+
],
|
|
161
|
+
"implementation_examples": [
|
|
162
|
+
"KASLR (Linux kernel)",
|
|
163
|
+
"Windows kernel ASLR",
|
|
164
|
+
"PIE binaries with full ASLR (Linux userland)",
|
|
165
|
+
"FG-KASLR (function-granular KASLR)"
|
|
166
|
+
],
|
|
167
|
+
"framework_controls_partially_mapped": [
|
|
168
|
+
"NIST-800-53-SI-16",
|
|
169
|
+
"ISO-27001-2022-A.8.9"
|
|
170
|
+
],
|
|
171
|
+
"ai_pipeline_applicability": "Inherited at host kernel level; not workload-configurable in containers or serverless. For confidential-compute AI pipelines (TEE-enclosed inference), ASLR is provided by the TEE runtime but with smaller entropy budgets — treat as defense-in-depth, not primary control.",
|
|
172
|
+
"lag_notes": "ASLR is universally assumed by SI-16 evidence but framework controls never specify the entropy budget required. Modern info-leak primitives (KASLR-defeating side channels, deterministic-allocator LPEs like Copy Fail) trivially bypass standard KASLR; lag is in framework's failure to require FG-KASLR or equivalent.",
|
|
173
|
+
"last_verified": "2026-05-11"
|
|
174
|
+
},
|
|
175
|
+
"D3-SCP": {
|
|
176
|
+
"id": "D3-SCP",
|
|
177
|
+
"name": "System Call Filtering",
|
|
178
|
+
"tactic": "Isolate",
|
|
179
|
+
"subtactic": "Execution Isolation",
|
|
180
|
+
"description": "Restricting the set of system calls a process can invoke, reducing the kernel attack surface available from a compromised userland process. Implemented as seccomp-bpf on Linux, syscall filters on Windows.",
|
|
181
|
+
"counters_attack_techniques": [
|
|
182
|
+
"T1068",
|
|
183
|
+
"T1611",
|
|
184
|
+
"T1059"
|
|
185
|
+
],
|
|
186
|
+
"digital_artifacts_addressed": [
|
|
187
|
+
"Process",
|
|
188
|
+
"System Call"
|
|
189
|
+
],
|
|
190
|
+
"skills_referencing": [
|
|
191
|
+
"kernel-lpe-triage",
|
|
192
|
+
"mcp-agent-trust"
|
|
193
|
+
],
|
|
194
|
+
"implementation_examples": [
|
|
195
|
+
"seccomp-bpf profiles (Docker default, gVisor)",
|
|
196
|
+
"Windows Process Mitigation Policy syscall filters",
|
|
197
|
+
"OpenBSD pledge(2) / unveil(2)",
|
|
198
|
+
"Kubernetes RuntimeDefault and Localhost seccomp profiles"
|
|
199
|
+
],
|
|
200
|
+
"framework_controls_partially_mapped": [
|
|
201
|
+
"NIST-800-53-SC-39",
|
|
202
|
+
"NIST-800-53-SI-10",
|
|
203
|
+
"ISO-27001-2022-A.8.20"
|
|
204
|
+
],
|
|
205
|
+
"ai_pipeline_applicability": "Directly applicable and recommended for AI inference workloads. Default seccomp profile blocks the syscall surface most kernel-LPE PoCs depend on (e.g., io_uring entry points for Copy Fail class). MCP server processes should run under a RuntimeDefault profile at minimum; tighter Localhost profiles recommended for code-execution MCP tools.",
|
|
206
|
+
"lag_notes": "No major framework requires seccomp profiles or equivalent syscall filtering. SC-39 (process isolation) is satisfied by namespaces alone in most audits, leaving the kernel surface fully exposed. Compliance theater: 'we use containers' is accepted as SC-39 evidence even when containers run with --privileged or no seccomp profile.",
|
|
207
|
+
"last_verified": "2026-05-11"
|
|
208
|
+
},
|
|
209
|
+
"D3-PHRA": {
|
|
210
|
+
"id": "D3-PHRA",
|
|
211
|
+
"name": "Process Hardware Resource Access",
|
|
212
|
+
"tactic": "Isolate",
|
|
213
|
+
"subtactic": "Execution Isolation",
|
|
214
|
+
"description": "Controlling and restricting the hardware resources (CPU features, devices, IOMMU mappings, performance counters) that a process can access, limiting both side-channel attacks and direct hardware abuse paths.",
|
|
215
|
+
"counters_attack_techniques": [
|
|
216
|
+
"T1068",
|
|
217
|
+
"T1212",
|
|
218
|
+
"T1614.001"
|
|
219
|
+
],
|
|
220
|
+
"digital_artifacts_addressed": [
|
|
221
|
+
"Process",
|
|
222
|
+
"Hardware Device",
|
|
223
|
+
"Hardware Performance Counter"
|
|
224
|
+
],
|
|
225
|
+
"skills_referencing": [
|
|
226
|
+
"kernel-lpe-triage"
|
|
227
|
+
],
|
|
228
|
+
"implementation_examples": [
|
|
229
|
+
"IOMMU groups and VT-d/AMD-Vi enforcement",
|
|
230
|
+
"cgroups v2 device controllers",
|
|
231
|
+
"GPU access scoping for ML workloads (NVIDIA MIG, MPS isolation)",
|
|
232
|
+
"perf_event_paranoid kernel parameter"
|
|
233
|
+
],
|
|
234
|
+
"framework_controls_partially_mapped": [
|
|
235
|
+
"NIST-800-53-SC-39",
|
|
236
|
+
"NIST-800-53-AC-6(10)",
|
|
237
|
+
"ISO-27001-2022-A.8.20"
|
|
238
|
+
],
|
|
239
|
+
"ai_pipeline_applicability": "Critical for multi-tenant GPU inference platforms — without MIG/MPS isolation a tenant can side-channel adjacent tenants' models. Standard container runtimes do not enforce GPU isolation by default. For confidential AI pipelines, IOMMU enforcement on accelerator passthrough is the equivalent control.",
|
|
240
|
+
"lag_notes": "No framework prescribes GPU or accelerator isolation requirements. SC-39 is interpreted as CPU-process isolation; the AI accelerator side-channel surface is invisible to compliance audits. NIST AI RMF MEASURE-2.7 mentions infrastructure security but does not require hardware-level tenant isolation.",
|
|
241
|
+
"last_verified": "2026-05-11"
|
|
242
|
+
},
|
|
243
|
+
"D3-MENCR": {
|
|
244
|
+
"id": "D3-MENCR",
|
|
245
|
+
"name": "Message Encryption",
|
|
246
|
+
"tactic": "Harden",
|
|
247
|
+
"subtactic": "Message Hardening",
|
|
248
|
+
"description": "Encrypting messages in transit between two parties to preserve confidentiality and, when authenticated encryption is used, integrity. Includes transport-layer (TLS) and application-layer (S/MIME, signed-and-encrypted JWT, MLS) approaches.",
|
|
249
|
+
"counters_attack_techniques": [
|
|
250
|
+
"T1040",
|
|
251
|
+
"T1557",
|
|
252
|
+
"T1565.002"
|
|
253
|
+
],
|
|
254
|
+
"digital_artifacts_addressed": [
|
|
255
|
+
"Network Traffic",
|
|
256
|
+
"Message"
|
|
257
|
+
],
|
|
258
|
+
"skills_referencing": [
|
|
259
|
+
"pqc-first",
|
|
260
|
+
"mcp-agent-trust"
|
|
261
|
+
],
|
|
262
|
+
"implementation_examples": [
|
|
263
|
+
"TLS 1.3 with hybrid X25519MLKEM768 key exchange (RFC 9794-class drafts)",
|
|
264
|
+
"MLS for group messaging",
|
|
265
|
+
"Signed and encrypted JWTs for service-to-service auth",
|
|
266
|
+
"S/MIME for email"
|
|
267
|
+
],
|
|
268
|
+
"framework_controls_partially_mapped": [
|
|
269
|
+
"NIST-800-53-SC-8",
|
|
270
|
+
"NIST-800-53-SC-13",
|
|
271
|
+
"ISO-27001-2022-A.8.24",
|
|
272
|
+
"PCI-DSS-v4-4.2.1"
|
|
273
|
+
],
|
|
274
|
+
"ai_pipeline_applicability": "Universally applicable; AI API traffic should use TLS 1.3 with PQC-hybrid key exchange per CNSA 2.0 timelines. Note: encrypted AI API traffic remains a covert C2 channel (AML.T0096) — D3-MENCR protects confidentiality but does not address content-layer abuse; pair with D3-CSPP and D3-NTA.",
|
|
275
|
+
"lag_notes": "SC-8 / SC-13 require 'approved cryptography' but neither NIST 800-53 Rev 5 nor ISO 27001:2022 yet mandates PQC migration. CNSA 2.0 sets a 2030-2033 NSS deadline; commercial frameworks have not adopted equivalent timelines. Hybrid KEM deployment (ML-KEM + X25519) is current best practice and exceeds compliance requirements at every major framework.",
|
|
276
|
+
"last_verified": "2026-05-11"
|
|
277
|
+
},
|
|
278
|
+
"D3-FE": {
|
|
279
|
+
"id": "D3-FE",
|
|
280
|
+
"name": "File Encryption",
|
|
281
|
+
"tactic": "Harden",
|
|
282
|
+
"subtactic": "Credential Hardening",
|
|
283
|
+
"description": "Encrypting files at rest so their contents cannot be read without the decryption key, protecting against offline attacks on stolen storage media or unauthorized filesystem access.",
|
|
284
|
+
"counters_attack_techniques": [
|
|
285
|
+
"T1005",
|
|
286
|
+
"T1083",
|
|
287
|
+
"T1565.001"
|
|
288
|
+
],
|
|
289
|
+
"digital_artifacts_addressed": [
|
|
290
|
+
"File",
|
|
291
|
+
"Encrypted File"
|
|
292
|
+
],
|
|
293
|
+
"skills_referencing": [
|
|
294
|
+
"pqc-first"
|
|
295
|
+
],
|
|
296
|
+
"implementation_examples": [
|
|
297
|
+
"LUKS / dm-crypt (Linux full-disk)",
|
|
298
|
+
"BitLocker (Windows)",
|
|
299
|
+
"FileVault (macOS)",
|
|
300
|
+
"age / rage (file-level)",
|
|
301
|
+
"envelope encryption with KMS-managed DEKs (AWS KMS, GCP KMS)"
|
|
302
|
+
],
|
|
303
|
+
"framework_controls_partially_mapped": [
|
|
304
|
+
"NIST-800-53-SC-28",
|
|
305
|
+
"ISO-27001-2022-A.8.24",
|
|
306
|
+
"PCI-DSS-v4-3.5.1"
|
|
307
|
+
],
|
|
308
|
+
"ai_pipeline_applicability": "Applies to model weight files, training datasets, and embedding stores at rest. For ephemeral inference workloads the practical control shifts to encrypted-at-rest object storage (S3 SSE-KMS) with the AI pipeline never persisting state locally. Note: harvest-now-decrypt-later means data encrypted today under RSA-2048 wrapping is exposed to post-2030 quantum decryption — pair with PQC roadmap.",
|
|
309
|
+
"lag_notes": "SC-28 is universally implemented but rarely specifies algorithm strength or post-quantum readiness. Compliance audits accept AES-256 at-rest as sufficient; D3-FE has no opinion on long-tail confidentiality requirements where HNDL adversaries are active.",
|
|
310
|
+
"last_verified": "2026-05-11"
|
|
311
|
+
},
|
|
312
|
+
"D3-CBAN": {
|
|
313
|
+
"id": "D3-CBAN",
|
|
314
|
+
"name": "Certificate-based Authentication",
|
|
315
|
+
"tactic": "Harden",
|
|
316
|
+
"subtactic": "Credential Hardening",
|
|
317
|
+
"description": "Authenticating a party using a digital certificate that binds an identity to a public key, where possession of the corresponding private key proves identity. Stronger than password authentication because secrets are not transmitted.",
|
|
318
|
+
"counters_attack_techniques": [
|
|
319
|
+
"T1078",
|
|
320
|
+
"T1110",
|
|
321
|
+
"T1556",
|
|
322
|
+
"T1606"
|
|
323
|
+
],
|
|
324
|
+
"digital_artifacts_addressed": [
|
|
325
|
+
"Certificate",
|
|
326
|
+
"Authentication Service"
|
|
327
|
+
],
|
|
328
|
+
"skills_referencing": [
|
|
329
|
+
"mcp-agent-trust",
|
|
330
|
+
"pqc-first"
|
|
331
|
+
],
|
|
332
|
+
"implementation_examples": [
|
|
333
|
+
"mTLS for service-to-service auth",
|
|
334
|
+
"SPIFFE / SPIRE workload identities",
|
|
335
|
+
"WebAuthn / FIDO2 hardware authenticators",
|
|
336
|
+
"client certificates for MCP server authentication"
|
|
337
|
+
],
|
|
338
|
+
"framework_controls_partially_mapped": [
|
|
339
|
+
"NIST-800-53-IA-2(11)",
|
|
340
|
+
"NIST-800-53-IA-5(2)",
|
|
341
|
+
"ISO-27001-2022-A.5.17",
|
|
342
|
+
"NIST-800-63B-AAL3"
|
|
343
|
+
],
|
|
344
|
+
"ai_pipeline_applicability": "Recommended for service-to-service AI infrastructure (model registry, inference gateway, MCP server-client). Workload identity via SPIFFE is the standard pattern for ephemeral AI workloads where long-lived secrets are not viable.",
|
|
345
|
+
"lag_notes": "IA-2 requires multi-factor but accepts SMS / TOTP as 'something you have' — both phishable. D3-CBAN with hardware-bound private keys (FIDO2, TPM-resident mTLS) is materially stronger but not required by any framework below AAL3 / PCI-MFA-CDE-only contexts. Certificate algorithm agility for PQC migration (ML-DSA, SLH-DSA) is not yet a compliance requirement.",
|
|
346
|
+
"last_verified": "2026-05-11"
|
|
347
|
+
},
|
|
348
|
+
"D3-MFA": {
|
|
349
|
+
"id": "D3-MFA",
|
|
350
|
+
"name": "Multi-factor Authentication",
|
|
351
|
+
"tactic": "Harden",
|
|
352
|
+
"subtactic": "Credential Hardening",
|
|
353
|
+
"description": "Requiring two or more distinct authentication factors (knowledge, possession, inherence) to verify identity, raising the cost of credential-based intrusion.",
|
|
354
|
+
"counters_attack_techniques": [
|
|
355
|
+
"T1078",
|
|
356
|
+
"T1110",
|
|
357
|
+
"T1078.004",
|
|
358
|
+
"T1621"
|
|
359
|
+
],
|
|
360
|
+
"digital_artifacts_addressed": [
|
|
361
|
+
"User Account",
|
|
362
|
+
"Authentication Service"
|
|
363
|
+
],
|
|
364
|
+
"skills_referencing": [
|
|
365
|
+
"mcp-agent-trust"
|
|
366
|
+
],
|
|
367
|
+
"implementation_examples": [
|
|
368
|
+
"FIDO2 / WebAuthn (phishing-resistant)",
|
|
369
|
+
"TOTP authenticator apps",
|
|
370
|
+
"Push-with-number-match (mitigates MFA fatigue)",
|
|
371
|
+
"Hardware security keys (YubiKey, Titan)"
|
|
372
|
+
],
|
|
373
|
+
"framework_controls_partially_mapped": [
|
|
374
|
+
"NIST-800-53-IA-2(1)",
|
|
375
|
+
"NIST-800-53-IA-2(2)",
|
|
376
|
+
"ISO-27001-2022-A.8.5",
|
|
377
|
+
"PCI-DSS-v4-8.4",
|
|
378
|
+
"NIST-800-63B-AAL2"
|
|
379
|
+
],
|
|
380
|
+
"ai_pipeline_applicability": "Applies to human access to AI control planes (model registry, fine-tuning consoles, MCP client configuration). Does not apply to machine-to-machine AI calls — use D3-CBAN there. Phishable MFA (SMS, basic push) is bypassed by AI-assisted phishing at industrial scale; FIDO2 is the only durable form.",
|
|
381
|
+
"lag_notes": "Every framework requires MFA but most accept any second factor as sufficient. CISA, NIST 800-63B-rev4, and OMB M-22-09 require phishing-resistant MFA for federal systems; most commercial frameworks (PCI, SOC 2) still accept SMS. The lag is in factor quality, not factor count.",
|
|
382
|
+
"last_verified": "2026-05-11"
|
|
383
|
+
},
|
|
384
|
+
"D3-CA": {
|
|
385
|
+
"id": "D3-CA",
|
|
386
|
+
"name": "Certificate Analysis",
|
|
387
|
+
"tactic": "Detect",
|
|
388
|
+
"subtactic": "Identifier Analysis",
|
|
389
|
+
"description": "Analyzing certificates observed in network traffic or installed on systems for indicators of malicious use: typosquatted CNs, anomalous issuers, short-lived certs to suspicious domains, or unexpected SANs.",
|
|
390
|
+
"counters_attack_techniques": [
|
|
391
|
+
"T1573",
|
|
392
|
+
"T1071.001",
|
|
393
|
+
"T1583.003",
|
|
394
|
+
"AML.T0096"
|
|
395
|
+
],
|
|
396
|
+
"digital_artifacts_addressed": [
|
|
397
|
+
"Certificate",
|
|
398
|
+
"Network Traffic"
|
|
399
|
+
],
|
|
400
|
+
"skills_referencing": [
|
|
401
|
+
"mcp-agent-trust",
|
|
402
|
+
"ai-c2-detection"
|
|
403
|
+
],
|
|
404
|
+
"implementation_examples": [
|
|
405
|
+
"Certificate Transparency log monitoring (Sigsum, CT Watch)",
|
|
406
|
+
"JA3/JA4 TLS fingerprinting",
|
|
407
|
+
"MCP server TLS certificate pinning and rotation audit",
|
|
408
|
+
"issuer reputation enrichment in SIEM"
|
|
409
|
+
],
|
|
410
|
+
"framework_controls_partially_mapped": [
|
|
411
|
+
"NIST-800-53-SI-4",
|
|
412
|
+
"NIST-800-53-SC-17",
|
|
413
|
+
"ISO-27001-2022-A.8.16"
|
|
414
|
+
],
|
|
415
|
+
"ai_pipeline_applicability": "Applicable to outbound AI API traffic and MCP server endpoints. For AI-API C2 detection (AML.T0096), certificate analysis alone is insufficient because legitimate AI provider certificates are used — pair with D3-CSPP and D3-NTA.",
|
|
416
|
+
"lag_notes": "SI-4 / SC-17 do not require Certificate Transparency monitoring or JA4 fingerprinting. Most SOCs do not enrich TLS connections with certificate metadata at all; lag is in operational implementation, not control text.",
|
|
417
|
+
"last_verified": "2026-05-11"
|
|
418
|
+
},
|
|
419
|
+
"D3-DA": {
|
|
420
|
+
"id": "D3-DA",
|
|
421
|
+
"name": "Domain Analysis",
|
|
422
|
+
"tactic": "Detect",
|
|
423
|
+
"subtactic": "Identifier Analysis",
|
|
424
|
+
"description": "Analyzing domain names observed in traffic or configurations for indicators of malicious activity: newly registered domains, DGA patterns, homoglyph or typosquat similarity to known-good domains, lookalike domains for AI providers.",
|
|
425
|
+
"counters_attack_techniques": [
|
|
426
|
+
"T1071",
|
|
427
|
+
"T1568.002",
|
|
428
|
+
"T1583.001",
|
|
429
|
+
"AML.T0010.002",
|
|
430
|
+
"AML.T0010.003"
|
|
431
|
+
],
|
|
432
|
+
"digital_artifacts_addressed": [
|
|
433
|
+
"Domain Name",
|
|
434
|
+
"DNS Query",
|
|
435
|
+
"Network Traffic"
|
|
436
|
+
],
|
|
437
|
+
"skills_referencing": [
|
|
438
|
+
"mcp-agent-trust",
|
|
439
|
+
"ai-c2-detection"
|
|
440
|
+
],
|
|
441
|
+
"implementation_examples": [
|
|
442
|
+
"Newly Observed Domain (NOD) blocking",
|
|
443
|
+
"DGA classifiers in DNS firewall",
|
|
444
|
+
"Lookalike-domain monitoring for AI provider hostnames (api.openai.com, claude.ai)",
|
|
445
|
+
"Passive DNS enrichment in SIEM"
|
|
446
|
+
],
|
|
447
|
+
"framework_controls_partially_mapped": [
|
|
448
|
+
"NIST-800-53-SC-7(8)",
|
|
449
|
+
"NIST-800-53-SI-4(4)",
|
|
450
|
+
"ISO-27001-2022-A.8.16"
|
|
451
|
+
],
|
|
452
|
+
"ai_pipeline_applicability": "Highly applicable to MCP supply chain attacks where typosquatted package or domain names install rogue MCP servers (CVE-2026-30615 vector). For AI-API C2, less effective because attackers use legitimate AI provider domains — domain analysis must combine with traffic content analysis (D3-CSPP).",
|
|
453
|
+
"lag_notes": "Compliance frameworks do not specify NOD blocking or DGA detection. SI-4(4) requires 'inbound and outbound communications traffic monitoring' but does not prescribe domain reputation enrichment. The lookalike-AI-domain detection class is novel and absent from all standard control sets.",
|
|
454
|
+
"last_verified": "2026-05-11"
|
|
455
|
+
},
|
|
456
|
+
"D3-NTA": {
|
|
457
|
+
"id": "D3-NTA",
|
|
458
|
+
"name": "Network Traffic Analysis",
|
|
459
|
+
"tactic": "Detect",
|
|
460
|
+
"subtactic": "Network Traffic Analysis",
|
|
461
|
+
"description": "Analyzing network traffic communication characteristics — volumes, timing, periodicity, packet sizes, entropy — to identify malicious activity that may be invisible to content inspection (e.g., encrypted C2 channels).",
|
|
462
|
+
"counters_attack_techniques": [
|
|
463
|
+
"T1071",
|
|
464
|
+
"T1573",
|
|
465
|
+
"T1041",
|
|
466
|
+
"T1095",
|
|
467
|
+
"AML.T0096"
|
|
468
|
+
],
|
|
469
|
+
"digital_artifacts_addressed": [
|
|
470
|
+
"Network Traffic",
|
|
471
|
+
"Network Flow"
|
|
472
|
+
],
|
|
473
|
+
"skills_referencing": [
|
|
474
|
+
"ai-c2-detection"
|
|
475
|
+
],
|
|
476
|
+
"implementation_examples": [
|
|
477
|
+
"Zeek / Suricata flow analysis",
|
|
478
|
+
"Encrypted traffic analysis via metadata (Cisco ETA, JA4)",
|
|
479
|
+
"AI-API beacon detection (periodicity + payload-size clustering)",
|
|
480
|
+
"Statistical entropy scoring on prompt payloads"
|
|
481
|
+
],
|
|
482
|
+
"framework_controls_partially_mapped": [
|
|
483
|
+
"NIST-800-53-SI-4",
|
|
484
|
+
"NIST-800-53-SC-7",
|
|
485
|
+
"ISO-27001-2022-A.8.16"
|
|
486
|
+
],
|
|
487
|
+
"ai_pipeline_applicability": "Primary control for AML.T0096 (AI-API C2). Because the AI provider endpoint is allowlisted by SC-7 in nearly all enterprises, the entire C2 lifecycle is inside the trust boundary; NTA on AI-API flows is the only practical detection. Requires per-process attribution — flow-only analysis at the network boundary cannot distinguish legitimate from malicious AI use.",
|
|
488
|
+
"lag_notes": "No framework requires NTA on AI-API traffic specifically. SI-4 is interpreted as IDS at the perimeter; AI-API egress is categorically allowed and unmonitored. SesameOp and PROMPTFLUX operate entirely within compliance-accepted egress patterns.",
|
|
489
|
+
"last_verified": "2026-05-11"
|
|
490
|
+
},
|
|
491
|
+
"D3-NTPM": {
|
|
492
|
+
"id": "D3-NTPM",
|
|
493
|
+
"name": "Network Traffic Policy Mapping",
|
|
494
|
+
"tactic": "Model",
|
|
495
|
+
"subtactic": "Network Mapping",
|
|
496
|
+
"description": "Establishing and maintaining a baseline of permitted network communication patterns — who talks to whom, on which ports, with what protocols — so deviations can be detected by other techniques.",
|
|
497
|
+
"counters_attack_techniques": [
|
|
498
|
+
"T1071",
|
|
499
|
+
"T1090",
|
|
500
|
+
"T1571",
|
|
501
|
+
"AML.T0096"
|
|
502
|
+
],
|
|
503
|
+
"digital_artifacts_addressed": [
|
|
504
|
+
"Network Traffic Policy",
|
|
505
|
+
"Network Flow"
|
|
506
|
+
],
|
|
507
|
+
"skills_referencing": [
|
|
508
|
+
"ai-c2-detection"
|
|
509
|
+
],
|
|
510
|
+
"implementation_examples": [
|
|
511
|
+
"Service mesh allow-policies (Istio AuthorizationPolicy, Linkerd)",
|
|
512
|
+
"Kubernetes NetworkPolicy",
|
|
513
|
+
"AWS VPC flow log baselining",
|
|
514
|
+
"Per-process AI API egress allowlist (only build agents may reach api.anthropic.com)"
|
|
515
|
+
],
|
|
516
|
+
"framework_controls_partially_mapped": [
|
|
517
|
+
"NIST-800-53-SC-7",
|
|
518
|
+
"NIST-800-53-AC-4",
|
|
519
|
+
"ISO-27001-2022-A.8.22"
|
|
520
|
+
],
|
|
521
|
+
"ai_pipeline_applicability": "Critical for AI-pipeline security. Without per-process AI-API egress policy, AML.T0096 detection is structurally impossible — every workload becomes a potential C2 endpoint. In serverless contexts, NTPM is enforced at the egress VPC endpoint or service mesh sidecar layer.",
|
|
522
|
+
"lag_notes": "SC-7 is implemented as boundary firewall in almost all environments; per-process or per-workload egress allowlists are rare. AC-4 (information flow enforcement) is satisfied by network segmentation evidence even when intra-zone egress is unrestricted — exactly the lag AI-API C2 exploits.",
|
|
523
|
+
"last_verified": "2026-05-11"
|
|
524
|
+
},
|
|
525
|
+
"D3-CSPP": {
|
|
526
|
+
"id": "D3-CSPP",
|
|
527
|
+
"name": "Client-server Payload Profiling",
|
|
528
|
+
"tactic": "Detect",
|
|
529
|
+
"subtactic": "Message Analysis",
|
|
530
|
+
"description": "Analyzing the payloads exchanged between clients and servers for indicators of malicious use — anomalous sizes, encodings, command-like structures, or content that diverges from expected application semantics.",
|
|
531
|
+
"counters_attack_techniques": [
|
|
532
|
+
"T1071.001",
|
|
533
|
+
"T1041",
|
|
534
|
+
"AML.T0096",
|
|
535
|
+
"AML.T0096.000",
|
|
536
|
+
"AML.T0051.001"
|
|
537
|
+
],
|
|
538
|
+
"digital_artifacts_addressed": [
|
|
539
|
+
"Network Traffic",
|
|
540
|
+
"Application Payload"
|
|
541
|
+
],
|
|
542
|
+
"skills_referencing": [
|
|
543
|
+
"ai-c2-detection",
|
|
544
|
+
"mcp-agent-trust"
|
|
545
|
+
],
|
|
546
|
+
"implementation_examples": [
|
|
547
|
+
"AI-API request body inspection at egress proxy (CloudFlare AI Gateway, LiteLLM proxy)",
|
|
548
|
+
"Steganographic-encoding entropy scoring on prompt content",
|
|
549
|
+
"MCP tool-call argument schema validation and anomaly scoring",
|
|
550
|
+
"Prompt-payload classifier for indirect-injection patterns"
|
|
551
|
+
],
|
|
552
|
+
"framework_controls_partially_mapped": [
|
|
553
|
+
"NIST-800-53-SI-4(11)",
|
|
554
|
+
"NIST-800-53-SC-7(10)",
|
|
555
|
+
"ISO-27001-2022-A.8.16"
|
|
556
|
+
],
|
|
557
|
+
"ai_pipeline_applicability": "Most directly applicable defense against AML.T0096. Requires terminating-proxy architecture for AI API traffic (egress gateway with TLS interception or sanctioned SDK that logs structured payloads). Architecturally impossible when applications call AI APIs directly with org-managed TLS to the provider — alternative is mandated SDK with logging hooks.",
|
|
558
|
+
"lag_notes": "SI-4(11) (analyze communications traffic anomalies) was written for traditional protocols; no framework guidance exists for AI-prompt content inspection. The prompt-as-payload analysis class did not exist when control catalogs were last revised. Compliance-driven SOCs are not equipped to ingest or analyze prompt traffic.",
|
|
559
|
+
"last_verified": "2026-05-11"
|
|
560
|
+
},
|
|
561
|
+
"D3-IOPR": {
|
|
562
|
+
"id": "D3-IOPR",
|
|
563
|
+
"name": "Input/Output Profiling Resource",
|
|
564
|
+
"tactic": "Detect",
|
|
565
|
+
"subtactic": "Process Analysis",
|
|
566
|
+
"description": "Profiling the input and output behavior of a process or resource to establish a baseline and detect anomalies, including unexpected I/O patterns, unusual data flows, or access to unexpected resources.",
|
|
567
|
+
"counters_attack_techniques": [
|
|
568
|
+
"T1005",
|
|
569
|
+
"T1041",
|
|
570
|
+
"AML.T0051",
|
|
571
|
+
"AML.T0017",
|
|
572
|
+
"AML.T0017.001"
|
|
573
|
+
],
|
|
574
|
+
"digital_artifacts_addressed": [
|
|
575
|
+
"Process",
|
|
576
|
+
"Resource Access"
|
|
577
|
+
],
|
|
578
|
+
"skills_referencing": [
|
|
579
|
+
"ai-attack-surface",
|
|
580
|
+
"rag-pipeline-security"
|
|
581
|
+
],
|
|
582
|
+
"implementation_examples": [
|
|
583
|
+
"LLM output classifier for safety-bypass content (Llama Guard, Granite Guardian)",
|
|
584
|
+
"Semantic divergence scoring (user intent vs. AI action)",
|
|
585
|
+
"RAG retrieval-pattern anomaly detection",
|
|
586
|
+
"AI API query rate / similarity clustering for probe detection"
|
|
587
|
+
],
|
|
588
|
+
"framework_controls_partially_mapped": [
|
|
589
|
+
"NIST-800-53-SI-4",
|
|
590
|
+
"NIST-AI-RMF-MEASURE-2.5",
|
|
591
|
+
"ISO-27001-2022-A.8.16"
|
|
592
|
+
],
|
|
593
|
+
"ai_pipeline_applicability": "Primary detection control for prompt injection (AML.T0051) and model ontology discovery (AML.T0017). Applies natively to AI pipelines — operates at the application layer where ephemeral runtime is irrelevant. Output-side IOPR (classifying AI responses) is more reliable than input-side (prompt classification) given the variety of injection encodings.",
|
|
594
|
+
"lag_notes": "NIST AI RMF MEASURE-2.5 recommends 'measurement of AI system trustworthiness characteristics' but is non-prescriptive. No framework requires runtime output safety scoring or input adversarial classification. OWASP LLM Top 10 documents the need; compliance frameworks have not incorporated it.",
|
|
595
|
+
"last_verified": "2026-05-11"
|
|
596
|
+
},
|
|
597
|
+
"D3-RPA": {
|
|
598
|
+
"id": "D3-RPA",
|
|
599
|
+
"name": "Remote Process Analysis",
|
|
600
|
+
"tactic": "Detect",
|
|
601
|
+
"subtactic": "Process Analysis",
|
|
602
|
+
"description": "Analyzing processes running on remote hosts via agent-based or agentless telemetry to detect malicious behaviors — unexpected child processes, anomalous network behavior by identity, or process-resource correlations indicating compromise.",
|
|
603
|
+
"counters_attack_techniques": [
|
|
604
|
+
"T1057",
|
|
605
|
+
"T1071",
|
|
606
|
+
"T1059",
|
|
607
|
+
"AML.T0096"
|
|
608
|
+
],
|
|
609
|
+
"digital_artifacts_addressed": [
|
|
610
|
+
"Process",
|
|
611
|
+
"Process Tree"
|
|
612
|
+
],
|
|
613
|
+
"skills_referencing": [
|
|
614
|
+
"ai-c2-detection"
|
|
615
|
+
],
|
|
616
|
+
"implementation_examples": [
|
|
617
|
+
"EDR with process-network correlation (CrowdStrike, SentinelOne, Defender for Endpoint)",
|
|
618
|
+
"Sysmon + Sigma rules for AI-API egress by unexpected process",
|
|
619
|
+
"eBPF-based runtime monitors (Falco, Tetragon)",
|
|
620
|
+
"Process identity attribution on AI API outbound flows"
|
|
621
|
+
],
|
|
622
|
+
"framework_controls_partially_mapped": [
|
|
623
|
+
"NIST-800-53-SI-4(2)",
|
|
624
|
+
"NIST-800-53-SI-4(4)",
|
|
625
|
+
"ISO-27001-2022-A.8.16"
|
|
626
|
+
],
|
|
627
|
+
"ai_pipeline_applicability": "Applies to traditional workloads. Serverless and FaaS contexts have no persistent process to analyze — alternative is invocation-level telemetry from the platform (CloudWatch Lambda Insights, GCP Cloud Run audit logs) correlated with AI-API egress flow records.",
|
|
628
|
+
"lag_notes": "Process-to-AI-API correlation is not part of any standard EDR ruleset. SI-4(2) (automated tools and mechanisms) requires SIEM/EDR presence but not the specific correlation rule. Most SOCs lack the process-identity attribution needed to distinguish legitimate from malicious AI-API use at the host.",
|
|
629
|
+
"last_verified": "2026-05-11"
|
|
630
|
+
},
|
|
631
|
+
"D3-FAPA": {
|
|
632
|
+
"id": "D3-FAPA",
|
|
633
|
+
"name": "File Access Pattern Analysis",
|
|
634
|
+
"tactic": "Detect",
|
|
635
|
+
"subtactic": "File Analysis",
|
|
636
|
+
"description": "Analyzing patterns of file access — which files, by which processes, in which sequence — to detect anomalies suggesting credential theft, staging, or unauthorized data access.",
|
|
637
|
+
"counters_attack_techniques": [
|
|
638
|
+
"T1005",
|
|
639
|
+
"T1083",
|
|
640
|
+
"T1552.001",
|
|
641
|
+
"AML.T0010.002"
|
|
642
|
+
],
|
|
643
|
+
"digital_artifacts_addressed": [
|
|
644
|
+
"File",
|
|
645
|
+
"File Access"
|
|
646
|
+
],
|
|
647
|
+
"skills_referencing": [
|
|
648
|
+
"kernel-lpe-triage",
|
|
649
|
+
"mcp-agent-trust"
|
|
650
|
+
],
|
|
651
|
+
"implementation_examples": [
|
|
652
|
+
"auditd FIM with behavioral rules",
|
|
653
|
+
"EDR file-access timeline analysis",
|
|
654
|
+
"MCP tool-call file-system access logging",
|
|
655
|
+
"model weight file access monitoring (who reads .safetensors at unusual hours)"
|
|
656
|
+
],
|
|
657
|
+
"framework_controls_partially_mapped": [
|
|
658
|
+
"NIST-800-53-AU-2",
|
|
659
|
+
"NIST-800-53-AU-6",
|
|
660
|
+
"ISO-27001-2022-A.8.15"
|
|
661
|
+
],
|
|
662
|
+
"ai_pipeline_applicability": "Applies to persistent inference and training infrastructure. For serverless inference the alternative is object-storage access logging (S3 server access logs, GCS audit logs) with anomaly analysis on model-weight object reads.",
|
|
663
|
+
"lag_notes": "AU-2 / AU-6 require auditing and review but do not require behavioral analytics on file access. UEBA on file access is a SIEM-vendor feature, not a compliance requirement. Lag is between control text ('audit appropriate events') and operational behavior detection.",
|
|
664
|
+
"last_verified": "2026-05-11"
|
|
665
|
+
},
|
|
666
|
+
"D3-NI": {
|
|
667
|
+
"id": "D3-NI",
|
|
668
|
+
"name": "Network Isolation",
|
|
669
|
+
"tactic": "Isolate",
|
|
670
|
+
"subtactic": "Network Isolation",
|
|
671
|
+
"description": "Restricting which hosts and networks a system can communicate with, reducing both inbound attack surface and outbound exfiltration / C2 opportunity.",
|
|
672
|
+
"counters_attack_techniques": [
|
|
673
|
+
"T1090",
|
|
674
|
+
"T1071",
|
|
675
|
+
"T1041",
|
|
676
|
+
"AML.T0096"
|
|
677
|
+
],
|
|
678
|
+
"digital_artifacts_addressed": [
|
|
679
|
+
"Network",
|
|
680
|
+
"Network Traffic"
|
|
681
|
+
],
|
|
682
|
+
"skills_referencing": [
|
|
683
|
+
"ai-c2-detection",
|
|
684
|
+
"kernel-lpe-triage"
|
|
685
|
+
],
|
|
686
|
+
"implementation_examples": [
|
|
687
|
+
"VPC egress allowlists with no default internet route",
|
|
688
|
+
"Per-namespace Kubernetes NetworkPolicy (deny-all default)",
|
|
689
|
+
"AI API egress proxy as sole route to provider endpoints",
|
|
690
|
+
"Microsegmentation (Illumio, Cisco Secure Workload)"
|
|
691
|
+
],
|
|
692
|
+
"framework_controls_partially_mapped": [
|
|
693
|
+
"NIST-800-53-SC-7",
|
|
694
|
+
"NIST-800-53-AC-4",
|
|
695
|
+
"ISO-27001-2022-A.8.22",
|
|
696
|
+
"PCI-DSS-v4-1.4"
|
|
697
|
+
],
|
|
698
|
+
"ai_pipeline_applicability": "Highly applicable: AI workloads should route to AI providers only through a sanctioned egress proxy that enforces per-workload identity, logs payloads (D3-CSPP), and applies traffic policy (D3-NTPM). Default-deny egress is the only structural defense against AML.T0096 — direct AI-API egress from arbitrary workloads makes C2 detection unreliable.",
|
|
699
|
+
"lag_notes": "SC-7 boundary-protection language is satisfied by perimeter firewalls; default-deny egress at workload granularity is not required by any framework. AC-4 information-flow enforcement is satisfied by network zoning; per-process or per-pod egress policy is rare in audited environments.",
|
|
700
|
+
"last_verified": "2026-05-11"
|
|
701
|
+
},
|
|
702
|
+
"D3-PA": {
|
|
703
|
+
"id": "D3-PA",
|
|
704
|
+
"name": "Process Analysis",
|
|
705
|
+
"tactic": "Detect",
|
|
706
|
+
"subtactic": "Process Analysis",
|
|
707
|
+
"description": "Analyzing the properties and behavior of processes (parent-child relationships, command-line arguments, loaded modules, system call patterns) to identify malicious activity.",
|
|
708
|
+
"counters_attack_techniques": [
|
|
709
|
+
"T1055",
|
|
710
|
+
"T1059",
|
|
711
|
+
"T1068",
|
|
712
|
+
"T1106",
|
|
713
|
+
"AML.T0010.003"
|
|
714
|
+
],
|
|
715
|
+
"digital_artifacts_addressed": [
|
|
716
|
+
"Process",
|
|
717
|
+
"Process Tree"
|
|
718
|
+
],
|
|
719
|
+
"skills_referencing": [
|
|
720
|
+
"kernel-lpe-triage",
|
|
721
|
+
"mcp-agent-trust"
|
|
722
|
+
],
|
|
723
|
+
"implementation_examples": [
|
|
724
|
+
"Sysmon process-creation events with parent-child Sigma rules",
|
|
725
|
+
"EDR behavioral detections (suspicious process trees)",
|
|
726
|
+
"Linux audit / ausearch on execve with command-line capture",
|
|
727
|
+
"MCP server process-tree anomaly detection (unexpected spawn of shell from MCP host)"
|
|
728
|
+
],
|
|
729
|
+
"framework_controls_partially_mapped": [
|
|
730
|
+
"NIST-800-53-SI-4",
|
|
731
|
+
"NIST-800-53-AU-2",
|
|
732
|
+
"ISO-27001-2022-A.8.16"
|
|
733
|
+
],
|
|
734
|
+
"ai_pipeline_applicability": "Applies to persistent hosts running MCP servers, AI coding assistants, or AI build agents. For serverless invocations, equivalent is per-invocation runtime telemetry (Lambda extension hooks, Cloud Run service workload identity logs) correlated with the AI-API call graph.",
|
|
735
|
+
"lag_notes": "SI-4 / AU-2 require monitoring but do not require parent-child process-tree analytics. Most enterprise audits accept 'we have EDR' as evidence regardless of whether behavioral rules are tuned. Lag is in operationalization — control existence vs. detection quality.",
|
|
736
|
+
"last_verified": "2026-05-11"
|
|
737
|
+
}
|
|
738
|
+
}
|