Foi divulgada uma falha crítica de segurança no LangChain Core que pode ser explorada por atacantes para roubar segredos sensíveis e até manipular respostas de modelos de linguagem (LLMs) por meio de prompt injection.
O LangChain Core (langchain-core) é um pacote Python essencial no ecossistema LangChain, que fornece interfaces e abstrações independentes de modelo para o desenvolvimento de aplicações baseadas em LLMs.
Registrada como
CVE-2025-68664
, a vulnerabilidade recebeu nota 9,3 em 10 na escala CVSS.
O pesquisador em segurança Yarden Porat reportou o problema em 4 de dezembro de 2025.
O código interno da falha é LangGrinch.
Segundo os desenvolvedores, a vulnerabilidade está relacionada a uma falha de serialização nas funções dumps() e dumpd() do LangChain.
Essas funções não fazem o escape correto de dicionários que contenham a chave “lc” ao serializar dados livres.
A chave “lc” é usada internamente para identificar objetos serializados do LangChain.
Quando dados controlados pelo usuário incluem essa estrutura, eles são interpretados como objetos legítimos do LangChain durante a desserialização, em vez de simples dados de entrada.
Porat explica que o problema central está exatamente nessa falha ao escapar dicionários com a chave “lc”.
Como esse marcador representa objetos LangChain no formato interno de serialização, um invasor capaz de inserir conteúdo com essa chave pode forçar a criação de objetos arbitrários inseguros, abrindo portas para múltiplas formas de ataque.
Entre os riscos potenciais estão a extração de segredos armazenados em variáveis de ambiente quando a desserialização é feita com a opção “secrets_from_env=True” (que era padrão anteriormente), a instanciação de classes de namespaces confiáveis pré-aprovados — como langchain_core, langchain e langchain_community — e até a execução arbitrária de código via templates Jinja2.
Além disso, o bug no escaping permite a injeção de estruturas de objetos LangChain em campos controlados pelo usuário, como metadata, additional_kwargs e response_metadata, possibilitando ataques por prompt injection.
Para mitigar a falha, a atualização lançada pelo LangChain introduz novos padrões restritivos nas funções load() e loads().
Agora, um parâmetro do tipo allowlist chamado “allowed_objects” permite que os usuários definam quais classes podem ser serializadas e desserializadas.
Templates Jinja2 passam a ser bloqueados por padrão, e a opção “secrets_from_env” foi desativada (configurada como “False”), interrompendo o carregamento automático de segredos do ambiente.
As versões afetadas do langchain-core são:
- De 1.0.0 até antes da 1.2.5 (corrigido na 1.2.5)
- Abaixo da 0.3.81 (corrigido na 0.3.81)
Também há uma falha semelhante no LangChain.js, decorrente da mesma falta de escape para objetos com a chave “lc”.
Essa vulnerabilidade, identificada como
CVE-2025-68665
, possui nota CVSS 8,6 e permite extração de segredos e injeção de prompts.
As versões impactadas dos pacotes npm são:
- @langchain/core da 1.0.0 até antes da 1.1.8 (corrigido na 1.1.8)
- @langchain/core abaixo da 0.3.80 (corrigido na 0.3.80)
- langchain da 1.0.0 até antes da 1.2.3 (corrigido na 1.2.3)
- langchain abaixo da 0.3.37 (corrigido na 0.3.37)
Diante da gravidade, a atualização imediata para as versões corrigidas é recomendada para garantir a melhor proteção.
Porat alerta que “o vetor de ataque mais comum ocorre em campos de resposta de LLM, como additional_kwargs ou response_metadata, que podem ser manipulados via prompt injection e depois serializados e desserializados durante operações de streaming.
É exatamente nesse ponto em que a inteligência artificial encontra vulnerabilidades tradicionais de segurança e onde as organizações tendem a ser pegas de surpresa.
A saída dos modelos de linguagem deve ser tratada como entrada não confiável.”
Quer acompanhar mais conteúdos exclusivos sobre segurança e tecnologia? Siga-nos no Google News, Twitter e LinkedIn.
Publicidade
Tenha acesso aos melhores hackers éticos do mercado através de um serviço personalizado, especializado e adaptado para o seu negócio. Qualidade, confiança e especialidade em segurança ofensiva de quem já protegeu centenas de empresas. Saiba mais...