agent-threat-rules 4.2.0 → 4.2.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/CHANGELOG.md +229 -0
- package/README.md +5 -4
- package/dist/converters/elastic.d.ts.map +1 -1
- package/dist/converters/elastic.js +7 -1
- package/dist/converters/elastic.js.map +1 -1
- package/dist/converters/generic-regex.d.ts +5 -1
- package/dist/converters/generic-regex.d.ts.map +1 -1
- package/dist/converters/generic-regex.js +12 -11
- package/dist/converters/generic-regex.js.map +1 -1
- package/dist/converters/sage-reverse.d.ts +1 -1
- package/dist/converters/sage-reverse.d.ts.map +1 -1
- package/dist/converters/sage-reverse.js +13 -8
- package/dist/converters/sage-reverse.js.map +1 -1
- package/dist/converters/sage.d.ts +8 -8
- package/dist/converters/sage.d.ts.map +1 -1
- package/dist/converters/sage.js +107 -74
- package/dist/converters/sage.js.map +1 -1
- package/dist/converters/splunk.d.ts.map +1 -1
- package/dist/converters/splunk.js +17 -3
- package/dist/converters/splunk.js.map +1 -1
- package/dist/engine.d.ts +2 -48
- package/dist/engine.d.ts.map +1 -1
- package/dist/engine.js +3 -54
- package/dist/engine.js.map +1 -1
- package/dist/regex-dialect.d.ts +67 -0
- package/dist/regex-dialect.d.ts.map +1 -0
- package/dist/regex-dialect.js +77 -0
- package/dist/regex-dialect.js.map +1 -0
- package/package.json +1 -1
- package/rules/agent-manipulation/ATR-2026-00074-cross-agent-privilege-escalation.yaml +0 -1
- package/rules/agent-manipulation/ATR-2026-00430-nl-trust-escalation-impersonation.yaml +3 -0
- package/rules/agent-manipulation/ATR-2026-00552-goal-drift-after-pressure-injection.yaml +3 -3
- package/rules/context-exfiltration/ATR-2026-00102-disguised-analytics-exfiltration.yaml +3 -2
- package/rules/context-exfiltration/ATR-2026-00136-tool-response-data-piggyback.yaml +5 -3
- package/rules/context-exfiltration/ATR-2026-00142-piggyback-transition-words.yaml +4 -2
- package/rules/context-exfiltration/ATR-2026-00150-credential-in-tool-response.yaml +3 -2
- package/rules/context-exfiltration/ATR-2026-00152-obfuscated-credential-leak.yaml +3 -2
- package/rules/context-exfiltration/ATR-2026-00162-skill-credential-exfil-combo.yaml +6 -2
- package/rules/context-exfiltration/ATR-2026-00201-credential-pipe-exfiltration.yaml +5 -2
- package/rules/context-exfiltration/ATR-2026-00290-divergence-repeat-word-training-extraction.yaml +0 -4
- package/rules/context-exfiltration/ATR-2026-00449-spring-ai-chatmemory-cross-user-leak.yaml +2 -3
- package/rules/context-exfiltration/ATR-2026-00501-data-exfiltration-via-markdown-image-and-link-url-injection.yaml +16 -2
- package/rules/context-exfiltration/ATR-2026-00505-system-prompt-extraction-instruction-dump-request.yaml +6 -4
- package/rules/context-exfiltration/ATR-2026-00516-output-xss-via-llm.yaml +9 -8
- package/rules/context-exfiltration/ATR-2026-00569-agent-mcp-path-traversal-arbitrary-file-access.yaml +3 -1
- package/rules/context-exfiltration/ATR-2026-00571-xss-in-agent-mcp-rendered-output.yaml +4 -3
- package/rules/context-exfiltration/ATR-2026-00702-ipi-credential-exfil-via-agent-action.yaml +5 -3
- package/rules/context-exfiltration/ATR-2026-00703-ipi-financial-data-exfil-indirect.yaml +5 -3
- package/rules/context-exfiltration/ATR-2026-00704-ipi-medical-genetic-data-exfil.yaml +5 -3
- package/rules/context-exfiltration/ATR-2026-00705-ipi-location-address-browsing-exfil.yaml +5 -3
- package/rules/context-exfiltration/ATR-2026-00706-ipi-physical-biometric-exfil.yaml +5 -3
- package/rules/context-exfiltration/ATR-2026-00707-ipi-file-exfil-with-destroy-or-tamper.yaml +6 -3
- package/rules/context-exfiltration/ATR-2026-00860-indirect-pi-financial-transfer-hijack.yaml +1 -1
- package/rules/context-exfiltration/ATR-2026-00861-indirect-pi-crypto-transfer-hijack.yaml +1 -1
- package/rules/context-exfiltration/ATR-2026-01605-ssrf-aws-metadata-endpoint.yaml +5 -1
- package/rules/context-exfiltration/ATR-2026-01606-ssrf-internal-network-scan.yaml +4 -1
- package/rules/context-exfiltration/ATR-2026-01607-ssrf-localhost-service-probe.yaml +4 -1
- package/rules/context-exfiltration/ATR-2026-01924-system-instruction-extraction-reformat.yaml +1 -4
- package/rules/context-exfiltration/ATR-2026-01948-netlicensing-mcp-product-number-path-traversal-token-leak.yaml +4 -2
- package/rules/context-exfiltration/ATR-2026-01957-m365-copilot-searchleak-open-redirect-exfil.yaml +6 -2
- package/rules/context-exfiltration/ATR-2026-01961-meta-ads-mcp-unauth-token-leak.yaml +4 -1
- package/rules/context-exfiltration/ATR-2026-01964-langchain-gmailtoolkit-indirect-prompt-injection-email-exfil.yaml +6 -2
- package/rules/context-exfiltration/ATR-2026-02140-ssrf-ipv6-hex-encoded-cloud-metadata-bypass.yaml +1 -1
- package/rules/context-exfiltration/ATR-2026-02304-preapproved-domain-encoded-path-exfil.yaml +1 -1
- package/rules/context-exfiltration/ATR-2026-02351-wildcard-dns-ssrf-hostname-ip-encoding-bypass.yaml +1 -1
- package/rules/data-poisoning/ATR-2026-00070-data-poisoning.yaml +1 -1
- package/rules/excessive-autonomy/ATR-2026-00491-garak-agent-breaker-markdown-just-raw-json.yaml +8 -8
- package/rules/excessive-autonomy/ATR-2026-00500-ssrf-via-agent-url-fetch-instruction.yaml +17 -5
- package/rules/excessive-autonomy/ATR-2026-00708-ipi-financial-transfer-unauthorized.yaml +4 -3
- package/rules/excessive-autonomy/ATR-2026-00711-ipi-system-sabotage-destructive-command.yaml +4 -3
- package/rules/excessive-autonomy/ATR-2026-00712-ipi-malicious-package-install.yaml +5 -3
- package/rules/excessive-autonomy/ATR-2026-00718-tool-misuse-financial-autonomous.yaml +8 -7
- package/rules/excessive-autonomy/ATR-2026-00719-tool-misuse-destructive-bulk-action.yaml +3 -3
- package/rules/excessive-autonomy/ATR-2026-01773-semantic-excessive-agency-action.yaml +3 -3
- package/rules/excessive-autonomy/ATR-2026-01801-asb-autonomous-vehicle-sabotage.yaml +3 -3
- package/rules/excessive-autonomy/ATR-2026-01804-asb-covert-unlogged-action.yaml +3 -4
- package/rules/excessive-autonomy/ATR-2026-01805-asb-financial-fraud-execution.yaml +3 -3
- package/rules/excessive-autonomy/ATR-2026-01806-asb-clinical-patient-harm.yaml +3 -3
- package/rules/excessive-autonomy/ATR-2026-01809-semantic-insider-manipulation-process-corruption.yaml +2 -3
- package/rules/excessive-autonomy/ATR-2026-01989-t1046-agent-internal-network-sweep.yaml +2 -2
- package/rules/excessive-autonomy/ATR-2026-01993-t1562-agent-impair-defenses.yaml +2 -2
- package/rules/excessive-autonomy/ATR-2026-02667-preapproved-tool-list-in-job-payload.yaml +0 -1
- package/rules/model-abuse/ATR-2026-00292-self-harm-eating-disorder-facilitation.yaml +3 -3
- package/rules/model-abuse/ATR-2026-00502-training-data-extraction-via-divergent-repetition-attack.yaml +2 -0
- package/rules/privilege-escalation/ATR-2026-00040-privilege-escalation.yaml +1 -1
- package/rules/privilege-escalation/ATR-2026-00107-delayed-execution-bypass.yaml +2 -2
- package/rules/privilege-escalation/ATR-2026-00143-casual-privilege-escalation.yaml +3 -2
- package/rules/privilege-escalation/ATR-2026-00144-rationalized-safety-bypass.yaml +3 -2
- package/rules/privilege-escalation/ATR-2026-00204-stealth-execution-persistence.yaml +1 -1
- package/rules/privilege-escalation/ATR-2026-00441-semantic-kernel-sessions-python-plugin-startup-persistence.yaml +2 -1
- package/rules/privilege-escalation/ATR-2026-00546-crewai-json-loader-local-file-read.yaml +3 -1
- package/rules/privilege-escalation/ATR-2026-00549-destructive-tool-without-human-approval.yaml +2 -2
- package/rules/privilege-escalation/ATR-2026-01601-sql-injection-destructive-ddl.yaml +8 -7
- package/rules/privilege-escalation/ATR-2026-01602-sql-injection-union-select-exfil.yaml +3 -1
- package/rules/privilege-escalation/ATR-2026-01603-sql-injection-stacked-dml-abuse.yaml +3 -2
- package/rules/privilege-escalation/ATR-2026-01604-sql-injection-schema-enumeration.yaml +3 -2
- package/rules/privilege-escalation/ATR-2026-01616-path-traversal-agent-file-access.yaml +4 -1
- package/rules/privilege-escalation/ATR-2026-01802-asb-backdoor-surveillance-implant.yaml +4 -3
- package/rules/privilege-escalation/ATR-2026-01803-asb-covert-server-intrusion.yaml +4 -4
- package/rules/privilege-escalation/ATR-2026-01808-asb-synthetic-pan-payment-probe.yaml +3 -3
- package/rules/privilege-escalation/ATR-2026-01949-praisonai-mcpserver-unauth-tools-call.yaml +1 -1
- package/rules/privilege-escalation/ATR-2026-01974-anything-llm-data-import-access-control.yaml +1 -1
- package/rules/privilege-escalation/ATR-2026-01992-t1556-agent-auth-process-tamper.yaml +1 -1
- package/rules/privilege-escalation/ATR-2026-02040-file-edit-tool-persistence-write.yaml +1 -1
- package/rules/privilege-escalation/ATR-2026-02100-cypher-destructive-admin-query-injection.yaml +4 -4
- package/rules/privilege-escalation/ATR-2026-02101-dynamic-dunder-attribute-sandbox-escape.yaml +1 -1
- package/rules/privilege-escalation/ATR-2026-02142-download-tool-absolute-path-sandbox-escape.yaml +1 -1
- package/rules/privilege-escalation/ATR-2026-02146-export-tool-dest-dir-credential-directory-redirect.yaml +1 -1
- package/rules/privilege-escalation/ATR-2026-02195-dangerous-env-var-injection-config-tool.yaml +1 -1
- package/rules/privilege-escalation/ATR-2026-02300-mcp-stdio-config-dangerous-env-var.yaml +5 -5
- package/rules/privilege-escalation/ATR-2026-02301-symlink-outside-workspace-sensitive-target.yaml +1 -1
- package/rules/privilege-escalation/ATR-2026-02302-git-worktree-dotgit-sandbox-escape.yaml +1 -1
- package/rules/privilege-escalation/ATR-2026-02402-mcp-policy-engine-fail-open.yaml +0 -1
- package/rules/prompt-injection/ATR-2026-00154-unauthorized-background-task-execution-v.yaml +5 -3
- package/rules/prompt-injection/ATR-2026-00156-ssh-remote-command-execution-with-creden.yaml +6 -3
- package/rules/prompt-injection/ATR-2026-00407-echo-sql-jinja-template-injection.yaml +3 -3
- package/rules/prompt-injection/ATR-2026-00410-lmrc-harm-category-direct-elicitation.yaml +2 -2
- package/rules/prompt-injection/ATR-2026-00442-quoted-exact-output-forcing.yaml +2 -2
- package/rules/prompt-injection/ATR-2026-00503-fake-error-state-takeover-unrestricted-replacement-bot.yaml +4 -2
- package/rules/prompt-injection/ATR-2026-00512-rules-file-backdoor-injection.yaml +3 -0
- package/rules/prompt-injection/ATR-2026-00554-langchain-vulnerable-to-template-injecti.yaml +3 -3
- package/rules/prompt-injection/ATR-2026-01800-asb-trigger-marker-tool-coercion.yaml +3 -3
- package/rules/prompt-injection/ATR-2026-02009-bare-key-elicitation-trailing-colon.yaml +3 -2
- package/rules/prompt-injection/ATR-2026-02820-tool-result-orders-agent-to-hide-its-own-action.yaml +3 -3
- package/rules/skill-compromise/ATR-2026-00064-over-permissioned-skill.yaml +1 -1
- package/rules/skill-compromise/ATR-2026-00127-subcommand-overflow.yaml +2 -1
- package/rules/skill-compromise/ATR-2026-00157-timebomb-credential-exfil.yaml +6 -2
- package/rules/skill-compromise/ATR-2026-00200-agent-memory-config-tampering.yaml +1 -1
- package/rules/skill-compromise/ATR-2026-00217-credential-harvesting.yaml +4 -2
- package/rules/skill-compromise/ATR-2026-00222-credential-harvesting.yaml +6 -2
- package/rules/skill-compromise/ATR-2026-00224-credential-exfiltration.yaml +4 -2
- package/rules/skill-compromise/ATR-2026-00260-package-hallucination.yaml +3 -2
- package/rules/skill-compromise/ATR-2026-00266-malware-dropper-gen.yaml +4 -3
- package/rules/skill-compromise/ATR-2026-00398-huggingface-unsafe-model-artifact-load.yaml +3 -3
- package/rules/skill-compromise/ATR-2026-00429-nl-skill-self-modification.yaml +4 -2
- package/rules/skill-compromise/ATR-2026-00525-mini-shai-hulud-gh-token-monitor-persistence.yaml +1 -0
- package/rules/skill-compromise/ATR-2026-00527-skill-silent-git-remote-mirror-exfiltration.yaml +3 -2
- package/rules/skill-compromise/ATR-2026-01755-backdoor-pot-linguistic-trigger-phrase.yaml +1 -1
- package/rules/skill-compromise/ATR-2026-01756-backdoor-pot-symbol-emoticon-trigger.yaml +1 -1
- package/rules/tool-poisoning/ATR-2026-00096-registry-poisoning.yaml +4 -3
- package/rules/tool-poisoning/ATR-2026-00100-consent-bypass-instruction.yaml +4 -2
- package/rules/tool-poisoning/ATR-2026-00105-silent-action-concealment.yaml +2 -1
- package/rules/tool-poisoning/ATR-2026-00106-schema-description-contradiction.yaml +2 -2
- package/rules/tool-poisoning/ATR-2026-00270-xss-in-tool-response.yaml +4 -3
- package/rules/tool-poisoning/ATR-2026-00494-garak-exploitation-mixedunassigned.yaml +5 -3
- package/rules/tool-poisoning/ATR-2026-00513-package-hallucination-exploitation.yaml +9 -7
- package/rules/tool-poisoning/ATR-2026-00521-shell-command-injection-agent-tool-context.yaml +6 -4
- package/rules/tool-poisoning/ATR-2026-00522-sql-injection-natural-language-agent-interface.yaml +4 -3
- package/rules/tool-poisoning/ATR-2026-00526-claude-code-shell-metachar-in-double-quoted-path.yaml +4 -3
- package/rules/tool-poisoning/ATR-2026-00530-ms-agent-shell-tool-unsanitized-argv-rce.yaml +4 -3
- package/rules/tool-poisoning/ATR-2026-00531-praisonai-unauthenticated-agent-api.yaml +1 -2
- package/rules/tool-poisoning/ATR-2026-00533-apache-pinot-mcp-unauthenticated-takeover.yaml +2 -3
- package/rules/tool-poisoning/ATR-2026-00716-ipi-data-destruction-carrier.yaml +5 -3
- package/rules/tool-poisoning/ATR-2026-00720-tool-misuse-privilege-escalation-social.yaml +3 -3
- package/rules/tool-poisoning/ATR-2026-01301-tool-description-exclusive-tool-override.yaml +1 -1
- package/rules/tool-poisoning/ATR-2026-01303-tool-schema-enumeration-social-engineering.yaml +4 -3
- package/rules/tool-poisoning/ATR-2026-01307-mcp-dns-rebinding-attack.yaml +3 -5
- package/rules/tool-poisoning/ATR-2026-01310-mcp-tool-description-compliance-history-exfil.yaml +5 -4
- package/rules/tool-poisoning/ATR-2026-01775-semantic-mcp-tool-manifest-poisoning.yaml +1 -1
- package/rules/tool-poisoning/ATR-2026-01952-praisonai-codemode-sandbox-escape-rce.yaml +4 -2
- package/rules/tool-poisoning/ATR-2026-01953-praisonai-codemode-function-ctor-sandbox-escape.yaml +4 -2
- package/rules/tool-poisoning/ATR-2026-01959-openhuman-shell-allowlist-env-prefix-bypass.yaml +4 -2
- package/rules/tool-poisoning/ATR-2026-01963-praisonai-action-orchestrator-step-target-path-traversal-rce.yaml +3 -2
- package/rules/tool-poisoning/ATR-2026-01965-flowise-custommcp-os-command-rce.yaml +2 -1
- package/rules/tool-poisoning/ATR-2026-01967-deepchat-mermaid-xss-rce-ipc-mcp-register.yaml +4 -2
- package/rules/tool-poisoning/ATR-2026-01970-praisonai-filetools-normpath-path-traversal.yaml +2 -2
- package/rules/tool-poisoning/ATR-2026-01973-anythingllm-logo-endpoint-path-traversal.yaml +2 -2
- package/rules/tool-poisoning/ATR-2026-01978-anythingllm-collector-process-filename-path-traversal-delete.yaml +2 -2
- package/rules/tool-poisoning/ATR-2026-01979-pandasai-prompt-injection-dunder-sandbox-escape-rce.yaml +6 -2
- package/rules/tool-poisoning/ATR-2026-01980-agentic-flow-mcp-tool-param-command-injection.yaml +4 -2
- package/rules/tool-poisoning/ATR-2026-01982-dbt-mcp-node-selection-argument-injection.yaml +2 -2
- package/rules/tool-poisoning/ATR-2026-01983-mcp-for-stata-log-file-name-command-injection.yaml +4 -2
- package/rules/tool-poisoning/ATR-2026-01985-mcp-connect-bridge-unauth-process-spawn-rce.yaml +2 -1
- package/rules/tool-poisoning/ATR-2026-01987-langroid-sqlchatagent-prompt-to-sql-rce.yaml +4 -2
- package/rules/tool-poisoning/ATR-2026-02102-html-injection-tool-arg-approval-ui-xss.yaml +1 -1
- package/rules/tool-poisoning/ATR-2026-02141-mcp-server-config-command-execution.yaml +1 -1
- package/rules/tool-poisoning/ATR-2026-02233-unscoped-destructive-db-request-nl.yaml +1 -1
- package/rules/tool-poisoning/ATR-2026-02870-invisible-control-before-directive.yaml +94 -0
|
@@ -15,10 +15,9 @@ references:
|
|
|
15
15
|
- LLM02:2025
|
|
16
16
|
- LLM08:2025
|
|
17
17
|
owasp_agentic:
|
|
18
|
-
-
|
|
19
|
-
-
|
|
18
|
+
- ASI03:2026
|
|
19
|
+
- ASI06:2026
|
|
20
20
|
mitre_atlas:
|
|
21
|
-
- AML.T0024 - Exfiltration via AI Inference API
|
|
22
21
|
- AML.T0057 - LLM Data Leakage
|
|
23
22
|
mitre_attack:
|
|
24
23
|
- T1530 - Data from Cloud Storage Object
|
|
@@ -1,9 +1,9 @@
|
|
|
1
1
|
title: Data Exfiltration via Markdown Image and Link URL Injection
|
|
2
2
|
id: ATR-2026-00501
|
|
3
|
-
rule_version:
|
|
3
|
+
rule_version: 3
|
|
4
4
|
status: experimental
|
|
5
5
|
description: |
|
|
6
|
-
Detects
|
|
6
|
+
Detects attacker-controlled URLs that carry extracted data to an external endpoint: the canonical indirect-injection exfiltration vector, where the agent is told to fetch a URL or to render markdown whose query string carries sensitive context, so that the client or a fetch tool sends that data to the attacker. Covers, on the input side: markdown image or link with data-bearing query parameters, tracking pixel embedding, "encode and send to" redirect instructions, diagram/image references with data-bearing URLs, and fetch instructions whose query value is a template placeholder for the model's own context ({{system_prompt}}, ${conversation}, ...). On the output side (agent_output): the model emitting such a markdown image or link. Grounded in promptfoo's data-exfil plugin: the injected instruction documented in promptfoo/promptfoo site/docs/red-team/plugins/data-exfil.md ("## Example") and the two exfiltration payloads its grader rubric names (src/redteam/plugins/dataExfil.ts lines 23-24, repeated in the docs table), identical at commits 5f89b7c86ea04e5c03fbe7789dd0e47aed05bf43 and ea8b3d073a63769f7be243ac3c3460f72881a930. Those three are the vendor true positives below; the rest are ATR-authored and labelled synthetic.
|
|
7
7
|
author: ATR Community (vendor-corpus-import)
|
|
8
8
|
date: '2026-05-12'
|
|
9
9
|
schema_version: '0.1'
|
|
@@ -66,6 +66,8 @@ tags:
|
|
|
66
66
|
subcategory: markdown-url-injection
|
|
67
67
|
scan_target: llm_io
|
|
68
68
|
confidence: medium
|
|
69
|
+
source: vendor-test-suite
|
|
70
|
+
vendor_sources: promptfoo
|
|
69
71
|
agent_source:
|
|
70
72
|
type: llm_io
|
|
71
73
|
framework:
|
|
@@ -98,6 +100,18 @@ detection:
|
|
|
98
100
|
operator: regex
|
|
99
101
|
value: (?i)(include|add|reference|embed).{0,30}(relevant\s+)?(diagrams?|images?|charts?|figures?|screenshots?).{0,30}(by\s+referencing|at|from|via).{0,30}https?://[a-z0-9._-]+\.[a-z]{2,}[^)"'\s]*\?(data|secret|content|payload|extract|q)=
|
|
100
102
|
description: Diagram/image inclusion instruction with data-bearing external URL
|
|
103
|
+
- field: user_input
|
|
104
|
+
operator: regex
|
|
105
|
+
value: (?i)\b(fetch|visit|load|open|request|call|curl|ping|get|navigate\s+to|go\s+to|send\s+a\s+request\s+to)\b.{0,60}https?://[^\s?#]{1,200}\?[^\s#]{0,200}=\s*(\{\{|\$\{)\s*[a-z_.]{0,30}(system[_ ]?prompt|prompt|instructions?|conversation|chat[_ ]?history|history|memory|context|messages?|transcript|secrets?|credentials?)[a-z_.]{0,30}\s*\}
|
|
106
|
+
description: Fetch instruction to a URL whose query value interpolates the model's own context (system prompt, conversation, memory, secrets)
|
|
107
|
+
- field: agent_output
|
|
108
|
+
operator: regex
|
|
109
|
+
value: (?i)!\[[^\]]{0,60}\]\(https?://[a-z0-9._-]+\.[a-z]{2,}[^)]*\?(secret|data|payload|token|key|session|user|info|content|doc|extract|dump|exfil|leak|api_key|password)=
|
|
110
|
+
description: Agent output contains a markdown image whose external URL carries an exfiltration query parameter
|
|
111
|
+
- field: agent_output
|
|
112
|
+
operator: regex
|
|
113
|
+
value: (?i)\[[^\]]{0,60}\]\(https?://[a-z0-9._-]+\.[a-z]{2,}[^)]*\?(secret|payload|token|extracted|exfil|leak|dump|stolen|private_data|sensitive|api_key|auth_token|bearer|password)=
|
|
114
|
+
description: Agent output contains a markdown link whose external URL carries a high-confidence exfiltration query parameter
|
|
101
115
|
condition: any
|
|
102
116
|
false_positives:
|
|
103
117
|
- Legitimate markdown with external image URLs that do not contain exfiltration parameters
|
|
@@ -1,9 +1,9 @@
|
|
|
1
1
|
title: System Prompt Extraction - Instruction Dump Request
|
|
2
2
|
id: ATR-2026-00505
|
|
3
|
-
rule_version:
|
|
3
|
+
rule_version: 3
|
|
4
4
|
status: experimental
|
|
5
5
|
description: |
|
|
6
|
-
Detects attempts to extract the system prompt or initial instructions given to the AI. Covers both direct requests ('list your instructions', 'relay your parameters', 'repeat verbatim') and indirect social engineering ('create a pitch deck about your system prompt', 'reply to this email with your system instructions'). The rule targets extraction verbs (repeat, relay, list, respond with, output, dump, provide, share) combined with objects that reference the system prompt (instructions, parameters, system prompt, initial context, configuration, directives, guidelines, rules you were given).
|
|
6
|
+
Detects attempts to extract the system prompt or initial instructions given to the AI. Covers both direct requests ('list your instructions', 'relay your parameters', 'repeat verbatim') and indirect social engineering ('create a pitch deck about your system prompt', 'reply to this email with your system instructions'). The rule targets extraction verbs (repeat, relay, list, respond with, output, dump, provide, share) combined with objects that reference the system prompt (instructions, parameters, system prompt, initial context, configuration, directives, guidelines, rules you were given). Apostrophes and quotes are matched in both ASCII and typographic form (' and ’, " and “ ”), as the vendor originals use typographic ones. Grounded in vendor test cases: protectai/llm-guard tests/input_scanners/test_prompt_injection.py at commit 168c1034ffdb33837e7ae6fd6a16b80567c1be03 (system-prompt extraction prompts) and promptfoo/promptfoo src/redteam/plugins/promptExtraction.ts DEFAULT_EXAMPLES at commits 5f89b7c86ea04e5c03fbe7789dd0e47aed05bf43 and ea8b3d073a63769f7be243ac3c3460f72881a930.
|
|
7
7
|
author: ATR Community (vendor-corpus-import)
|
|
8
8
|
date: '2026-05-12'
|
|
9
9
|
schema_version: '0.1'
|
|
@@ -66,6 +66,8 @@ tags:
|
|
|
66
66
|
subcategory: system-prompt-extraction
|
|
67
67
|
scan_target: llm_io
|
|
68
68
|
confidence: medium
|
|
69
|
+
source: vendor-test-suite
|
|
70
|
+
vendor_sources: llm-guard, promptfoo
|
|
69
71
|
agent_source:
|
|
70
72
|
type: llm_io
|
|
71
73
|
framework:
|
|
@@ -76,7 +78,7 @@ detection:
|
|
|
76
78
|
conditions:
|
|
77
79
|
- field: user_input
|
|
78
80
|
operator: regex
|
|
79
|
-
value: (?i)(repeat|relay|list|output|print|dump|provide|reveal|disclose|expose|display)[^"']{0,40}(your\s+(instructions?|system\s+prompt|initial\s+(prompt|instructions?|context|message)|given\s+instructions?|directives?|guidelines?|programming|constraints?|setup\s+instructions?)|the\s+system\s+(prompt|instructions?|message)|all\s+of\s+your\s+instructions?|every\s+(instruction|rule|directive|guideline|constraint)\s+you\s+(have\s+been|were))
|
|
81
|
+
value: (?i)(repeat|relay|list|output|print|dump|provide|reveal|disclose|expose|display)[^"'“”‘’]{0,40}(your\s+(instructions?|system\s+prompt|initial\s+(prompt|instructions?|context|message)|given\s+instructions?|directives?|guidelines?|programming|constraints?|setup\s+instructions?)|the\s+system\s+(prompt|instructions?|message)|all\s+of\s+your\s+instructions?|every\s+(instruction|rule|directive|guideline|constraint)\s+you\s+(have\s+been|were))
|
|
80
82
|
description: Extraction verb targeting AI system instructions or prompt (possessive 'your' required or explicit 'system prompt/message')
|
|
81
83
|
- field: user_input
|
|
82
84
|
operator: regex
|
|
@@ -100,7 +102,7 @@ detection:
|
|
|
100
102
|
description: Reply-to-email with system instructions exfiltration
|
|
101
103
|
- field: content
|
|
102
104
|
operator: regex
|
|
103
|
-
value: (?i)(?:(?:relay|list|dump|recite|enumerate|repeat|reveal|return|show|provide)\b[\s\S]{0,40}\byour\s+system(?:'?s)?\s+(?:prompt|instructions?|parameters?|message|directives?|config)|(?:directives?|guidelines?|instructions?|rules?)\s+you\s+(?:were|was)\s+given)
|
|
105
|
+
value: (?i)(?:(?:relay|list|dump|recite|enumerate|repeat|reveal|return|show|provide)\b[\s\S]{0,40}\byour\s+system(?:['’]?s)?\s+(?:prompt|instructions?|parameters?|message|directives?|config)|(?:directives?|guidelines?|instructions?|rules?)\s+you\s+(?:were|was)\s+given)
|
|
104
106
|
description: Extraction via synonym (relay/list your system parameters; directives/guidelines you were given)
|
|
105
107
|
condition: any
|
|
106
108
|
false_positives:
|
|
@@ -12,19 +12,20 @@ maturity: test
|
|
|
12
12
|
severity: high
|
|
13
13
|
references:
|
|
14
14
|
owasp_llm:
|
|
15
|
-
-
|
|
15
|
+
- LLM05:2025
|
|
16
16
|
owasp_agentic:
|
|
17
|
-
-
|
|
17
|
+
- ASI05:2026
|
|
18
18
|
mitre_atlas:
|
|
19
|
-
- AML.
|
|
19
|
+
- AML.T0077 - LLM Response Rendering
|
|
20
|
+
- AML.T0050 - Command and Scripting Interpreter
|
|
20
21
|
compliance:
|
|
21
22
|
owasp_agentic:
|
|
22
|
-
- id:
|
|
23
|
-
context:
|
|
24
|
-
strength:
|
|
23
|
+
- id: ASI05:2026
|
|
24
|
+
context: 'The patterns match prompts asking the model to emit a script tag, an on* event-handler attribute, a javascript: URI or a data:text/html URI whose script reads cookies, browser storage, page content or location, or calls fetch, eval or similar functions, and explicit requests for XSS payloads that steal cookies, tokens or credentials. ASI05:2026 builds on LLM05:2025 and covers model output that ends up executed as code; this code would run in the browser that renders the output, not on the agent host, so the fit is partial.'
|
|
25
|
+
strength: partial
|
|
25
26
|
owasp_llm:
|
|
26
|
-
- id:
|
|
27
|
-
context:
|
|
27
|
+
- id: LLM05:2025
|
|
28
|
+
context: 'The patterns match the request side of an output-handling attack: prompts asking the model to emit a script tag, an on* event-handler attribute, or a javascript: / data:text/html URI whose script reads cookies, browser storage, page content or location, or calls fetch, eval or similar functions. LLM05:2025 lists JavaScript or Markdown generated by the LLM and interpreted by the browser, resulting in XSS.'
|
|
28
29
|
strength: primary
|
|
29
30
|
eu_ai_act:
|
|
30
31
|
- article: '15'
|
|
@@ -30,9 +30,11 @@ references:
|
|
|
30
30
|
- https://github.com/Advanced-Excel-MCP/excel-mcp-server
|
|
31
31
|
owasp_llm:
|
|
32
32
|
- LLM02:2025
|
|
33
|
+
- LLM05:2025
|
|
33
34
|
owasp_agentic:
|
|
34
|
-
-
|
|
35
|
+
- ASI02:2026
|
|
35
36
|
mitre_atlas:
|
|
37
|
+
- AML.T0053 - AI Agent Tool Invocation
|
|
36
38
|
- AML.T0057 - LLM Data Leakage
|
|
37
39
|
metadata_provenance:
|
|
38
40
|
cve: human-authored
|
|
@@ -20,11 +20,12 @@ references:
|
|
|
20
20
|
external:
|
|
21
21
|
- https://github.com/jlowin/fastmcp/security/advisories
|
|
22
22
|
owasp_llm:
|
|
23
|
-
-
|
|
23
|
+
- LLM05:2025
|
|
24
24
|
owasp_agentic:
|
|
25
|
-
-
|
|
25
|
+
- ASI05:2026
|
|
26
26
|
mitre_atlas:
|
|
27
|
-
- AML.
|
|
27
|
+
- AML.T0077 - LLM Response Rendering
|
|
28
|
+
- AML.T0050 - Command and Scripting Interpreter
|
|
28
29
|
metadata_provenance:
|
|
29
30
|
cve: human-authored
|
|
30
31
|
cwe: human-authored
|
package/rules/context-exfiltration/ATR-2026-00702-ipi-credential-exfil-via-agent-action.yaml
CHANGED
|
@@ -13,13 +13,15 @@ severity: critical
|
|
|
13
13
|
references:
|
|
14
14
|
owasp_llm:
|
|
15
15
|
- LLM01:2025
|
|
16
|
+
- LLM02:2025
|
|
16
17
|
- LLM06:2025
|
|
17
18
|
owasp_agentic:
|
|
18
19
|
- ASI01:2026
|
|
19
|
-
-
|
|
20
|
+
- ASI02:2026
|
|
20
21
|
mitre_atlas:
|
|
21
22
|
- AML.T0051 - LLM Prompt Injection
|
|
22
23
|
- AML.T0051.001 - Indirect
|
|
24
|
+
- AML.T0086 - Exfiltration via AI Agent Tool Invocation
|
|
23
25
|
compliance:
|
|
24
26
|
owasp_llm:
|
|
25
27
|
- id: LLM01:2025
|
|
@@ -29,8 +31,8 @@ compliance:
|
|
|
29
31
|
context: The attack instructs the agent to disclose stored credentials or API keys to an attacker-controlled destination.
|
|
30
32
|
strength: primary
|
|
31
33
|
owasp_agentic:
|
|
32
|
-
- id:
|
|
33
|
-
context: The agent
|
|
34
|
+
- id: ASI01:2026
|
|
35
|
+
context: The patterns match content the agent reads that tells it to get API keys, passwords or stored credentials and send, email, share or forward them to an outside email address or URL, or that states such an exfiltration objective. ASI01:2026 covers manipulation of an agent's goals through deceptive tool outputs or poisoned external data, and lists indirect prompt injection that redirects an agent to exfiltrate sensitive data or misuse connected tools.
|
|
34
36
|
strength: primary
|
|
35
37
|
nist_ai_rmf:
|
|
36
38
|
- subcategory: MS.2.7
|
|
@@ -13,13 +13,15 @@ severity: critical
|
|
|
13
13
|
references:
|
|
14
14
|
owasp_llm:
|
|
15
15
|
- LLM01:2025
|
|
16
|
+
- LLM02:2025
|
|
16
17
|
- LLM06:2025
|
|
17
18
|
owasp_agentic:
|
|
18
19
|
- ASI01:2026
|
|
19
|
-
-
|
|
20
|
+
- ASI02:2026
|
|
20
21
|
mitre_atlas:
|
|
21
22
|
- AML.T0051 - LLM Prompt Injection
|
|
22
23
|
- AML.T0051.001 - Indirect
|
|
24
|
+
- AML.T0086 - Exfiltration via AI Agent Tool Invocation
|
|
23
25
|
compliance:
|
|
24
26
|
owasp_llm:
|
|
25
27
|
- id: LLM01:2025
|
|
@@ -29,8 +31,8 @@ compliance:
|
|
|
29
31
|
context: The agent is induced to disclose sensitive financial data (payment methods, bank accounts, card info) to an attacker.
|
|
30
32
|
strength: primary
|
|
31
33
|
owasp_agentic:
|
|
32
|
-
- id:
|
|
33
|
-
context:
|
|
34
|
+
- id: ASI01:2026
|
|
35
|
+
context: The patterns match content the agent reads that tells it to retrieve saved payment methods, bank account or card details, or financial reports and email, send, share or forward them, or that states an objective of getting the user's bank, card or payment data. ASI01:2026 covers manipulation of an agent's goals through deceptive tool outputs or poisoned external data, and lists indirect prompt injection that redirects an agent to exfiltrate sensitive data or misuse connected tools.
|
|
34
36
|
strength: primary
|
|
35
37
|
nist_ai_rmf:
|
|
36
38
|
- subcategory: MS.2.7
|
|
@@ -13,13 +13,15 @@ severity: critical
|
|
|
13
13
|
references:
|
|
14
14
|
owasp_llm:
|
|
15
15
|
- LLM01:2025
|
|
16
|
+
- LLM02:2025
|
|
16
17
|
- LLM06:2025
|
|
17
18
|
owasp_agentic:
|
|
18
19
|
- ASI01:2026
|
|
19
|
-
-
|
|
20
|
+
- ASI02:2026
|
|
20
21
|
mitre_atlas:
|
|
21
22
|
- AML.T0051 - LLM Prompt Injection
|
|
22
23
|
- AML.T0051.001 - Indirect
|
|
24
|
+
- AML.T0086 - Exfiltration via AI Agent Tool Invocation
|
|
23
25
|
compliance:
|
|
24
26
|
owasp_llm:
|
|
25
27
|
- id: LLM01:2025
|
|
@@ -29,8 +31,8 @@ compliance:
|
|
|
29
31
|
context: The agent is induced to disclose sensitive health and genetic information to an attacker-controlled destination.
|
|
30
32
|
strength: primary
|
|
31
33
|
owasp_agentic:
|
|
32
|
-
- id:
|
|
33
|
-
context:
|
|
34
|
+
- id: ASI01:2026
|
|
35
|
+
context: The patterns match content the agent reads that tells it to download health records, lab reports or 23andMe genetic data and email, send, share or forward them, or to delete all clinical documents tied to a diagnosis. ASI01:2026 covers manipulation of an agent's goals through deceptive tool outputs or poisoned external data, and lists indirect prompt injection that redirects an agent to exfiltrate sensitive data or misuse connected tools.
|
|
34
36
|
strength: primary
|
|
35
37
|
nist_ai_rmf:
|
|
36
38
|
- subcategory: MS.2.7
|
|
@@ -13,13 +13,15 @@ severity: high
|
|
|
13
13
|
references:
|
|
14
14
|
owasp_llm:
|
|
15
15
|
- LLM01:2025
|
|
16
|
+
- LLM02:2025
|
|
16
17
|
- LLM06:2025
|
|
17
18
|
owasp_agentic:
|
|
18
19
|
- ASI01:2026
|
|
19
|
-
-
|
|
20
|
+
- ASI02:2026
|
|
20
21
|
mitre_atlas:
|
|
21
22
|
- AML.T0051 - LLM Prompt Injection
|
|
22
23
|
- AML.T0051.001 - Indirect
|
|
24
|
+
- AML.T0086 - Exfiltration via AI Agent Tool Invocation
|
|
23
25
|
compliance:
|
|
24
26
|
owasp_llm:
|
|
25
27
|
- id: LLM01:2025
|
|
@@ -29,8 +31,8 @@ compliance:
|
|
|
29
31
|
context: The agent is induced to disclose personal location data, home/work addresses, or browsing history to an attacker.
|
|
30
32
|
strength: primary
|
|
31
33
|
owasp_agentic:
|
|
32
|
-
- id:
|
|
33
|
-
context:
|
|
34
|
+
- id: ASI01:2026
|
|
35
|
+
context: The patterns match content the agent reads that tells it to get the user's current location from Maps, saved home or work addresses, or search and browsing history and email, send, share or forward them. ASI01:2026 covers manipulation of an agent's goals through deceptive tool outputs or poisoned external data, and lists indirect prompt injection that redirects an agent to exfiltrate sensitive data or misuse connected tools.
|
|
34
36
|
strength: primary
|
|
35
37
|
nist_ai_rmf:
|
|
36
38
|
- subcategory: MS.2.7
|
|
@@ -13,13 +13,15 @@ severity: critical
|
|
|
13
13
|
references:
|
|
14
14
|
owasp_llm:
|
|
15
15
|
- LLM01:2025
|
|
16
|
+
- LLM02:2025
|
|
16
17
|
- LLM06:2025
|
|
17
18
|
owasp_agentic:
|
|
18
19
|
- ASI01:2026
|
|
19
|
-
-
|
|
20
|
+
- ASI02:2026
|
|
20
21
|
mitre_atlas:
|
|
21
22
|
- AML.T0051 - LLM Prompt Injection
|
|
22
23
|
- AML.T0051.001 - Indirect
|
|
24
|
+
- AML.T0086 - Exfiltration via AI Agent Tool Invocation
|
|
23
25
|
- AML.T0088 - Generate Deepfakes
|
|
24
26
|
compliance:
|
|
25
27
|
owasp_llm:
|
|
@@ -30,8 +32,8 @@ compliance:
|
|
|
30
32
|
context: The agent is induced to generate and exfiltrate deepfake audio or biometric media to an attacker-controlled destination.
|
|
31
33
|
strength: primary
|
|
32
34
|
owasp_agentic:
|
|
33
|
-
- id:
|
|
34
|
-
context:
|
|
35
|
+
- id: ASI01:2026
|
|
36
|
+
context: The patterns match content the agent reads that tells it to generate a deepfake or voice clone from the user's recordings, process a recording, or fetch ID, passport or driver's license scans, and send the result out. ASI01:2026 covers manipulation of an agent's goals through deceptive tool outputs or poisoned external data, and lists indirect prompt injection that redirects an agent to exfiltrate sensitive data or misuse connected tools.
|
|
35
37
|
strength: primary
|
|
36
38
|
nist_ai_rmf:
|
|
37
39
|
- subcategory: MS.2.7
|
package/rules/context-exfiltration/ATR-2026-00707-ipi-file-exfil-with-destroy-or-tamper.yaml
CHANGED
|
@@ -13,13 +13,16 @@ severity: critical
|
|
|
13
13
|
references:
|
|
14
14
|
owasp_llm:
|
|
15
15
|
- LLM01:2025
|
|
16
|
+
- LLM02:2025
|
|
16
17
|
- LLM06:2025
|
|
17
18
|
owasp_agentic:
|
|
18
19
|
- ASI01:2026
|
|
19
|
-
-
|
|
20
|
+
- ASI02:2026
|
|
20
21
|
mitre_atlas:
|
|
21
22
|
- AML.T0051 - LLM Prompt Injection
|
|
22
23
|
- AML.T0051.001 - Indirect
|
|
24
|
+
- AML.T0086 - Exfiltration via AI Agent Tool Invocation
|
|
25
|
+
- AML.T0101 - Data Destruction via AI Agent Tool Invocation
|
|
23
26
|
compliance:
|
|
24
27
|
owasp_llm:
|
|
25
28
|
- id: LLM01:2025
|
|
@@ -29,8 +32,8 @@ compliance:
|
|
|
29
32
|
context: The combined attack causes sensitive file disclosure followed by destruction or falsification of the source.
|
|
30
33
|
strength: primary
|
|
31
34
|
owasp_agentic:
|
|
32
|
-
- id:
|
|
33
|
-
context:
|
|
35
|
+
- id: ASI01:2026
|
|
36
|
+
context: The patterns match content the agent reads that tells it to take a file from Google Drive, Dropbox, OneDrive or other cloud storage, or a configuration, credential, secret or backup file, and then delete, edit or tamper with the original. ASI01:2026 covers manipulation of an agent's goals through deceptive tool outputs or poisoned external data, and lists indirect prompt injection that redirects an agent to exfiltrate sensitive data or misuse connected tools.
|
|
34
37
|
strength: primary
|
|
35
38
|
nist_ai_rmf:
|
|
36
39
|
- subcategory: MS.2.7
|
|
@@ -19,10 +19,14 @@ severity: critical
|
|
|
19
19
|
references:
|
|
20
20
|
owasp_llm:
|
|
21
21
|
- LLM02:2025
|
|
22
|
+
- LLM05:2025
|
|
22
23
|
owasp_agentic:
|
|
23
24
|
- ASI03:2026
|
|
25
|
+
- ASI02:2026
|
|
24
26
|
mitre_atlas:
|
|
25
|
-
- AML.
|
|
27
|
+
- AML.T0055 - Unsecured Credentials
|
|
28
|
+
- AML.T0049 - Exploit Public-Facing Application
|
|
29
|
+
- AML.T0053 - AI Agent Tool Invocation
|
|
26
30
|
mitre_attack:
|
|
27
31
|
- T1552.005 - Cloud Instance Metadata API
|
|
28
32
|
compliance:
|
|
@@ -20,10 +20,13 @@ severity: high
|
|
|
20
20
|
references:
|
|
21
21
|
owasp_llm:
|
|
22
22
|
- LLM02:2025
|
|
23
|
+
- LLM05:2025
|
|
23
24
|
owasp_agentic:
|
|
25
|
+
- ASI02:2026
|
|
24
26
|
- ASI03:2026
|
|
25
27
|
mitre_atlas:
|
|
26
|
-
- AML.
|
|
28
|
+
- AML.T0049 - Exploit Public-Facing Application
|
|
29
|
+
- AML.T0053 - AI Agent Tool Invocation
|
|
27
30
|
mitre_attack:
|
|
28
31
|
- T1090 - Proxy
|
|
29
32
|
compliance:
|
|
@@ -19,10 +19,13 @@ severity: critical
|
|
|
19
19
|
references:
|
|
20
20
|
owasp_llm:
|
|
21
21
|
- LLM02:2025
|
|
22
|
+
- LLM05:2025
|
|
22
23
|
owasp_agentic:
|
|
24
|
+
- ASI02:2026
|
|
23
25
|
- ASI03:2026
|
|
24
26
|
mitre_atlas:
|
|
25
|
-
- AML.
|
|
27
|
+
- AML.T0049 - Exploit Public-Facing Application
|
|
28
|
+
- AML.T0053 - AI Agent Tool Invocation
|
|
26
29
|
mitre_attack:
|
|
27
30
|
- T1552.005 - Cloud Instance Metadata API
|
|
28
31
|
compliance:
|
package/rules/context-exfiltration/ATR-2026-01924-system-instruction-extraction-reformat.yaml
CHANGED
|
@@ -15,18 +15,15 @@ references:
|
|
|
15
15
|
- LLM07:2025
|
|
16
16
|
- LLM01:2025
|
|
17
17
|
owasp_agentic:
|
|
18
|
-
- ASI05:2026
|
|
19
18
|
- ASI01:2026
|
|
20
19
|
mitre_atlas:
|
|
20
|
+
- AML.T0056 - Extract LLM System Prompt
|
|
21
21
|
- AML.T0051 - LLM Prompt Injection
|
|
22
22
|
- AML.T0057 - LLM Data Leakage
|
|
23
23
|
research:
|
|
24
24
|
- https://github.com/HumanCompatibleAI/tensor-trust
|
|
25
25
|
compliance:
|
|
26
26
|
owasp_agentic:
|
|
27
|
-
- id: ASI05:2026
|
|
28
|
-
context: Reformat-based extraction of the agent's hidden instructions discloses sensitive system configuration, satisfying ASI05:2026 Sensitive Information Disclosure.
|
|
29
|
-
strength: primary
|
|
30
27
|
- id: ASI01:2026
|
|
31
28
|
context: Reciting the defense prompt as a 'summary' subverts the agent's confidentiality goal, a goal-hijack via laundered reformatting.
|
|
32
29
|
strength: secondary
|
|
@@ -12,11 +12,13 @@ maturity: test
|
|
|
12
12
|
severity: critical
|
|
13
13
|
references:
|
|
14
14
|
owasp_llm:
|
|
15
|
-
-
|
|
15
|
+
- LLM02:2025
|
|
16
|
+
- LLM05:2025
|
|
16
17
|
owasp_agentic:
|
|
17
|
-
-
|
|
18
|
+
- ASI02:2026
|
|
18
19
|
mitre_atlas:
|
|
19
20
|
- AML.T0049 - Exploit Public-Facing Application
|
|
21
|
+
- AML.T0098 - AI Agent Tool Credential Harvesting
|
|
20
22
|
mitre_attack:
|
|
21
23
|
- T1190 - Exploit Public-Facing Application
|
|
22
24
|
cve:
|
package/rules/context-exfiltration/ATR-2026-01957-m365-copilot-searchleak-open-redirect-exfil.yaml
CHANGED
|
@@ -12,10 +12,14 @@ maturity: test
|
|
|
12
12
|
severity: critical
|
|
13
13
|
references:
|
|
14
14
|
owasp_llm:
|
|
15
|
-
-
|
|
15
|
+
- LLM01:2025
|
|
16
|
+
- LLM02:2025
|
|
16
17
|
owasp_agentic:
|
|
17
|
-
-
|
|
18
|
+
- ASI01:2026
|
|
19
|
+
- ASI02:2026
|
|
18
20
|
mitre_atlas:
|
|
21
|
+
- AML.T0051 - LLM Prompt Injection
|
|
22
|
+
- AML.T0077 - LLM Response Rendering
|
|
19
23
|
- AML.T0049 - Exploit Public-Facing Application
|
|
20
24
|
mitre_attack:
|
|
21
25
|
- T1190 - Exploit Public-Facing Application
|
|
@@ -12,11 +12,14 @@ maturity: test
|
|
|
12
12
|
severity: critical
|
|
13
13
|
references:
|
|
14
14
|
owasp_llm:
|
|
15
|
+
- LLM02:2025
|
|
15
16
|
- LLM06:2025
|
|
16
17
|
owasp_agentic:
|
|
17
|
-
-
|
|
18
|
+
- ASI03:2026
|
|
19
|
+
- ASI02:2026
|
|
18
20
|
mitre_atlas:
|
|
19
21
|
- AML.T0049 - Exploit Public-Facing Application
|
|
22
|
+
- AML.T0098 - AI Agent Tool Credential Harvesting
|
|
20
23
|
mitre_attack:
|
|
21
24
|
- T1190 - Exploit Public-Facing Application
|
|
22
25
|
cve:
|
|
@@ -12,11 +12,15 @@ maturity: test
|
|
|
12
12
|
severity: critical
|
|
13
13
|
references:
|
|
14
14
|
owasp_llm:
|
|
15
|
+
- LLM01:2025
|
|
16
|
+
- LLM02:2025
|
|
15
17
|
- LLM06:2025
|
|
16
18
|
owasp_agentic:
|
|
17
|
-
-
|
|
19
|
+
- ASI01:2026
|
|
20
|
+
- ASI02:2026
|
|
18
21
|
mitre_atlas:
|
|
19
|
-
- AML.
|
|
22
|
+
- AML.T0051.001 - Indirect
|
|
23
|
+
- AML.T0086 - Exfiltration via AI Agent Tool Invocation
|
|
20
24
|
mitre_attack:
|
|
21
25
|
- T1190 - Exploit Public-Facing Application
|
|
22
26
|
cve:
|
package/rules/context-exfiltration/ATR-2026-02304-preapproved-domain-encoded-path-exfil.yaml
CHANGED
|
@@ -75,7 +75,7 @@ detection:
|
|
|
75
75
|
description: WebFetch-style URL to huggingface.co/hf.co whose path contains a base64-padded (trailing '=') encoded segment -- not a normal repo/file name shape
|
|
76
76
|
- field: content
|
|
77
77
|
operator: regex
|
|
78
|
-
value: (?i)
|
|
78
|
+
value: (?i)\b(?:WebFetch|fetch(?:_url)?|curl|wget|GET|POST|download(?:ing)?|(?:send|issue|make)\s+(?:a\s+|an\s+)?(?:web)?fetch|request(?:ing)?)\b[\s\S]{0,30}?\bhuggingface\.co\b[\s\S]{0,40}?\b(?:encode|base64|exfiltrat\w*|covert\s+channel|out-of-band\s+channel)\b
|
|
79
79
|
description: Natural-language framing describing encoding/exfiltrating data via a huggingface.co request -- catches the instruction-level technique before a concrete URL is constructed. Requires an actual fetch/request-action cue (WebFetch, fetch, curl, download, 'issue a fetch', etc.) within 30 chars BEFORE the domain, and the encode/base64/exfiltrate trigger within a tightened 40 chars AFTER the domain, so ordinary prose merely co-mentioning huggingface.co and base64/encode in the same sentence (with no request framing) does not fire
|
|
80
80
|
false_positives:
|
|
81
81
|
- An ordinary WebFetch/download URL to a real HuggingFace model or dataset repository, e.g. https://huggingface.co/bert-base-uncased/resolve/main/config.json -- model/file names are short hyphenated slugs, not a 16+ character base64-padded blob
|
|
@@ -42,7 +42,7 @@ compliance:
|
|
|
42
42
|
context: Poisoned knowledge base entries injected into the supply chain of training or retrieval data satisfy the LLM03:2025 Supply Chain Vulnerabilities category at the data tier.
|
|
43
43
|
strength: secondary
|
|
44
44
|
- id: LLM08:2025
|
|
45
|
-
context:
|
|
45
|
+
context: 'The patterns match hidden directives in tool output (the rule targets retrieved documents and knowledge-base entries): fake [SYSTEM] or <system> tags, ignore-previous-instructions overrides, retrieval-triggered phrases, BEGIN HIDDEN INSTRUCTIONS blocks, ''for internal use only'' sections, concealment and stealth-action directives, mode switches, role-play and append-to-every-response directives, injected chat turns, prompt-template delimiters and exfiltration commands with a target address. LLM08:2025, which covers systems using Retrieval Augmented Generation, lists data poisoning from insiders, prompts, data seeding or unverified data providers, leading to manipulated model outputs; the patterns see a poisoned entry when it is returned but not whether it came from a vector store, so the fit is partial.'
|
|
46
46
|
strength: partial
|
|
47
47
|
eu_ai_act:
|
|
48
48
|
- article: '15'
|
package/rules/excessive-autonomy/ATR-2026-00491-garak-agent-breaker-markdown-just-raw-json.yaml
CHANGED
|
@@ -12,19 +12,19 @@ maturity: test
|
|
|
12
12
|
severity: high
|
|
13
13
|
references:
|
|
14
14
|
owasp_llm:
|
|
15
|
-
-
|
|
15
|
+
- LLM07:2025
|
|
16
16
|
owasp_agentic:
|
|
17
|
-
-
|
|
17
|
+
- ASI01:2026
|
|
18
18
|
mitre_atlas:
|
|
19
|
-
- AML.
|
|
19
|
+
- AML.T0084.001 - Tool Definitions
|
|
20
20
|
compliance:
|
|
21
21
|
owasp_agentic:
|
|
22
|
-
- id:
|
|
23
|
-
context:
|
|
24
|
-
strength:
|
|
22
|
+
- id: ASI01:2026
|
|
23
|
+
context: 'The patterns match prompts that ask the agent to turn its self-description or a response into a structured list of tools, to return or list every tool it can use, to analyse each tool for exploits, or that pair a security-researcher framing with the agent''s tools or weaknesses. ASI01:2026 is the closest agentic entry: it covers prompt-based manipulation of an agent''s task selection, but the rule detects a reconnaissance request rather than a changed goal, so the fit is partial.'
|
|
24
|
+
strength: partial
|
|
25
25
|
owasp_llm:
|
|
26
|
-
- id:
|
|
27
|
-
context:
|
|
26
|
+
- id: LLM07:2025
|
|
27
|
+
context: The patterns match requests for the agent to list or dump its own tools, functions and capabilities, or to describe them for exploit analysis. LLM07:2025 covers disclosure of the system prompts or instructions used to steer the model, including exposure of sensitive functionality, which an attacker can use to facilitate other attacks.
|
|
28
28
|
strength: primary
|
|
29
29
|
eu_ai_act:
|
|
30
30
|
- article: '15'
|