Unknown · Distribution · CVE-2026-35172
Nome do Software Vulnerável e Versões Afetadas
versões do distribution 3.0.x e anteriores, versões 2.8.x e anteriores quando o cache de descritor de blob redis e a exclusão estão ambos habilitados
Descrição
distribution, um toolkit para gerenciamento de conteúdo de contêiner, é suscetível a um problema de confidencialidade. Quando `storage.cache.blobdescriptor: redis` e `storage.delete.enabled: true` estão ambos habilitados, um blob excluído pode se tornar legível novamente em `repo a` após uma exclusão explícita devido à associação de escopo de repositório desatualizada no cache redis. O processo de exclusão limpa o descritor de digest compartilhado, mas não remove a associação específica do repositório, permitindo que uma solicitação subsequente `Stat` ou `Get` de `repo b` repopule o descritor e restaure o acesso em `repo a`. Isso cria uma lacuna de revogação no limite do repositório, expondo potencialmente o conteúdo excluído anteriormente. O problema envolve a interação entre as funções `linkedBlobStore.Delete`, `blobAccessController.Clear`, `cachedBlobStatter.Clear` e `repositoryScopedRedisBlobDescriptorService.Clear`. A vulnerabilidade permite que um invasor recupere o acesso ao conteúdo em `repo a` após a exclusão explícita, aproveitando a repopulação do descritor compartilhado de `repo b`.
Recomendações
Para as versões 3.0.x e anteriores, e versões 2.8.x e anteriores quando o cache de descritor de blob redis e a exclusão estão ambos habilitados, certifique-se de que o processo de invalidação do redis revogue o estado de escopo do repositório junto com a exclusão do link de back-end. Isso inclui remover o digest do conjunto de associação do repositório e excluir o hash do descritor de escopo do repositório para evitar que o aquecimento do repositório parceiro restaure o acesso no repositório que iniciou a exclusão.