Uma vulnerabilidade crítica no LMCache, software de código aberto que acelera servidores de modelos de linguagem de grande porte (LLMs), como o vLLM, permite que um invasor execute código no servidor de cache sem fazer login. Ainda não há uma versão corrigida.
A falha está no modo multiprocessado do LMCache, no qual o cache funciona como um servidor independente, acessado pelos processos de trabalho do LLM por meio da biblioteca de mensagens ZeroMQ. Uma única mensagem de rede enviada ao servidor pode executar comandos com os privilégios do usuário sob o qual o processo do LMCache está rodando.
O servidor só pode ser acessado de outra máquina quando o operador configura a escuta em um endereço roteável, em vez de usar o endereço local adotado por padrão.
A JFrog divulgou a falha em 7 de outubro e atribuiu a ela uma pontuação de gravidade de 9,8 em 10, classificação considerada crítica. Essa é a avaliação aplicada pela empresa quando o servidor está configurado para aceitar conexões em um endereço roteável.
Identificada como
CVE-2026-105192
, a vulnerabilidade afeta o LMCache a partir da versão 0.3.9, lançada em outubro de 2025, até a 0.5.5, a versão estável mais recente. A falha também está presente nas versões candidatas a lançamento da versão 0.5.6 e no ramo de desenvolvimento. Não há uma versão corrigida disponível.
A exposição do servidor depende de uma única configuração. Por padrão, o servidor multiprocessado aceita conexões apenas da própria máquina, o que impede o acesso a partir de outros equipamentos. Ele fica acessível quando o operador o inicia com um endereço roteável, como ocorre em implantações com vários nós que compartilham o cache entre máquinas.
O exemplo de implantação do LMCache no Kubernetes inicia o servidor dessa forma, com escuta em todas as interfaces de rede. Já uma cópia do LMCache executada dentro de um único processo do vLLM não abre a porta.
O soquete ZeroMQ que o servidor multiprocessado abre para que os processos de trabalho se registrem e compartilhem dados em cache não exige autenticação. Um tipo de mensagem é processado com pickle, um formato do Python que pode incluir código e executá-lo durante a decodificação dos dados. O servidor processa a mensagem enquanto ainda lê seus argumentos, antes de verificar o tipo recebido. Assim, uma mensagem criada especialmente para explorar a falha pode executar o código de quem a enviou.
O código é executado com os privilégios do processo do LMCache. Segundo a JFrog, nas imagens oficiais de contêiner do projeto, esse processo roda como superusuário. A falha foi identificada por Yuval Moravchick, da equipe de pesquisa de segurança da JFrog.
Ainda não há uma versão corrigida. Até que ela seja lançada, a JFrog recomenda que os operadores não configurem o servidor multiprocessado com um endereço roteável e mantenham sua porta restrita à máquina local ou à rede de um agrupamento confiável. Um firewall que limite o acesso à porta reduz o risco, mas não o elimina: qualquer máquina que ainda consiga estabelecer uma conexão pode executar código.
O LMCache ainda não publicou um comunicado de segurança sobre a falha. O aviso da JFrog também não informa como os operadores podem verificar se um servidor já foi atacado.
Outros relatos e uma correção relacionada no vLLM
Separadamente, um usuário do GitHub abriu seis outros relatos de segurança sobre o LMCache em 6 de outubro, um dia antes da divulgação pública da
CVE-2026-105192
. As denúncias alegam que seria possível acessar, sem autenticação, dados em cache de diferentes clientes e vários serviços de rede capazes de executar comandos sem exigir login.
Os relatos foram publicados por uma única conta e se baseiam em alegações acompanhadas de provas de conceito. Não têm identificadores CVE, confirmação dos mantenedores nem correções. Um deles aponta para uma configuração padrão do LMCache que já foi alterada: na versão 0.5.5, um servidor HTTP de administração aceitava conexões em todas as interfaces de rede; nas versões candidatas a lançamento da versão 0.5.6, ele aceita conexões apenas da máquina local.
Uma falha relacionada no vLLM já foi corrigida. Antes da versão 0.30.0, lançada em 22 de setembro, uma única solicitação com um valor malformado em `cache_salt` podia derrubar o mecanismo em implantações que usam o conector multiprocessado do LMCache. A falha de negação de serviço, identificada como
CVE-2026-105756
, recebeu nota 6,5 e não permite a execução de código.
A falha central, que consiste em enviar dados recebidos por um soquete de rede sem autenticação ao pickle, também foi identificada por pesquisadores em outros frameworks de inferência de IA, em novembro de 2025. Na ocasião, eles agruparam as falhas sob o nome ShadowMQ. Ainda não foi estabelecido se o código do LMCache tem uma origem comum com o desses projetos.
Publicidade
Tenha acesso aos melhores hackers éticos do mercado através de um serviço personalizado, especializado e adaptado para o seu negócio. Guardsi: qualidade, confiança e especialidade em segurança ofensiva de quem já protegeu centenas de empresas. Saiba mais...