Spin — это инструмент разработчика с открытым исходным кодом для создания и запуска бессерверных приложений на базе WebAssembly. Когда Spin настроен на разрешение подключений к базе данных или веб-серверу, которые могут возвращать ответы неограниченного размера (например, таблицы со многими строками или большими телами содержимого), Spin может в некоторых случаях пытаться буферизовать весь ответ перед доставкой его гостю, что может привести к нехватке памяти хост-процессу, панике и сбою. Кроме того, вредоносное гостевое приложение может постепенно вставлять большое количество строк или значений в базу данных, а затем получать их все в одном запросе, что приводит к выделению большого количества хостов.
В Spin 3.6.1, SpinKube 0.6.2 и Containerrd-shim-spin 0.22.1 были внесены исправления для решения этой проблемы. В качестве обходного пути настройте Spin так, чтобы он разрешал доступ только к доверенным базам данных и HTTP-серверам, которые ограничивают размеры ответов.
Показать оригинальное описание (EN)
Spin is an open source developer tool for building and running serverless applications powered by WebAssembly. When Spin is configured to allow connections to a database or web server which could return responses of unbounded size (e.g. tables with many rows or large content bodies), Spin may in some cases attempt to buffer the entire response before delivering it to the guest, which can lead to the host process running out of memory, panicking, and crashing. In addition, a malicious guest application could incrementally insert a large number of rows or values into a database and then retrieve them all in a single query, leading to large host allocations. Spin 3.6.1, SpinKube 0.6.2, and `containerd-shim-spin` 0.22.1 have been patched to address the issue. As a workaround, configure Spin to only allow access to trusted databases and HTTP servers which limit response sizes.
Характеристики атаки
Последствия
Строка CVSS v4.0