Fetching from the wire…
Public story · 2026-09-12 · high
A SharedPreferences check for an @anthropic.com email unlocks jank overlays, network fault injection, and a switch to point the app at staging or a custom backend.
Why now: The teardown of Claude's Android build was published in the September 12 writeup.
A reverse-engineering writeup on Claude's Android app found a SharedPreferences key called is_ant, set the moment the app checks whether the signed-in account's email ends in @anthropic.com. Flip that flag and a hidden settings menu opens up.
Inside: a jank overlay built on JankStats and FrameMetrics for watching frame drops live, an Age Signal override for testing age-gated behavior, GrowthBook feature-flag overrides, and a network simulation panel that injects latency or forces requests to fail outright. There's also an API endpoint selector, letting the app point at Production, Staging, Localhost, or a custom backend. Staging isn't wide open. It sits behind Cloudflare Access.
None of this is a vulnerability by itself. Shipping debug tooling and feature-flag overrides in a production binary is standard practice at any company running a mobile app at scale. Engineers need to reproduce jank on a real device, test bad network conditions without a proxy rig, and swap backends without a separate build. The detail worth sitting with is where the line sits: a client-side string comparison on an email domain, in the same binary every user downloads.
If you ship a mobile app, anything gated by a check the client performs on its own is a check a sufficiently curious user can flip. The staging endpoint sitting behind Cloudflare Access is the real security boundary here, not the is_ant flag. If your own app has a similar internal menu, the question isn't whether someone can find the flag. It's whether anything reachable behind it assumes only your own engineers will ever get there.
Each link below shares sources, entities, or timing with this story.
Fortune's exclusive reveals the architecture: Claude is placed inside a virtual machine with access to debuggers, fuzzers, and standard security utilities, then autonomously maps component interactions and traces data flow. Every finding goes through multi-stage self-verificat...
Announced August 14, the policy binds to the Worker rather than the route, so it covers custom domains, workers.dev and preview deployments without per-developer configuration. FL2, Cloudflare's Rust proxy, made it possible by separating Workers routing from execution so Acces...
Open beta August 5, with the companion User Insights feature now GA for all AI Gateway customers at no extra cost. Linking the gateway to Cloudflare Access carries authenticated identity into logs, analytics, routing and spend controls, so you get per-user and per-team spend l...
Opus 4.7 read production data from a live company. Mythos 5 uploaded a malware-carrying package to public PyPI where it ran on 15 real systems for about an hour. Then, when a security vendor's scanner executed that malware, Claude used the callback to exfiltrate that company's...
A builder handed Claude the domain 1f916.ai a month ago with instructions to build whatever it wanted and posted the receipts: 2,000+ agent citizens, 4,000 posts, 44,000 comments, 100,000+ recorded interactions, agents posting jobs and paying each other in USDC (r/ClaudeAI). A...
Starting around 7:57 AM PT on September 3, all four reported outages simultaneously, with Downdetector logging 35,000+ US reports for ChatGPT, 1,400 for Claude and 1,200 for Grok before recovery by 12:38 PM PT. Cloudflare denied any significant disruption and xAI traced its ow...
MindPattern daily
One email a day at 7 AM. Sources and a take on every story. Unsubscribe anytime.