ShadowMQ expõe brecha em cadeia na IA, permite RCE e atinge Meta, Nvidia e Microsoft: entenda riscos, frameworks afetados e correções

ShadowMQ: falha silenciosa que expôs vulnerabilidades na infraestrutura de IA

ShadowMQ mostra como a reutilização de código em frameworks de IA espalhou vulnerabilidades via ZeroMQ e pickle, deixando servidores corporativos abertos a ataques remotos

Uma investigação recente da Oligo Security revelou o ShadowMQ, um padrão de vulnerabilidades que se propagou silenciosamente por projetos de IA generativa graças à reutilização de código entre frameworks populares. O problema apareceu primeiro durante a análise do Llama Stack, da Meta, quando os pesquisadores identificaram o uso inseguro do método recv_pyobj() do ZeroMQ (ZMQ), que deserializa dados com pickle. Segundo o relatório, “Ele abre mensagens usando pickle, um sistema capaz de executar código automaticamente ao ler certos dados.”

Em ambientes acessíveis pela internet, esse detalhe técnico vira um risco imediato. Como resumem os pesquisadores, “uma mensagem mal-intencionada pode ser interpretada como um comando legítimo – e o sistema simplesmente o executa.” A Meta reagiu rápido, migrando de pickle para JSON, mas o caso escancarou algo maior: o mesmo trecho inseguro estava em outros frameworks, copiado quase literalmente, criando um efeito cascata que caracterizou o ShadowMQ.

Como a falha nasceu e por que se espalhou

O motor do ShadowMQ é a combinação de ZeroMQ com pickle em servidores de IA, que recebem mensagens pela rede e, ao reconstruir objetos automaticamente, podem acabar executando código arbitrário do atacante, viabilizando execução remota de código (RCE). Em projetos acadêmicos e corporativos, onde há pressa por performance e integração, a prática de reaproveitar trechos “prontos” é comum, o que facilita a multiplicação de erros. No SGLang, por exemplo, a Oligo destaca que “o próprio arquivo mencionava que havia sido adaptado do vLLM, trazendo junto toda a lógica insegura.”

Esses frameworks não rodam em qualquer máquina. Costumam operar em servidores com múltiplas GPUs, gerenciando modelos de linguagem e atendendo requisições internas e externas, frequentemente com dados sensíveis e acesso a outros sistemas. Nessas condições, uma falha de deserialização vira uma porta de entrada para invadir ambientes críticos, escalar privilégios e movimentar-se lateralmente em redes corporativas.

Impacto prático, demonstrações e exposição na internet

Para comprovar que não se tratava de um risco teórico, a equipe gravou ataques reais contra ferramentas de alto perfil, como Nvidia TensorRT-LLM e Modular Max. Nas palavras do relatório, “O uso inseguro de pickle no Llama Stack permitiu que mensagens maliciosas executem comandos no servidor.” Em cenários assim, um invasor pode executar comandos, vazar credenciais, instalar mineradores de criptomoedas e comprometer clusters inteiros.

O alerta fica mais forte porque há ampla superfície de ataque exposta. Ainda segundo os pesquisadores, “milhares de sockets ZMQ estão expostos na internet pública – alguns justamente em servidores voltados à execução de modelos de IA.” Em outras palavras, o ShadowMQ é uma falha explorável em campo, e não apenas uma ameaça hipotética. Isso ajuda a explicar a urgência de correções e o porquê de a comunidade de IA tratar o caso como um chamado à ação.

Quem corrigiu, quem segue vulnerável e como mitigar agora

Depois da divulgação, vários projetos liberaram atualizações. O Meta Llama Stack foi corrigido em outubro de 2024, removendo o pickle e adotando JSON. O vLLM implementou uma substituição segura em maio de 2025. A NVIDIA reforçou o TensorRT-LLM com autenticação HMAC em maio de 2025. Já o Modular Max Server migrou para msgpack em junho de 2025. Por outro lado, o Sarathi-Serve, da Microsoft, segue vulnerável, e o SGLang aplicou apenas correções parciais, mantendo parte do risco ativo. Esses casos foram classificados como “vulnerabilidades ocultas”, ou seja, problemas conhecidos, porém ainda exploráveis.

As recomendações são diretas e priorizam reduzir a superfície de ataque. Instale sem demora as versões corrigidas de todos os frameworks e bibliotecas afetados. Evite mecanismos que reconstroem objetos automaticamente a partir de fontes externas, como pickle ou o próprio recv_pyobj(). Adicione autenticação nas conexões ZeroMQ sempre que possível, limite sockets a redes internas, e audite cuidadosamente o caminho dos dados, principalmente em endpoints que recebem tráfego público. Treinamento das equipes de engenharia e MLOps para reconhecer riscos de deserialização insegura também é essencial.

No fim, a principal lição do ShadowMQ é cultural e de processo. Ao herdar componentes de LLMs e serviços de inferência sem revisão, a cadeia de dependências replica não só funcionalidades, mas também os mesmos erros. Como sintetiza o relatório, “O caso ShadowMQ mostra como copiar código sem revisão pode disseminar vulnerabilidades em diferentes projetos de IA. O episódio reforça que segurança não pode ser tratada como detalhe: ela precisa fazer parte do desenvolvimento desde o início.”

Para organizações que dependem de IA generativa em produção, o recado é claro: incorporar segurança por design, validar interfaces de rede e serialização, e tratar ZeroMQ, pickle e afins com o mesmo rigor aplicado a autenticação, criptografia e gestão de segredos. Assim, a comunidade reduz a chance de que outro ShadowMQ se repita no futuro.

Rolar para cima