PT-2026-45016 · Crates.Io+1 · Unbounded-Spsc

CVE-2026-46690

·

Publicado

2026-05-29

·

Atualizado

2026-06-16

CVSS v3.1

5.8

Média

VetorAV:L/AC:H/PR:L/UI:N/S:U/C:L/I:L/A:H
Nome do Software Vulnerável e Versões Afetadas unbounded spsc versões 0.2.0 e anteriores
Descrição Um problema de segurança de memória existe na função send() dentro de src/lib.rs. No braço DISCONNECTED da função, um bloco unsafe transmuta incorretamente um ponteiro bruto (*mut Producer<T>) em um Consumer<T> de nível de valor, em vez de realizar uma transmutação de nível de valor. Isso ocorre durante uma condição de corrida entre a chamada send() de um remetente e a chamada drop() de um receptor.
Este erro leva a várias falhas críticas:
  • Leitura fora de limite (OOB read): O Consumer<T> resultante lê offsets de memória dentro da estrutura Sender<T> e memória adjacente quando try pop() é chamado.
  • Corrupção de memória: Quando o Consumer<T> falso é descartado, ele executa um decremento atômico em um endereço de memória que não é uma referência ArcInner válida, visando especificamente o valor Arc::ptr do Sender.
  • Corrupção do alocador: O processo pode tentar desalocar um endereço não alocado, levando potencialmente a erros de double-free ou ao aborto imediato do programa.
Recomendações No momento, não há informações sobre uma versão mais recente que contenha a correção para esta vulnerabilidade.

Exploit

Correção

Double Free

Memory Corruption

Incorrect Type Conversion or Cast

Out of bounds Read

Encontrou algum problema na descrição? Tem algo a acrescentar? Fique à vontade para nos escrever 👾

Enumeração de Fraquezas

Identificadores relacionados

CVE-2026-46690
GHSA-6M57-8R3P-PQX6

Produtos afetados

Unbounded-Spsc