CacheTracer expõe dependências ocultas entre revendedores de API de LLM usando cache de prefixo como canal lateral
CacheTracer é uma técnica de medição que explora a reutilização de cache de prefixo em serviços de LLM como canal lateral para detectar quando dois revendedores de API distintos, na prática, compartilham o mesmo provedor de infraestrutura por trás dos panos. Testado contra 39 endpoints reais com 1,1 milhão de requisições, o estudo encontrou compartilhamento de cache em 37,1% dos pares analisados e uma hierarquia de dependência de até sete camadas.
O ecossistema de revenda de acesso a APIs de LLM cresceu rapidamente: muitos serviços que vendem 'acesso a modelo X' na verdade repassam a requisição por uma ou mais camadas de revendedores intermediários antes de chegar ao provedor original. Isso cria uma cadeia de suprimento opaca em que cada camada intermediária pode inspecionar ou até modificar prompts e respostas, mas o usuário final não tem visibilidade de quantas camadas existem nem de quem realmente processa seus dados.
CacheTracer ataca esse problema de forma puramente black-box, sem nenhum acesso privilegiado ao backend, explorando um efeito colateral comum de otimização em servidores de LLM: o cache de prefixo, que reaproveita computação quando dois prompts compartilham o início do texto. A técnica usa dois primitivos — 'Flood', que popula o cache de um endpoint com um prefixo conhecido, e 'Prove', que testa se outro endpoint reaproveita esse mesmo cache (excluindo acertos causados pela própria sondagem). Se o cache é compartilhado, é evidência forte de que os dois endpoints, apesar de aparentemente independentes, correm sobre a mesma infraestrutura upstream.
Aplicando isso a 39 endpoints reais de revendedores, com 1,1 milhão de requisições distribuídas em 636 pares testados, os autores encontraram cache compartilhado em 37,1% dos pares, uma hierarquia de contenção de sete camadas, e pelo menos um nó cujo alcance de cache está contido em outros 31 nós — ou seja, uma concentração de dependência muito maior do que a estrutura de mercado aparentemente fragmentada sugeriria. A estrutura de dependência também se mostrou específica por modelo, o que reforça que não é um artefato de rede genérico, mas sim algo ligado a como cada provedor de modelo implementa seu cache.
O risco de segurança prático é o raio de explosão: se um provedor upstream comum sofre uma falha de confidencialidade ou integridade — por exemplo, um vazamento de prompts ou uma resposta manipulada — múltiplos revendedores 'independentes' na visão do cliente final podem ser afetados simultaneamente, sem que nenhum deles saiba disso. Para empresas que dependem de revendedores de API de LLM por custo ou disponibilidade, esse é um lembrete de que due diligence de fornecedor de IA deveria incluir a pergunta 'quem realmente processa meus dados rio acima', algo que hoje não é visível nem verificável por contrato.