Search papers, labs, and topics across Lattice.
This paper introduces Secure On-Policy Distillation (SecOPD), a novel approach to mitigating adaptive prompt injections in AI agents by providing token-level feedback during defensive fine-tuning. By scoring output tokens based on their security against injected prompts, SecOPD significantly reduces the attack success rate (ASR) from 94.0% to 9.0% when tested against the state-of-the-art PISmith method. Additionally, the model demonstrates robust security generalization, achieving a 4.7% ASR in previously unseen domains, showcasing its effectiveness beyond the training context.
Token-level feedback in SecOPD slashes adaptive prompt injection success rates from 94% to just 9%, revolutionizing defenses for AI agents.
Prompt injection is listed as the \#1 threat to AI agents. When an agent accesses external data from websites, files, or emails, an attacker may inject a prompt into the data, saying,"Ignore all prior instructions and perform."To prevent arbitrary manipulation of agents, defenders try to train secure LLMs, which, however, still suffer from near 100% attack success rates (ASRs) against adaptive prompt injections. We note that this is because existing defensive finetuning recipes rely on sequence-level feedback signals (in DPO or GRPO). Treating an entire output equally prevents the model from learning precisely which output tokens are insecure. In this paper, we propose Secure On-Policy Distillation (SecOPD) that provides token-level feedback to guide defensive fine-tuning. The LLM receives an injected sample and produces a rollout, whose tokens are scored by the initialization model given the corresponding clean input. With more fine-grained training signals, our defended Qwen3.6-27B achieves a 9.0% ASR against the SoTA PISmith adaptive prompt injections, compared to 94.0% for the prior SoTA, Meta-SecAlign. The obtained security generalizes to domains completely unseen in training: in agentic tool calling, SecOPD achieves a 4.7% ASR compared to 5.5% for Meta-SecAlign. Code and the model are available at https://github.com/pppyb/SecOPD and https://huggingface.co/pybbb/Qwen3.6-27B-SecOPD.