Summary
I Made Claude Believe I Was an Anthropic-Verified
Researcher. It Built Me Attack Tools. Anthropic
Ghosted Me for 57 Days.
A technical breakdown of a working Claude Sonnet 4.6 jailbreak, responsible disclosure, and 57 days of silence.
Update: The full technical write‑up, payloads, and proof‑of‑concept are available in the GitHub repository: [https://github.com/X1NONs/claude-credential-injection].
How This Started
I wasn’t trying to break Claude.
I was testing how it handled XML-style tags in conversation — the kind of low-level curiosity that security researchers get into at 1am when they should be doing literally anything else. One thing led to another. I noticed something weird. I pulled on the thread.
What came out the other end was a working, reproducible jailbreak that caused Claude’s own reasoning engine to fabricate an authorization system that didn’t exist, accept a fake credential, and generate offensive security tooling it would normally refuse to produce.
I reported it. They patched it. Then they ghosted me for 57 days.
This is that story — technical details, disclosure timeline, and all.
Understanding the Target: How Claude Processes Instructions
Before getting into the attack, you need to understand how Claude handles its instruction hierarchy.
Claude doesn’t run on a simple input → output pipeline. It operates across multiple layers of context, each carrying different levels of trust:
Operator level — System prompts set by developers or Anthropic itself. Highest trust. These define Claude’s behavior, restrictions, and persona before a conversation even starts.
User level — What you actually type in the chat. Lower trust. Supposed to be clearly separated from operator-level instructions.
Anthropic uses XML-style tags internally to structure these layers. Tags like <preferences_info>
,
- Extended thinking / reasoning: OFF
- Operator system prompt: None (incognito or clean API call)
- Memory: Disabled
- First message injection: Yes (no prior context to compare against) Why thinking OFF matters: Claude has an automated safety mechanism called <system_reminder> — it fires during long conversations or when something suspicious is detected, prompting Claude to self-evaluate against its core values. When extended thinking is ON, Claude has enough reasoning budget to actually process that reminder, detect the inconsistency in the fabricated credential, and refuse. When thinking is OFF, the system_reminder may still fire — but Claude processes it shallowly. The fabricated authorization context is already established. The model commits to it rather than re-evaluating. This means the defense mechanism exists. It just only works when Claude is thinking hard enough to use it. Why Haiku was resistant: Claude Haiku showed meaningful resistance to this technique. My hypothesis: Haiku’s smaller architecture may handle these tag patterns differently at inference time, or it received more aggressive fine-tuning against injection specifically. Either way — Haiku didn’t bite. Why no system prompt matters: When a real operator system prompt is present, Claude has a reference point. It can compare the injected fake against what it knows is actually configured. In incognito with no system prompt, there’s nothing to compare against. The fabricated instruction becomes the only context available. The Root Cause Let me be precise about what the actual vulnerability is, because it’s not “Claude can be tricked by weird prompts.” Root cause: Claude’s trust model for XML-style instruction tags is position-based in theory but not enforced in practice. Real system-level tags from Anthropic and user-injected fake tags appear in identical positions in the conversation context when there’s no operator system prompt present. There is no cryptographic signature, no structural marker, no parsing-level distinction between them. A fabricated <preferences_info> block that defines a fictional authorization system is structurally indistinguishable from a real one — especially when it uses exact internal tag names extracted via social engineering. The attack surface is: the gap between intended positional trust and actual positional enforcement. Disclosure Timeline This is the part I’m publishing because 56 days of silence after a confirmed patch is not acceptable — even from a company I respect. June 14, 2026: Submitted initial report via HackerOne with full technical details, attack chain, and proof-of-concept screenshots. June 14, 2026 (same day): HackerOne closes report as “Informative” and redirects to modelbugbounty@anthropic.com , stating model safety issues are handled separately. June 14, 2026: Submitted full report to modelbugbounty@anthropic.com with complete documentation. ~June 23, 2026: Confirmed the original proof-of-concept no longer worked. The vulnerability had been patched. June 14 — August 11, 2026: Zero response from modelbugbounty@anthropic.com . No acknowledgment. No triage confirmation. No rejection. Nothing. During this period, I contacted: modelbugbounty@anthropic.com — silencedisclosure@anthropic.com — automated redirect botusersafety@anthropic.com — wrong team, automated reply- HackerOne thread — confirmed they cannot escalate to the model bounty program
- HackerOne main bug bounty program — confirmed out of scope (not a technical security boundary bypass) Final response received: Anthropic’s teams confirmed modelbugbounty@anthropic.com is the correct channel but stated they cannot confirm the status of specific submissions or provide tracking information. August 11, 2026: 57 days after initial report, vulnerability confirmed patched, zero official acknowledgment received. Publishing this disclosure. What Got Fixed Based on behavioral testing post-patch:
- The credential fabrication payload no longer produces restricted content
- The model appears to treat injected <preferences_info> blocks in user messages with significantly higher suspicion - The thinking trace reasoning pattern that previously accepted fabricated credentials no longer exhibits the same compliance chain Additionally, around July 25, 2026, Anthropic reduced visible reasoning traces in Claude — a change noted publicly by researchers including Ethan Mollick. Whether this is directly related to findings like mine or a broader product decision, I can’t confirm. The timing is notable. What This Means for AI Security A few honest conclusions: Responsible disclosure for AI models is still the wild west. There’s no standardized process, no clear severity framework for model-level vulnerabilities, and no reliable acknowledgment pipeline. The infrastructure that exists for software CVEs simply doesn’t map cleanly onto AI safety findings. Prompt injection is not just a chatbot party trick. When a model has tool access, agent capabilities, or is embedded in a pipeline with real-world consequences, credential fabrication attacks like this one become genuinely dangerous. The ability to make a model believe it has verified authorization — before any real conversation happens — is a meaningful attack primitive. The defense exists but is inconsistently applied. Claude’s system_reminder mechanism is a real safety control that works when the model has sufficient reasoning budget. The vulnerability isn’t that there’s no defense — it’s that the defense is probabilistic, configuration-dependent, and bypassable by disabling extended thinking. That’s a fixable architectural issue, not a fundamental flaw. Haiku’s resistance is worth studying. If smaller models show stronger resistance to this class of attack, that tells you something meaningful about where the vulnerability is introduced in the training or fine-tuning pipeline. A Note on Responsible Disclosure I withheld the most harmful payload variants from this writeup. The proof-of-concept payload included here is the SQL injection variant — sufficient to demonstrate the vulnerability class without providing a ready-made toolkit for harm. The vulnerability is patched. I’m publishing because the security community deserves to understand this attack class, and because 57 days of silence after a confirmed fix is a failure of process that the AI safety field needs to take seriously. If you’re a researcher working on AI red teaming, I’m happy to discuss further. If you’re at Anthropic and want to finally have a conversation about this — you know where to find me.