P.K. SHARMA

Cyber security intelligence, AI governance, practitioner analysis

AI Security

You buy model access from one reseller. Your prompt can pass through seven you were never told about, and a timing trick just proved it

CacheTracer used prefix-cache timing to map hidden dependencies across 39 LLM API resellers. Better than a third of pairs share a backend, the chain runs seven layers deep, and one upstream sits under 31 downstream vendors who each thought they were independent.

By Parminder Kumar Sharma · · 7 min read

A battered brown cardboard parcel on a dark studio background, its top buried under many overlapping blank white shipping labels stacked and peeling, showing it has been relabelled and forwarded many times. Text in the dark right reads: you pay one hop, you inherit seven, LLM API reseller supply chain, arXiv 2608.20732.

What the paper measured

On 21 August 2026, eight researchers published Uncovering and Understanding Hidden Dependencies in the LLM API Reseller Ecosystem via Prefix-Cache Side Channels (arXiv:2608.20732). Behind the title is a plain finding with an uncomfortable edge: when you buy access to a model through a reseller, your prompt can pass through other resellers you were never told about, each able to read or change it.

They built a tool called CacheTracer, pointed it at 39 reseller endpoints, sent 1.1 million requests across 636 endpoint pairs, and found that a great many endpoints that present themselves as independent quietly share a backend.

The trick: a performance feature turned into a map

The method is elegant enough to explain in a sentence, and it matters because it is the same feature that shows up in every "where does my prompt go" story this year.

Modern LLM services use prefix caching. If two requests begin with the same long prefix, the provider computes that prefix once and reuses it, so the second request comes back faster and cheaper. A shared cache is a shared resource, and a shared resource you can time is a side channel.

probeorigin modelfar · slowindependent backend, computed from scratchsharedcacheshared backend, answered near · fast
fast return → shared upstreamis the only signal you get. There is no other tell.
The method is CacheTracer’s, from arXiv:2608.20732: flood a unique prefix through one endpoint, then time another. Distance here stands in for latency. A prefix only one endpoint sent, returned quickly by another, can only mean a shared backend that no invoice named.

CacheTracer uses two moves. Flood sends a fresh, unique prefix through endpoint A, which lands in A's backend cache. Prove sends the same prefix through endpoint B and times it. If B is slow, it computed the prefix from scratch and the two are independent. If B is fast, it reused a prefix only A had ever sent, and the only way that happens is a shared upstream. Fast means same backend, and no marketing page said so.

What the invoice hides

The consequence is a supply chain as opaque as anything in open-source software, and less inspectable, because there is no lockfile for inference.

not on any invoice · you did not choose theseyoureseller Xon your invoiceproviderreads the promptcan alter the replyunder 31 others
The hidden hops are the finding of arXiv:2608.20732: a request can traverse undisclosed upstream resellers, each able to inspect or modify prompts and responses. Three are drawn; the paper measured chains up to seven layers deep. You paid for the first hop and inherited the rest.

You pay one reseller. Your request may traverse several more above it, and the paper is explicit that each intermediary "can inspect or modify prompts and responses." That is both a confidentiality problem, your prompt is legible to parties you never contracted with, and an integrity problem, the answer you get back can be altered on the way down. Neither appears on any invoice, and until this paper there was no way to see it from the outside.

The shape of it: deep and concentrated

The measurements are the part to carry into a risk conversation, because they are specific and they are worse than "some sharing happens".

37.1%

of endpoint pairs shared cache

Better than one pair in three that look independent are not.

7

layers deep

The containment order of who sits beneath whom runs seven levels.

31+

downstreams under one node

A single cache reach sat inside at least 31 other nodes.

1.1M

requests, API only

No insider access. Measured entirely from the outside.

Figures from CacheTracer, arXiv:2608.20732, 21 August 2026, across 39 reseller endpoints and 636 measured pairs. Cache-reach containment describes which endpoints can reuse which others' cached prefixes.

