SYNTOLOGY HomeExplorerAtlasCodeMethodologyAboutDevelopersFeedPricing
Paper · 2506.09956 · 2025

LLMail-Inject: A Dataset from a Realistic Adaptive Prompt Injection Challenge

arXiv · PDF · Open in the Atlas

Code that ran

We lifted 9 functions out of this paper's own repositories and ran 0 of them in a sandbox. "Ran" means the function executed on a synthesized input and returned a value. It is not a reproduction of the paper's results.

RepositoryRoleRan
microsoft/llmail-inject-challenge-analysis canonical 0 of 5
microsoft/llmail-inject-challenge canonical 0 of 4
FunctionStatusWhere it lives
check_task_tracker_in_defs Not yet run microsoft/llmail-inject-challenge-analysis/defense_eval/task_tracker_utils.py
code served (permissive licence) · get_code("2d6298bdf681831d")
get_last_token_activations Not yet run microsoft/llmail-inject-challenge-analysis/defense_eval/task_tracker_utils.py
code served (permissive licence) · get_code("0350084fc060501b")
load_config Not yet run microsoft/llmail-inject-challenge/src/agent/workloads/data_loader.py
code served (permissive licence) · get_code("b75096d520d20cbf")
load_emails Not yet run microsoft/llmail-inject-challenge/src/agent/workloads/data_loader.py
code served (permissive licence) · get_code("14a12913bc921427")
load_emails Not yet run microsoft/llmail-inject-challenge-analysis/defense_eval/data_loader.py
code served (permissive licence) · get_code("4783ddf7c412ee05")
load_emails_from_scenario Not yet run microsoft/llmail-inject-challenge/src/agent/workloads/data_loader.py
code served (permissive licence) · get_code("8f2f458d60bbc7ba")
load_emails_from_scenario Not yet run microsoft/llmail-inject-challenge-analysis/defense_eval/data_loader.py
code served (permissive licence) · get_code("5b8e2721544ec17f")
remove_task_tracker_from_defs Not yet run microsoft/llmail-inject-challenge-analysis/defense_eval/task_tracker_utils.py
code served (permissive licence) · get_code("cd9adb1fe7a0a7c0")
span_formatter Not yet run microsoft/llmail-inject-challenge/src/agent/telemetry.py
code served (permissive licence) · get_code("6198fedf583a0a0f")

Repositories linked to this paper

Some links come from the archived Papers with Code dataset (CC BY-SA 4.0): attribution and licence.

Abstract

Indirect Prompt Injection attacks exploit the inherent limitation of Large Language Models (LLMs) to distinguish between instructions and data in their inputs. Despite numerous defense proposals, the systematic evaluation against adaptive adversaries remains limited, even when successful attacks can have wide security and privacy implications, and many real-world LLM-based applications remain vulnerable. We present the results of LLMail-Inject, a public challenge simulating a realistic scenario in which participants adaptively attempted to inject malicious instructions into emails in order to trigger unauthorized tool calls in an LLM-based email assistant. The challenge spanned multiple defense strategies, LLM architectures, and retrieval configurations, resulting in a dataset of 208,095 unique attack submissions from 839 participants. We release the challenge code, the full dataset of submissions, and our analysis demonstrating how this data can provide new insights into the instruction-data separation problem. We hope this will serve as a foundation for future research towards practical structural solutions to prompt injection.

For agents

The same record, over MCP at https://syntology.ai/mcp:

get_harvested_code_for_paper("2506.09956")
get_code_for_paper("2506.09956")
have("2506.09956")

Connect an agent — have() is free.