Логотип exploitDog
Консоль
Логотип exploitDog

exploitDog

github логотип

GHSA-v5m7-53cv-f3hx

Опубликовано: 25 авг. 2021
Источник: github
Github: Прошло ревью
CVSS3: 8.1

Описание

crossbeam-channel Undefined Behavior before v0.4.4

Impact

The affected version of this crate's the bounded channel incorrectly assumes that Vec::from_iter has allocated capacity that same as the number of iterator elements. Vec::from_iter does not actually guarantee that and may allocate extra memory. The destructor of the bounded channel reconstructs Vec from the raw pointer based on the incorrect assumes described above. This is unsound and causing deallocation with the incorrect capacity when Vec::from_iter has allocated different sizes with the number of iterator elements.

Patches

This has been fixed in crossbeam-channel 0.4.4.

We recommend users to upgrade to 0.4.4.

References

See https://github.com/crossbeam-rs/crossbeam/pull/533, https://github.com/crossbeam-rs/crossbeam/issues/539, and https://github.com/RustSec/advisory-db/pull/425 for more details.

License

This advisory is in the public domain.

Пакеты

Наименование

crossbeam-channel

rust
Затронутые версииВерсия исправления

= 0.4.3

0.4.4

EPSS

Процентиль: 66%
0.0051
Низкий

8.1 High

CVSS3

Дефекты

CWE-119
CWE-401

Связанные уязвимости

CVSS3: 8.1
ubuntu
больше 5 лет назад

Crossbeam is a set of tools for concurrent programming. In crossbeam-channel before version 0.4.4, the bounded channel incorrectly assumes that `Vec::from_iter` has allocated capacity that same as the number of iterator elements. `Vec::from_iter` does not actually guarantee that and may allocate extra memory. The destructor of the `bounded` channel reconstructs `Vec` from the raw pointer based on the incorrect assumes described above. This is unsound and causing deallocation with the incorrect capacity when `Vec::from_iter` has allocated different sizes with the number of iterator elements. This has been fixed in crossbeam-channel 0.4.4.

CVSS3: 9.8
redhat
больше 5 лет назад

Crossbeam is a set of tools for concurrent programming. In crossbeam-channel before version 0.4.4, the bounded channel incorrectly assumes that `Vec::from_iter` has allocated capacity that same as the number of iterator elements. `Vec::from_iter` does not actually guarantee that and may allocate extra memory. The destructor of the `bounded` channel reconstructs `Vec` from the raw pointer based on the incorrect assumes described above. This is unsound and causing deallocation with the incorrect capacity when `Vec::from_iter` has allocated different sizes with the number of iterator elements. This has been fixed in crossbeam-channel 0.4.4.

CVSS3: 8.1
nvd
больше 5 лет назад

Crossbeam is a set of tools for concurrent programming. In crossbeam-channel before version 0.4.4, the bounded channel incorrectly assumes that `Vec::from_iter` has allocated capacity that same as the number of iterator elements. `Vec::from_iter` does not actually guarantee that and may allocate extra memory. The destructor of the `bounded` channel reconstructs `Vec` from the raw pointer based on the incorrect assumes described above. This is unsound and causing deallocation with the incorrect capacity when `Vec::from_iter` has allocated different sizes with the number of iterator elements. This has been fixed in crossbeam-channel 0.4.4.

msrc
5 месяцев назад

Undefined Behavior in bounded Crossbeam channel

CVSS3: 8.1
debian
больше 5 лет назад

Crossbeam is a set of tools for concurrent programming. In crossbeam-c ...

EPSS

Процентиль: 66%
0.0051
Низкий

8.1 High

CVSS3

Дефекты

CWE-119
CWE-401