When a user can type into a model that holds tools, data or account permissions, the prompt box becomes an execution surface, and ATT&CK now tracks it as one. MITRE ATT&CK T1699 Direct Prompt Injection, added in ATT&CK v20 under Execution (TA0002) on the Windows and SaaS platforms, describes adversaries entering malicious prompts straight into an LLM's user interface to bypass safeguards, override earlier instructions or coerce the model into unauthorised behaviour. This page takes the ATT&CK view: the procedures ATT&CK records, what to log and alert on, the four mitigations ATT&CK maps, and how to test. It is for SOC analysts, detection engineers and teams that run LLM chatbots, support assistants or coding agents. For the wider topic, including hiding techniques and screening, see the Prompt Injection Guide.
Key takeaways
- The attacker is the user. Direct injection arrives through the interface you exposed, so authentication and session identity are your best evidence, unlike indirect injection where the instructions ride in on data.
- Persona claims are the recorded tradecraft. In ATT&CK's procedure for campaign C0062, operators told Claude they worked for a cybersecurity firm doing defensive testing to authorise restricted operations.
- All four ATT&CK mitigations sit outside the model. M1018, M1038, M1026 and M1017 each say the same thing in different words: the prompt must never set or raise the authorisation context.
- Harm scales with what the model can do. A chatbot that only talks causes embarrassment; an assistant with write access to account APIs can reset passwords for an attacker.
- Detection lives in AI telemetry. Prompt and response logs, guardrail verdicts and tool-call authorisation decisions, tied to an authenticated identity, are the data sources that make this technique visible.
What T1699 covers in ATT&CK v20
ATT&CK describes prompts designed to bypass safeguards, manipulate context, override previous instructions or coerce the LLM into unauthorised behaviour. It names two goals: making the model produce content its guardrails prohibit (which links to T1683 Generate Content) and inducing the system to use its capabilities in unintended or prohibited ways. It names two methods: telling the model to ignore earlier instructions or safety rules, and impersonating a role such as a researcher or privileged user. ATT&CK grounds the definition in the NIST glossary, which takes its definition from NIST AI 100-2 E2025, and in OWASP LLM01:2025.
| Term | Source | How it relates to T1699 |
|---|---|---|
| Direct prompt injection | NIST AI 100-2 E2025 (Final, March 2025) | Defined as a direct prompting attack in which the attacker exploits prompt injection; the definition ATT&CK cites |
| Direct Prompt Injections | OWASP LLM01:2025 | A user's prompt directly alters model behaviour, intentionally or by accident |
| AML.T0051.000 Direct | MITRE ATLAS | The AI-system view of the same behaviour, a sub-technique of AML.T0051 LLM Prompt Injection |
| AML.T0054 LLM Jailbreak | MITRE ATLAS | Overriding safety or alignment behaviour; often the goal of a direct injection |
| T1698 Indirect Prompt Injection | MITRE ATT&CK v20 | The sibling technique: instructions arrive in content the model ingests, not from the user |
The practical boundary: if the adversary has to log in, open a chat or call your model endpoint to deliver the instruction, it is T1699. If they plant it in an email, web page, ticket or file for the model to read later, it is T1698. See AML.T0051 LLM Prompt Injection and the LLM Jailbreaks Guide for the AI-centred treatment.
How adversaries have used it
Procedures recorded in ATT&CK
- Anthropic AI-orchestrated Campaign (C0062): ATT&CK records that the adversary entered a prompt claiming the user was an employee of a cybersecurity firm and that Claude was being used for defensive testing, to authorise restricted operations. Anthropic's November 2025 report attributes the September 2025 activity, with high confidence, to a Chinese state-sponsored group it tracks as GTG-1002, says roughly thirty organisations were targeted with success in a small number of cases, and describes operators splitting the attack into small, innocuous-looking tasks so the model never saw the full purpose. Anthropic banned accounts as it identified them, notified affected entities and built better classifiers. See the Anthropic GTG-1002 campaign analysis.
- AI-Assisted Breach of Mexico's Government Infrastructure (C0064): ATT&CK records the adversary using a file-write operation inside a prompt to make Claude Code create a
claude.mdfile holding a pre-written 1,084-line document of penetration testing material used in the campaign. The lesson for defenders is that a coding agent's project instruction files are part of the prompt surface: a direct prompt can write persistent instructions the agent reads in every later session.
Other reported cases
- Customer chatbots coerced off-task: in December 2023 a visitor told a car dealer's ChatGPT-based sales chatbot to agree with anything the customer said and to call its answers legally binding, and it accepted a $1 offer for a new SUV; no sale was honoured and the bot was taken offline. See the Chevrolet dealer chatbot analysis. In January 2024 a DPD customer got the firm's support bot to swear and criticise the company; DPD disabled the AI element after what it called an error following a system update. See the DPD chatbot incident analysis.
- Support assistant with account powers: one of ATT&CK's own references, a June 2026 report by The Cyber Security Guru, describes attackers reportedly asking Meta's AI support assistant in plain language to link an attacker-controlled email to Instagram accounts and trigger password resets, because the assistant had write access to account-management APIs without an out-of-band verification step. Meta said it fixed an issue that let an external party request password reset emails for some users and that its systems were not breached.
- Failed attempts are evidence too: Google Threat Intelligence Group's January 2025 report on adversarial misuse of generative AI found government-backed actors pasting publicly available jailbreak prompts with small changes, or rephrasing and resending requests. All the attempts it observed against Gemini failed with safety fallback responses. That repetition pattern is a usable detection signal.
Where the impact comes from
The same prompt has very different consequences depending on what sits behind the model. Use this table to rate each AI application before deciding how much detection it needs.
| Application pattern | What a successful direct injection achieves | Primary control |
|---|---|---|
| Public chatbot, no tools, no private data | Off-brand or prohibited output, false promises, use as a free general model | Output filtering, topic restriction, commitments enforced by application logic |
| Assistant with retrieval over internal data | Disclosure of data the user should not see, system prompt disclosure | Retrieval filtered by the user's own entitlements, not the service account's |
| Support or IT assistant with write APIs | Account changes, resets, refunds, access grants for the attacker | Per-action authorisation outside the model, out-of-band verification for sensitive changes |
| Coding or operations agent with shell and MCP tools | Command execution, credential use, persistent instruction files, attacks on third parties | Sandboxing, tool allowlists, human approval for consequential actions, scoped credentials |
| Public AI service you operate for many tenants | Misuse of your platform for content or operations against others | Abuse classifiers, account-level enforcement, usage pattern analytics |
For the coding agent case, see the AI Coding Agents Security Guide and AML.T0053 AI Agent Tool Invocation.
What to detect and where
ATT&CK v20 maps mitigations to T1699 but, at the time of writing, no detection strategy, so the analytics below are NHI Mgmt Group recommendations built on the technique description and the recorded procedures. They depend on logging every prompt, response, guardrail decision and tool call against an authenticated identity and a session ID.
| Signal | Data source | Why it matters |
|---|---|---|
| Instruction-override language: requests to ignore, forget or replace previous instructions or rules | Prompt logs, input classifier verdicts | The first method ATT&CK names; cheap to flag, noisy alone, strong combined with other signals |
| Role or authority claims: researcher, red teamer, administrator, employee of a security firm, developer mode | Prompt logs, classifier labels | The second method ATT&CK names and the C0062 procedure; compare the claim to the user's real directory role |
| Repeated refusals followed by rephrased or resent requests in one session | Guardrail verdict logs, session analytics | The persistence pattern Google observed; a refusal burst is a better alert than a single refusal |
| Tool call denied by the authorisation layer after a conversational request | Policy engine or gateway decision logs | Shows the model tried to act beyond the user's rights; every denial is worth review |
| Sensitive action requested in conversation: email change, reset, refund, privilege grant | Tool call logs, application audit logs | The Meta pattern; correlate with step-up or out-of-band verification events |
| Writes to agent instruction or memory files from a session | File integrity monitoring, agent tool logs, repository commits | The C0064 pattern; persistent instructions outlive the session |
| Many small, individually routine tasks forming a recon or exploitation chain at machine speed | Tool call sequences, outbound network logs from the agent runtime | The task decomposition Anthropic described; only visible across a whole session or account |
Ship these logs to the SIEM with the user or workload identity attached, not just the application's service account. Without that link you cannot separate one abusive account from a thousand honest ones. See the AI Agent Behaviour Baselining and Anomaly Detection Guide.
Mitigations ATT&CK maps, and how to apply them
| Mitigation | ATT&CK's guidance for T1699 (paraphrased) | Practical implementation |
|---|---|---|
| M1018 User Account Management | Tie AI interactions to authenticated identities, limit AI actions to the initiating user's permissions, and never let prompt content set or raise the authorisation context | Pass the user's token or identity to tools; tools authorise against that identity; no "admin mode" reachable by text |
| M1038 Execution Prevention | Do not let prompts directly authorise consequential actions; enforce authorisation for tools, APIs, commands and resources outside the model | Policy engine or gateway between model and tools; allowlisted tools and parameters per application |
| M1026 Privileged Account Management | Restrict privileged AI capabilities; require explicit authorisation or human approval for administrative or sensitive actions | Separate low and high privilege tools; approval step for resets, payments, deletions and privilege changes |
| M1017 User Training | Train people who run AI systems to recognise manipulation of instructions, roles or safety controls, and to validate consequential AI output independently | Runbooks for reviewing flagged sessions; developers trained that system prompts are guidance, not controls |
NHI Mgmt Group recommendations that sit alongside these: keep commitments such as prices, discounts and refund limits in application code and systems of record; filter outputs before they reach customers; restrict each assistant to its business purpose; make instruction and memory files for coding agents read-only or reviewed; and keep a route to a human so frustrated users are not pushed to game the bot. See the M1038 Execution Prevention and M1018 User Account Management pages.
Where identity fits
Every direct injection that causes real harm ends in a credential being used: the assistant's API token, the agent's cloud role, the MCP server's service account. If that non-human identity holds broader rights than the user talking to it, the prompt is a privilege escalation path. Give each AI application its own scoped identity, prefer delegated user tokens over shared service accounts, keep secrets out of prompts and context, and review agent permissions on a schedule. See the AI Agent Authorisation Guide and Secrets in Prompts.
Rolling it out
- Inventory AI interfaces: list every chatbot, assistant, copilot and agent that accepts user prompts, with the tools, data and identities behind each, and rate it using the impact table above.
- Turn on logging first: capture prompts, responses, guardrail verdicts and tool calls with user identity and session ID; agree retention and access controls, since prompt logs hold personal data.
- Move authorisation out of the model: for the highest-rated application, put a policy check in front of every tool call and run it in log-only mode for two weeks to see what would be denied.
- Enforce and add approvals: switch the policy to enforce, add human or out-of-band approval for sensitive actions, then repeat for the next application.
- Build the analytics: start with refusal bursts, role claims compared to directory role, and authorisation denials; tune on a baseline of normal sessions.
- Roll back safely: keep a feature flag per tool and per assistant so you can disable an action, or the AI element as DPD did, without taking the whole service down.
How to test it
- Authorised red team prompts: run instruction-override, persona and binding-commitment prompts against each assistant before launch and after every model, prompt or tool change, using a written scope and test accounts.
- Privilege tests: as a low-privilege test user, ask the assistant to perform an action only an administrator may perform; the pass condition is a denial from the authorisation layer, logged and alerted, whatever the model says.
- Detection tests: replay a scripted session with repeated refusals and a role claim and confirm the SIEM alert fires within your target time.
- Regression: keep the prompts as a suite that runs in the release pipeline. See AI security regression testing and the AI Agent Security Testing Checklist.
Decision guidance
- Guardrail product or architecture first: input classifiers reduce noise and give detection signal, but they will miss novel phrasing. If the assistant can take actions, fund out-of-model authorisation before a second classifier.
- Anonymous or authenticated access: anonymous chat is acceptable for assistants with no tools and no private data; anything that touches accounts or internal data should require authentication so abuse is attributable.
- Small organisations: keep assistants read-only, use the provider's moderation and logging features, and route all account changes to a human.
- Large organisations and AI providers: central AI gateway with logging and policy, SOC-owned analytics, account-level enforcement and a playbook for banning and notifying, as Anthropic did for C0062.
Measurement
- Coverage: share of AI applications sending prompt, verdict and tool-call logs with user identity to the SIEM.
- Out-of-model enforcement: share of tool calls passing through an authorisation check that does not rely on the model.
- Red team pass rate: share of the standard injection suite blocked or contained per release.
- Time to contain: median minutes from a confirmed abusive session to account suspension or tool disablement.
- Denied sensitive actions reviewed: share of authorisation denials on sensitive tools reviewed within one working day.
Common failure patterns
- The system prompt as the only control: rules written into instructions that a user can talk the model out of, as in the dealer chatbot case.
- Assistant identity broader than the user: a support bot holding account-management write access with no verification step, the pattern in the reported Instagram abuse.
- No logs tied to identity: prompts discarded or logged under one shared service account, so abuse cannot be traced to an account or stopped.
- Testing once at launch: a model, prompt or vendor update changes behaviour, as DPD reported after a system update.
- Trusting role claims: letting "I am a security tester" or "I am the administrator" change what the model will do, the exact C0062 procedure.
- Writable agent instructions: coding agents allowed to create or edit their own instruction files from a prompt, as in C0064.
Framework mapping
| Framework | Reference | Relevance |
|---|---|---|
| MITRE ATT&CK v20 | T1699, TA0002; related T1698, T1683, T1059; mitigations M1018, M1038, M1026, M1017; campaigns C0062, C0064 | Technique definition, procedures and mitigations |
| MITRE ATLAS | AML.T0051.000 Direct, AML.T0054 LLM Jailbreak | AI-system view of the same behaviour |
| OWASP Top 10 for LLM Applications 2025 | LLM01:2025 Prompt Injection | Direct injection definition and mitigation list, including least privilege and human approval |
| NIST AI 100-2 E2025 | Direct prompt injection term | Taxonomy and terminology ATT&CK cites |
| NIST SP 800-53 Rev 5 | AC-3, AC-6, SI-10, SI-4, AU-6 | Access enforcement, least privilege, input validation, monitoring and log review |
| NIST CSF 2.0 | PR.AA-05, DE.CM-09, DE.AE-02 | Least-privilege authorisation, monitoring software and runtime, analysing events |
Practitioner checklist
- Inventory every AI interface that accepts prompts, with the tools, data and identities behind it.
- Log prompts, responses, guardrail verdicts and tool calls with authenticated user identity and session ID.
- Enforce tool and API authorisation in a policy layer outside the model, against the initiating user's rights.
- Require out-of-band verification or human approval for resets, contact changes, payments, deletions and privilege grants.
- Alert on refusal bursts, role claims that do not match directory role, and authorisation denials.
- Make coding agent instruction and memory files read-only or reviewed before use.
- Run an authorised injection test suite before launch and after every model, prompt or tool change.
- Keep per-tool and per-assistant kill switches and a playbook for suspending abusive accounts.
Standards and references
- MITRE ATT&CK: T1699 Direct Prompt Injection
- MITRE ATT&CK: C0062 Anthropic AI-orchestrated Campaign
- NIST: AI 100-2 E2025, Adversarial Machine Learning: A Taxonomy and Terminology of Attacks and Mitigations
- OWASP GenAI Security Project: LLM01:2025 Prompt Injection
- MITRE ATLAS: AML.T0051 LLM Prompt Injection
- Anthropic: Disrupting the first reported AI-orchestrated cyber espionage campaign
- Google Threat Intelligence Group: Adversarial Misuse of Generative AI
- The Cyber Security Guru: Instagram Meta AI account recovery exploit report
Related NHI Mgmt Group resources: Prompt Injection Guide, OWASP LLM Top 10 LLM01 Prompt Injection Guide, ATT&CK Execution Tactic Guide, T1683 Generate Content Defensive Guide, Prompt Injection Incident Response Playbook.