gopacket предоставляет возможности обработки пакетов для Go. В версии 1.6.0 и более ранних версиях декодер Diameter AVP вычисляет длину данных AVP путем вычитания фиксированного размера заголовка из поля длины AVP, контролируемого злоумышленником, поэтому AVP с флагом поставщика, длина которого меньше 12-байтового заголовка, переполняет беззнаковое 32-битное значение и обеспечивает неограниченное выделение примерно 4 ГиБ, а два таких сообщения подряд OOM убивают сборщика, вызывая удаленный отказ без аутентификации. обслуживания. Эта проблема исправлена в версии 1.6.1.
Показать оригинальное описание (EN)
gopacket provides packet processing capabilities for Go. In version 1.6.0 and earlier, the Diameter AVP decoder computes an AVP data length by subtracting a fixed header size from an attacker-controlled AVP Length field, so a vendor-flagged AVP whose Length is smaller than the 12-byte header underflows the unsigned 32-bit value and drives an unbounded allocation of roughly 4 GiB, and two such messages in succession OOM-kill a collector, causing an unauthenticated remote denial of service. This issue is fixed in version 1.6.1.
Характеристики атаки
Последствия
Строка CVSS v4.0
Тип уязвимости (CWE)
Уязвимые продукты 1
| Конфигурация | От (включительно) | До (исключительно) |
|---|---|---|
|
Gopacket Gopacket
cpe:2.3:a:gopacket:gopacket:*:*:*:*:*:go:*:*
|
— |
1.6.1
|