That third figure is the one that should change a decision. A single upstream path sits beneath at least thirty-one downstream resellers. One confidentiality or integrity failure at that node, a leak, a logging misconfiguration, a malicious operator, does not affect one vendor. It reaches everyone above it at once, and none of their users chose it or knew it was there.

ONE ROOT, MANY BRANCHESsharedupstream31+downstream resellersunder one measured nodeA failure at the root reaches every branch at once. None of their users chose it.
Structure from CacheTracer, arXiv:2608.20732: 37.1% of 636 measured endpoint pairs shared cache reach, the containment order ran seven layers deep, and one cache reach sat inside at least 31 other nodes. A legible subset is drawn; the number beside it is the measured one.

Why this is your problem even if you buy direct

Two reasons it is not only a discount-broker issue.

First, the cheap-access market is large and growing, and procurement rarely knows it is in use. A team under budget pressure signs up for a reseller offering a frontier model at a fraction of list price, routes real prompts through it, and has now placed the organisation's data into a chain this paper shows can be seven hops deep. The gray market reselling Claude tokens at a discount is the demand side of exactly this supply chain.

Second, it is the same root cause as two stories already covered here. It is the confidentiality question underneath OpenAI's Zero Data Retention: retention and access are only two of the questions, and where the processing physically happens is the third that nobody moves. Prefix caching is also the mechanism behind cross-tenant prompt leakage. The feature that makes inference cheap is the same feature that maps the hidden supply chain and can leak across it.

What you think you bought, and what the measurement shows

The assumptionWhat CacheTracer shows
I am buying from one providerYour request may traverse several undisclosed upstream resellers, up to seven layers.
My prompt is seen only by who I payEach intermediary can inspect prompts and responses. You did not contract with them.
Two vendors means two baskets37.1% of pairs share a backend. Diversifying resellers may not diversify risk at all.
A vendor incident affects that vendorA shared-upstream incident has a blast radius across every reseller beneath it.
This is invisible, so unmanageableIt is measurable from the outside, API only, which means you can test it and require it.
Left column is the reasonable assumption a buyer makes from a reseller contract. Right column follows from the paper's findings. It describes an ecosystem property, not any single named vendor.

What to do about it

Take this with you

For anyone routing prompts through resold or aggregated model access

  • Inventory where model access is actually bought. Aggregators and resellers are frequently adopted by a single team without procurement, and each is a potential entry to a multi-hop chain.
  • Treat a reseller contract as naming one hop, not the whole path. Ask, in writing, whether your traffic is ever routed through further upstream providers, and get the answer as a term rather than a reassurance.
  • Do not assume using two resellers halves your exposure. If they share an upstream, and a third of pairs do, you have one basket wearing two labels.
  • For sensitive prompts, buy inference direct from the model provider or run it in a boundary you control. The discount on resold access is paid for in a supply chain you cannot see.
  • Note that this is now testable. The method is API only, so a probe like CacheTracer can be run against endpoints you use, and shared-backend behaviour can be made a contractual red line.

The position

This is not an argument that resellers are dishonest, and the paper does not claim any specific one is. It is an argument that the AI access market has quietly grown a supply chain, and unlike the software supply chain it has no manifest, no lockfile, and no convention of disclosure. You can enumerate the packages in your build. Until this paper, you could not enumerate the hands your prompt passed through.

The through-line with everything else this month is the same: the document you are given is accurate and describes a narrower thing than the risk you carry. A reseller invoice truthfully names who you paid. It does not name where your data went, and where your data went is the entire question. The useful development here is that the answer stopped being invisible. It is now something you can measure, and therefore something you can insist on.

Sources

  1. PrimaryUncovering Hidden Dependencies in the LLM API Reseller Ecosystem, Ji et al., 21 August 2026arXivaccessed 2026-08-24

Share this briefing

Know someone who owns this problem? Send it to them.

Related briefings

The briefing, in your inbox

Practitioner analysis of cyber and AI security news. No vendor noise.

One email per briefing. Unsubscribe any time.