nvd,anchore_overrides
Capnproto
Уязвимости
9
Эксплуатируемые
0
Критический
3
Высокий
3
Топ продуктов
Топ уязвимостей
CVE-2023-48230Cap'n Proto - это формат обмена данными и система RPC на основе возможностей. В версиях 1.0 и 1.0.1, при использовании библиотеки KJ HTTP с включенным сжатием WebSocket, удаленный пир может вызвать переполнение буфера. Переполнение всегда записывает постоянное значение, которое не контролируется злоумышленником, что, вероятно, приводит к сбою, что позволяет провести удаленную атаку типа "отказ в обслуживании". Маловероятно, что большинство пользователей Cap'n Proto и KJ используют эту функцию, и поэтому маловероятно, что они будут затронуты.
Если KJ HTTP используется с включенным сжатием WebSocket, злоумышленный пир может вызвать переполнение буфера в буфере, выделенном в куче. KJ HTTP - это дополнительная библиотека, поставляемая вместе с Cap'n Proto, но она не используется непосредственно Cap'n Proto. Сжатие WebSocket отключено по умолчанию. Его необходимо включить с помощью настройки, передаваемой в библиотеку KJ HTTP через `HttpClientSettings` или `HttpServerSettings`. Записанные вне границ байты всегда представляют собой определенную 4-байтовую строку `{ 0x00, 0x00, 0xFF, 0xFF }`. Поскольку эта строка не контролируется злоумышленником, разработчики считают маловероятным возможность удаленного выполнения кода. Однако это нельзя исключать. Эта функция впервые появилась в Cap'n Proto 1.0. Предыдущие версии не затронуты.
Эта проблема исправлена в Cap'n Proto 1.0.1.1.
CVE-2015-2311Целочисленное переполнение в Sandstorm Cap'n Proto до 0.4.1.1 и 0.5.x до 0.5.1.1 может позволить удаленным пирам вызывать отказ в обслуживании или, возможно, получать конфиденциальную информацию из памяти или выполнять произвольный код через специально созданное сообщение.
CVE-2015-2310Целочисленное переполнение в layout.c++ в Sandstorm Cap'n Proto до 0.4.1.1 и 0.5.x до 0.5.1.1 позволяет удаленным пирам вызывать отказ в обслуживании или, возможно, получать конфиденциальную информацию из памяти через специально созданное сообщение, связанное с проверкой указателя.
CVE-2017-7892Sandstorm Cap'n Proto до 0.5.3.1 допускает удаленные сбои, связанные с оптимизацией компилятора. Удаленный злоумышленник может вызвать ошибку сегментации в 32-битном приложении libcapnp, поскольку Cap'n Proto полагается на вычисления указательной арифметики, которые переполняются. Примером компилятора с оптимизацией, который опускает проверку границ в таких вычислениях, является Apple LLVM версии 8.1.0 (clang-802.0.41). Вектор атаки - специально созданный дальний указатель в сообщении.
CVE-2015-2313Sandstorm Cap'n Proto до 0.4.1.1 и 0.5.x до 0.5.1.2, когда приложение вызывает метод totalSize для чтения объекта, позволяет удаленным пирам вызывать отказ в обслуживании (потребление ЦП) через специально созданное небольшое сообщение, которое запускает "плотный" цикл for. ПРИМЕЧАНИЕ: эта уязвимость существует из-за неполного исправления для CVE-2015-2312.
CVE-2015-2312Sandstorm Cap'n Proto до 0.4.1.1 и 0.5.x до 0.5.1.1 позволяет удаленным пирам вызывать отказ в обслуживании (потребление ЦП и, возможно, общих ресурсов) через список с большим количеством элементов.
CVE-2026-32240Cap'n Proto - это формат обмена данными и система RPC на основе возможностей. До 1.4,0, при использовании Transfer-Encoding: chunked, если размер куска разорван на величину 2^64 или больше, он будет усечен до 64-битного целеу этого значения. Теоретически, эта ошибка может позволить контрабанду HTTP запроса/ответа. Эта уязвимость фиксируется в разделе 1.4.0.
CVE-2026-32239Cap'n Proto - это формат обмена данными и система RPC, основанная на возможностях. До 1.4,0 отрицательное значение Content-Dength было преобразовано в неподписанное, рассматривая его как невозможно большую длину. Теоретически, эта ошибка может привести к контрабанде HTTP-запроса/ответа. Эта уязвимость фиксируется в разделе 1.4.0.
CVE-2022-46149Cap'n Proto - это формат обмена данными и система удаленного вызова процедур (RPC). Cap'n Proro до версий 0.7.1, 0.8.1, 0.9.2 и 0.10.3, а также версии реализации Cap'n Proto на Rust до 0.13.7, 0.14.11 и 0.15.2 уязвимы для чтения за пределами границ из-за логической ошибки при обработке списка списков. Эта проблема может привести к тому, что кто-то удаленно вызовет segfault у пира, отправив ему вредоносное сообщение, если жертва выполняет определенные действия со списком указателей. Эксфильтрация памяти возможна, если жертва выполняет дополнительные определенные действия со списком указателей. Чтобы быть уязвимым, приложение должно выполнить определенную последовательность действий, описанную в GitHub Security Advisory. Ошибка присутствует во встроенном коде, поэтому исправление потребует пересборки зависимых приложений. Cap'n Proto имеет исправления для C++ в версиях 0.7.1, 0.8.1, 0.9.2 и 0.10.3. Crate `capnp` Rust имеет исправления в версиях 0.13.7, 0.14.11 и 0.15.2.