Golioth Pouch версии 0.1.0, до фиксации 1b2219a1, содержит переполнение буфера на основе кучи при обработке сертификата сервера BLE GATT. server_cert_write() выделяет буфер кучи размером CONFIG_POUCH_SERVER_CERT_MAX_LEN при получении первого фрагмента, затем добавляет последующие фрагменты с помощью memcpy() без проверки наличия достаточной емкости. Соседний клиент BLE может отправлять неаутентифицированные фрагменты, общий размер которых превышает выделенный буфер, что приводит к переполнению кучи и сбою; Воздействие на целостность также возможно из-за повреждения памяти.
Показать оригинальное описание (EN)
Golioth Pouch version 0.1.0, prior to commit 1b2219a1, contains a heap-based buffer overflow in BLE GATT server certificate handling. server_cert_write() allocates a heap buffer of size CONFIG_POUCH_SERVER_CERT_MAX_LEN when receiving the first fragment, then appends subsequent fragments using memcpy() without verifying that sufficient capacity remains. An adjacent BLE client can send unauthenticated fragments whose combined size exceeds the allocated buffer, causing a heap overflow and crash; integrity impact is also possible due to memory corruption.
Характеристики атаки
Последствия
Строка CVSS v4.0