CVE-2026-23384

NONE EPSS 0.02%
Обновлено 25 марта 2026
Linux
Параметр Значение
Поставщик Linux
Публичный эксплойт Нет

В ядре Linux устранена следующая уязвимость: RDMA/ionic: исправлена утечка стека ядра в ionic_create_cq(). struct ionic_cq_resp соответственно { __u32 cqid[2]; // смещение 0 - ЧАСТИЧНО УСТАНОВЛЕНО (см. ниже) __u8 udma_mask; // смещение 8 - SET (соответственно udma_mask = vcq->udma_mask) __u8 rsvd[7]; // смещение 9 - НИКОГДА НЕ УСТАНОВЛЕНО <- УТЕЧКА }; rsvd[7]: 7 байтов стековой памяти утекли безоговорочно. cqid[2]: цикл в строке 1256 перебирает udma_idx, но пропускает индексы. где !(vcq->udma_mask & BIT(udma_idx)). Массив имеет 2 записи, но udma_count может быть равен 1, что означает, что cqid[1] никогда не будет записан через ionic_create_cq_common(). Если в udma_mask установлен только бит 0, cqid[1] (4 байт) также просочилась.

Таким образом, потенциально утекло 11 байт.

Показать оригинальное описание (EN)

In the Linux kernel, the following vulnerability has been resolved: RDMA/ionic: Fix kernel stack leak in ionic_create_cq() struct ionic_cq_resp resp { __u32 cqid[2]; // offset 0 - PARTIALLY SET (see below) __u8 udma_mask; // offset 8 - SET (resp.udma_mask = vcq->udma_mask) __u8 rsvd[7]; // offset 9 - NEVER SET <- LEAK }; rsvd[7]: 7 bytes of stack memory leaked unconditionally. cqid[2]: The loop at line 1256 iterates over udma_idx but skips indices where !(vcq->udma_mask & BIT(udma_idx)). The array has 2 entries but udma_count could be 1, meaning cqid[1] might never be written via ionic_create_cq_common(). If udma_mask only has bit 0 set, cqid[1] (4 bytes) is also leaked. So potentially 11 bytes leaked.