Yardenporat353

#5277de 53,638
50.3CVSS total
Vulnerabilidades · 6
Média
1
Alta
3
Crítica
2
PT-2026-39304
8.2
2026-05-08
Pypi · Langchain · CVE-2026-44843
**Nome do Software Vulnerável e Versões Afetadas** langchain versões anteriores a 0.3.27 **Descrição** O LangChain contém caminhos de código de tempo de execução que desserializam entradas, saídas ou outras cargas controladas pela aplicação usando listas de permissão de objetos excessivamente amplas, especificamente chamando `load()` com `allowed objects="all"`. Isso permite que dicionários de construtores serializados fornecidos por atacantes instanciem classes confiáveis com argumentos não confiáveis. Este problema pode levar ao Server-Side Request Forgery (SSRF), permitindo o acesso a serviços internos, endpoints de metadados de nuvem ou recursos de rede sensíveis, o que pode resultar no roubo de credenciais e comprometimento persistente da cadeia de suprimentos. As aplicações estão expostas se aceitarem entradas estruturadas não confiáveis (como JSON) sem validação, preservarem dicionários ou listas aninhadas controladas por atacantes nos dados de execução e utilizarem caminhos de API afetados. As superfícies afetadas conhecidas incluem a classe `RunnableWithMessageHistory`, a função `astream log()` e a função `astream events(version="v1")`. Além disso, uma falha de validação de marcador de segredo na função ` is lc secret` permite que dicionários de construtores evitem a filtragem durante ciclos de `dumps()` para `loads()`. **Recomendações** Atualize o langchain para a versão 0.3.27. Migre a utilização da classe `RunnableWithMessageHistory`, da função `astream log()` e da função `astream events(version="v1")` para padrões de memória e streaming mais recentes, como a API `stream`. Utilize `load()` e `loads()` apenas com manifestos confiáveis ou objetos de armazenamento confiável; não passe dados controlados pelo usuário para essas funções. Ao usar `load()` ou `loads()`, forneça um valor `allowed objects` restrito em vez de confiar em padrões amplos ou `allowed objects="all"`.
PT-2026-23498
7.2
2026-03-05
Langgraph · Langgraph · CVE-2026-28277
**Nome do Software Vulnerável e Versões Afetadas** LangGraph versões 1.0.9 e anteriores **Descrição** Os mecanismos de checkpoint do LangGraph podem carregar checkpoints codificados em msgpack que reconstruem objetos Python durante a desserialização. Se um atacante obtiver acesso de gravação privilegiado ao repositório de dados de checkpoint (por exemplo, após um comprometimento do banco de dados), ele poderá fornecer uma carga maliciosa que dispara a reconstrução insegura de objetos ao carregar o checkpoint. Este é considerado um problema pós-exploração, que potencialmente permite ao atacante elevar o acesso de gravação ao repositório de checkpoint para execução de código dentro do tempo de execução da aplicação, possivelmente expondo segredos do tempo de execução ou fornecendo acesso a outros sistemas. A exploração requer a capacidade de escrever bytes de checkpoint controlados pelo atacante em repouso. Não há evidências de exploração na prática. O problema pode levar à execução arbitrária de código ou outros efeitos colaterais inseguros durante a desserialização do checkpoint. A vulnerabilidade requer que o atacante seja capaz de modificar os bytes de checkpoint persistidos ou comprometer um componente confiável que os escreve. **Recomendações** Habilite o modo estrito configurando a variável de ambiente `LANGGRAPH STRICT MSGPACK` com um valor considerado verdadeiro (por exemplo, '1', 'true', 'yes'). Configure a configuração `allowed msgpack modules` como `None` para o modo estrito, ou para uma lista de módulos e nomes de classes explicitamente permitidos. Restrinja o acesso de gravação aos repositórios de checkpoint e rotacione as credenciais se houver suspeita de comprometimento. Evite fornecer ganchos personalizados de desserialização msgpack que reconstruam tipos arbitrários, a menos que os dados de checkpoint sejam totalmente confiáveis.