agent-threat-rules 2.1.0 → 2.1.2
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/cli.js +0 -0
- package/dist/index.d.ts +2 -0
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +1 -0
- package/dist/index.js.map +1 -1
- package/dist/redact.d.ts +54 -0
- package/dist/redact.d.ts.map +1 -0
- package/dist/redact.js +86 -0
- package/dist/redact.js.map +1 -0
- package/package.json +1 -1
- package/rules/agent-manipulation/ATR-2026-00432-superagi-output-handler-eval-rce.yaml +171 -0
- package/rules/agent-manipulation/ATR-2026-00440-semantic-kernel-vector-store-eval-rce.yaml +177 -0
- package/rules/context-exfiltration/ATR-2026-00431-chatbox-history-exfiltration-prompt-injection.yaml +171 -0
- package/rules/model-security/ATR-2026-00433-modelcache-torch-load-deserialization-rce.yaml +178 -0
- package/rules/privilege-escalation/ATR-2026-00436-enclave-vm-sandbox-escape-rce.yaml +183 -0
- package/rules/privilege-escalation/ATR-2026-00441-semantic-kernel-sessions-python-plugin-startup-persistence.yaml +189 -0
- package/rules/tool-poisoning/ATR-2026-00434-mcp-remote-authorization-endpoint-command-injection.yaml +174 -0
- package/rules/tool-poisoning/ATR-2026-00435-azure-mcp-server-missing-authentication.yaml +165 -0
- package/spec/stix-extension/README.md +79 -0
- package/spec/stix-extension/examples/atr-rule-prompt-injection-example.json +52 -0
- package/spec/stix-extension/extension-definition.json +32 -0
- package/spec/stix-extension/x-atr-rule-schema.json +184 -0
|
@@ -0,0 +1,32 @@
|
|
|
1
|
+
{
|
|
2
|
+
"type": "extension-definition",
|
|
3
|
+
"id": "extension-definition--93370194-c964-570f-9802-9d1154e5525d",
|
|
4
|
+
"spec_version": "2.1",
|
|
5
|
+
"created_by_ref": "identity--4ee77ba4-f956-5d27-aeb1-cbfeb4c8f8d5",
|
|
6
|
+
"created": "2026-05-11T00:00:00.000Z",
|
|
7
|
+
"modified": "2026-05-11T00:00:00.000Z",
|
|
8
|
+
"name": "Agent Threat Rules (ATR) STIX Extension",
|
|
9
|
+
"description": "Defines the x-atr-rule custom STIX Domain Object for representing AI agent detection rules. Each x-atr-rule instance carries a deterministic rule identifier (e.g. ATR-2026-00001), one of nine attack-class categories (prompt-injection, tool-poisoning, context-exfiltration, agent-manipulation, privilege-escalation, excessive-autonomy, data-poisoning, model-abuse, skill-compromise), severity, regex detection patterns, and external mappings to OWASP LLM Top 10, MITRE ATLAS, EU AI Act, NIST AI RMF, and ISO/IEC 42001 controls. ATR rules are the open-source detection vocabulary published at github.com/Agent-Threat-Rule/agent-threat-rules under MIT and adopted as a MISP taxonomy at MISP/misp-taxonomies#323. This extension lets STIX consumers represent ATR rules natively in CTI pipelines without lossy translation through indicator or attack-pattern objects.",
|
|
10
|
+
"schema": "https://raw.githubusercontent.com/Agent-Threat-Rule/agent-threat-rules/main/spec/stix-extension/x-atr-rule-schema.json",
|
|
11
|
+
"version": "1.0.0",
|
|
12
|
+
"extension_types": [
|
|
13
|
+
"new-sdo"
|
|
14
|
+
],
|
|
15
|
+
"external_references": [
|
|
16
|
+
{
|
|
17
|
+
"source_name": "agent-threat-rules",
|
|
18
|
+
"description": "ATR canonical repository",
|
|
19
|
+
"url": "https://github.com/Agent-Threat-Rule/agent-threat-rules"
|
|
20
|
+
},
|
|
21
|
+
{
|
|
22
|
+
"source_name": "misp-taxonomies",
|
|
23
|
+
"description": "ATR MISP taxonomy adoption",
|
|
24
|
+
"url": "https://github.com/MISP/misp-taxonomies/pull/323"
|
|
25
|
+
},
|
|
26
|
+
{
|
|
27
|
+
"source_name": "stix-2.1",
|
|
28
|
+
"description": "STIX 2.1 specification, Section 7.3 Extension Definition",
|
|
29
|
+
"url": "https://docs.oasis-open.org/cti/stix/v2.1/os/stix-v2.1-os.html"
|
|
30
|
+
}
|
|
31
|
+
]
|
|
32
|
+
}
|
|
@@ -0,0 +1,184 @@
|
|
|
1
|
+
{
|
|
2
|
+
"$schema": "http://json-schema.org/draft-07/schema#",
|
|
3
|
+
"$id": "https://raw.githubusercontent.com/Agent-Threat-Rule/agent-threat-rules/main/spec/stix-extension/x-atr-rule-schema.json",
|
|
4
|
+
"title": "x-atr-rule",
|
|
5
|
+
"description": "STIX 2.1 custom SDO for an Agent Threat Rules detection rule.",
|
|
6
|
+
"type": "object",
|
|
7
|
+
"required": [
|
|
8
|
+
"type",
|
|
9
|
+
"id",
|
|
10
|
+
"spec_version",
|
|
11
|
+
"created",
|
|
12
|
+
"modified",
|
|
13
|
+
"atr_id",
|
|
14
|
+
"atr_category",
|
|
15
|
+
"name",
|
|
16
|
+
"severity",
|
|
17
|
+
"extensions"
|
|
18
|
+
],
|
|
19
|
+
"properties": {
|
|
20
|
+
"type": {
|
|
21
|
+
"type": "string",
|
|
22
|
+
"const": "x-atr-rule",
|
|
23
|
+
"description": "Always 'x-atr-rule'."
|
|
24
|
+
},
|
|
25
|
+
"id": {
|
|
26
|
+
"type": "string",
|
|
27
|
+
"pattern": "^x-atr-rule--[0-9a-f]{8}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{12}$",
|
|
28
|
+
"description": "STIX UUID-typed identifier. Recommended: deterministic UUID5 derived from atr_id under a stable namespace so the same rule ID always produces the same STIX id."
|
|
29
|
+
},
|
|
30
|
+
"spec_version": {
|
|
31
|
+
"type": "string",
|
|
32
|
+
"const": "2.1"
|
|
33
|
+
},
|
|
34
|
+
"created_by_ref": {
|
|
35
|
+
"type": "string",
|
|
36
|
+
"pattern": "^identity--[0-9a-f]{8}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{12}$"
|
|
37
|
+
},
|
|
38
|
+
"created": { "type": "string", "format": "date-time" },
|
|
39
|
+
"modified": { "type": "string", "format": "date-time" },
|
|
40
|
+
"revoked": { "type": "boolean" },
|
|
41
|
+
"labels": {
|
|
42
|
+
"type": "array",
|
|
43
|
+
"items": { "type": "string" }
|
|
44
|
+
},
|
|
45
|
+
"confidence": { "type": "integer", "minimum": 0, "maximum": 100 },
|
|
46
|
+
"lang": { "type": "string" },
|
|
47
|
+
"external_references": { "type": "array" },
|
|
48
|
+
"object_marking_refs": { "type": "array" },
|
|
49
|
+
"granular_markings": { "type": "array" },
|
|
50
|
+
|
|
51
|
+
"atr_id": {
|
|
52
|
+
"type": "string",
|
|
53
|
+
"pattern": "^ATR-[0-9]{4}-[0-9]{5}$",
|
|
54
|
+
"description": "Canonical ATR rule identifier (e.g. ATR-2026-00431)."
|
|
55
|
+
},
|
|
56
|
+
"atr_category": {
|
|
57
|
+
"type": "string",
|
|
58
|
+
"enum": [
|
|
59
|
+
"prompt-injection",
|
|
60
|
+
"tool-poisoning",
|
|
61
|
+
"context-exfiltration",
|
|
62
|
+
"agent-manipulation",
|
|
63
|
+
"privilege-escalation",
|
|
64
|
+
"excessive-autonomy",
|
|
65
|
+
"data-poisoning",
|
|
66
|
+
"model-abuse",
|
|
67
|
+
"skill-compromise"
|
|
68
|
+
],
|
|
69
|
+
"description": "One of nine ATR attack-class categories."
|
|
70
|
+
},
|
|
71
|
+
"atr_subcategory": {
|
|
72
|
+
"type": "string",
|
|
73
|
+
"description": "Optional finer-grained subcategory (e.g. 'mcp-oauth-metadata-injection')."
|
|
74
|
+
},
|
|
75
|
+
"name": {
|
|
76
|
+
"type": "string",
|
|
77
|
+
"description": "Human-readable rule title."
|
|
78
|
+
},
|
|
79
|
+
"description": { "type": "string" },
|
|
80
|
+
"severity": {
|
|
81
|
+
"type": "string",
|
|
82
|
+
"enum": ["critical", "high", "medium", "low", "informational"]
|
|
83
|
+
},
|
|
84
|
+
"maturity": {
|
|
85
|
+
"type": "string",
|
|
86
|
+
"enum": ["experimental", "test", "stable", "deprecated"]
|
|
87
|
+
},
|
|
88
|
+
"agent_source_type": {
|
|
89
|
+
"type": "string",
|
|
90
|
+
"enum": [
|
|
91
|
+
"llm_io",
|
|
92
|
+
"tool_call",
|
|
93
|
+
"mcp_exchange",
|
|
94
|
+
"agent_behavior",
|
|
95
|
+
"multi_agent_comm",
|
|
96
|
+
"context_window",
|
|
97
|
+
"memory_access",
|
|
98
|
+
"skill_lifecycle",
|
|
99
|
+
"skill_permission",
|
|
100
|
+
"skill_chain"
|
|
101
|
+
]
|
|
102
|
+
},
|
|
103
|
+
"detection_patterns": {
|
|
104
|
+
"type": "array",
|
|
105
|
+
"description": "Regex patterns extracted from the ATR rule's detection.conditions.",
|
|
106
|
+
"items": {
|
|
107
|
+
"type": "object",
|
|
108
|
+
"required": ["field", "pattern"],
|
|
109
|
+
"properties": {
|
|
110
|
+
"field": { "type": "string" },
|
|
111
|
+
"pattern": { "type": "string" },
|
|
112
|
+
"operator": { "type": "string", "default": "regex" },
|
|
113
|
+
"description": { "type": "string" }
|
|
114
|
+
}
|
|
115
|
+
}
|
|
116
|
+
},
|
|
117
|
+
"response_actions": {
|
|
118
|
+
"type": "array",
|
|
119
|
+
"items": {
|
|
120
|
+
"type": "string",
|
|
121
|
+
"enum": [
|
|
122
|
+
"block_input",
|
|
123
|
+
"block_output",
|
|
124
|
+
"block_tool",
|
|
125
|
+
"quarantine_session",
|
|
126
|
+
"reset_context",
|
|
127
|
+
"alert",
|
|
128
|
+
"snapshot",
|
|
129
|
+
"escalate",
|
|
130
|
+
"reduce_permissions",
|
|
131
|
+
"kill_agent"
|
|
132
|
+
]
|
|
133
|
+
}
|
|
134
|
+
},
|
|
135
|
+
"owasp_llm_refs": {
|
|
136
|
+
"type": "array",
|
|
137
|
+
"items": { "type": "string" }
|
|
138
|
+
},
|
|
139
|
+
"owasp_agentic_refs": {
|
|
140
|
+
"type": "array",
|
|
141
|
+
"items": { "type": "string" }
|
|
142
|
+
},
|
|
143
|
+
"mitre_atlas_refs": {
|
|
144
|
+
"type": "array",
|
|
145
|
+
"items": { "type": "string" }
|
|
146
|
+
},
|
|
147
|
+
"mitre_attack_refs": {
|
|
148
|
+
"type": "array",
|
|
149
|
+
"items": { "type": "string" }
|
|
150
|
+
},
|
|
151
|
+
"cve_refs": {
|
|
152
|
+
"type": "array",
|
|
153
|
+
"items": {
|
|
154
|
+
"type": "string",
|
|
155
|
+
"pattern": "^CVE-[0-9]{4}-[0-9]+$"
|
|
156
|
+
}
|
|
157
|
+
},
|
|
158
|
+
"compliance_refs": {
|
|
159
|
+
"type": "object",
|
|
160
|
+
"description": "Mappings to compliance frameworks. Each value is an array of {control, context, strength}.",
|
|
161
|
+
"properties": {
|
|
162
|
+
"eu_ai_act": { "type": "array" },
|
|
163
|
+
"nist_ai_rmf": { "type": "array" },
|
|
164
|
+
"iso_42001": { "type": "array" }
|
|
165
|
+
},
|
|
166
|
+
"additionalProperties": false
|
|
167
|
+
},
|
|
168
|
+
"extensions": {
|
|
169
|
+
"type": "object",
|
|
170
|
+
"description": "STIX 2.1 extensions object, must contain the ATR extension-definition reference.",
|
|
171
|
+
"patternProperties": {
|
|
172
|
+
"^extension-definition--93370194-c964-570f-9802-9d1154e5525d$": {
|
|
173
|
+
"type": "object",
|
|
174
|
+
"required": ["extension_type"],
|
|
175
|
+
"properties": {
|
|
176
|
+
"extension_type": { "const": "new-sdo" }
|
|
177
|
+
}
|
|
178
|
+
}
|
|
179
|
+
},
|
|
180
|
+
"minProperties": 1
|
|
181
|
+
}
|
|
182
|
+
},
|
|
183
|
+
"additionalProperties": true
|
|
184
|
+
}
|