CVE-2026-99028
net: xilinx: axienet: Free outstanding DMA buffers on dmaengine stop
Что произошло
In the Linux kernel, the following vulnerability has been resolved: net: xilinx: axienet: Free outstanding DMA buffers on dmaengine stop In the dmaengine path the driver pre-submits RX buffers and holds in-flight TX buffers whose SKBs are DMA-mapped by the driver and freed only in the completion callbacks. On ndo_stop() dmaengine_terminate_sync() aborts these descriptors without running their callbacks, and the driver then frees only the ring shells, leaking every SKB still owned by the engine and its DMA mapping on each ifdown. With 128 RX buffers pre-posted per channel, the mapping leak can eventually exhaust a limited IOMMU aperture. Clear the slot's skb in the TX and RX callbacks so a non-NULL skb marks a slot that still owns a live, DMA-mapped buffer, and on stop unmap and free every such buffer. axienet_dma_rx_cb() runs from the DMA tasklet and re-arms the RX ring on each completion, so it can race axienet_stop(): a completion may submit a fresh buffer after dmaengine_terminate_sync() has returned, leaving the channel armed with a buffer the teardown then frees while the engine may still write into it (dma_release_channel() does not stop it either). Add a lock that axienet_dma_rx_cb() holds across the @stopping check and the resubmit, and axienet_stop() holds to set @stopping before terminating. Once @stopping is set no callback can arm a new buffer, and any armed just before is aborted by the terminate, so teardown only frees buffers the engine no longer owns.
Что это значит
В источнике описана ошибка безопасности в перечисленных продуктах. Фактический риск зависит от установленной версии, конфигурации и доступности компонента; проверьте условия в первичном бюллетене.
Что делать
1. Проверьте, затронуты ли вы
Соберите инвентаризацию и сравните с таблицей затронутых версий. Эти команды только показывают установленные компоненты и сами по себе не доказывают наличие CVE.
dpkg-query -W -f='${Package} ${Version}\n'rpm -qa --qf '%{NAME}\t%{VERSION}-%{RELEASE}\n'Get-HotFix | Select-Object HotFixID, InstalledOn
2. Установите исправление
Сверьте точный продукт и версию с бюллетенем вендора. Установите указанное в нём исправление после резервного копирования и проверки совместимости. Подтверждённая целевая версия в источниках отсутствует.
3. Временные меры
До проверки бюллетеня ограничьте доступ к затронутому компоненту доверенными узлами. Оцените сегментацию и отключение ненужных интерфейсов с владельцем сервиса; универсального правила WAF для этой CVE не подтверждено.
4. Проверьте следы эксплуатации
Проверьте аномальные входы, новые учётные записи, ошибки и необычные дочерние процессы в затронутом сервисе. Публичные проверенные правила обнаружения не включены в запись; отсутствие сигналов не доказывает отсутствие компрометации.
5. После исправления
- Проверьте фактическую версию и результат установки по бюллетеню.
- При необходимости перезапустите сервисы в согласованное окно.
- Повторите проверку сканером и функциональные проверки.
- Зафиксируйте результат, дату, владельца и оставшийся риск.
Продукты и затронутые версии
Linux / Linux
{
"status": "affected",
"version": "6a91b846af85a24241decd686269e8e038eb13d1",
"lessThan": "079396129da5e7cb40ca0920aa1b9525bef6097c",
"versionType": "git"
}{
"status": "affected",
"version": "6a91b846af85a24241decd686269e8e038eb13d1",
"lessThan": "eececf7c3a679d9c08175ad6bacbc8c31848f5af",
"versionType": "git"
}{
"status": "affected",
"version": "6a91b846af85a24241decd686269e8e038eb13d1",
"lessThan": "5e5cf3ad7c099ff86ea9e422cddb25a2e5317b58",
"versionType": "git"
}{
"status": "affected",
"version": "6a91b846af85a24241decd686269e8e038eb13d1",
"lessThan": "bcf2573a68a808a5b54cadafa72b6672e662c2bf",
"versionType": "git"
}Linux / Linux
{
"status": "affected",
"version": "6.8"
}{
"status": "unaffected",
"version": "0",
"lessThan": "6.8",
"versionType": "semver"
}{
"status": "unaffected",
"version": "6.12.114",
"versionType": "semver",
"lessThanOrEqual": "6.12.*"
}{
"status": "unaffected",
"version": "6.18.58",
"versionType": "semver",
"lessThanOrEqual": "6.18.*"
}{
"status": "unaffected",
"version": "7.2.11",
"versionType": "semver",
"lessThanOrEqual": "7.2.*"
}{
"status": "unaffected",
"version": "7.3",
"versionType": "original_commit_for_fix",
"lessThanOrEqual": "*"
}CVSS: оценки и векторы
Оценка CVSS отсутствует.
Источники и ссылки
Происхождение полей
{
"cwes": [],
"epss": {
"source": "epss",
"received_at": "2026-11-02T21:15:49.087614+00:00"
},
"title": {
"source": "cve",
"received_at": "2026-10-28T20:51:05.200579+00:00"
},
"scores": [],
"status": {
"source": "cve",
"received_at": "2026-10-28T20:51:05.200579+00:00"
},
"affected": [
"cve"
],
"published": {
"source": "cve",
"received_at": "2026-10-28T20:51:05.200579+00:00"
},
"solutions": [],
"percentile": {
"source": "epss",
"received_at": "2026-11-02T21:15:49.087614+00:00"
},
"references": [
"cve"
],
"description": {
"source": "cve",
"received_at": "2026-10-28T20:51:05.200579+00:00"
},
"workarounds": [],
"configurations": []
}Хронология записи
- Данные обновлены03.11.2026, 00:15
- Данные обновлены02.11.2026, 00:13
- Данные обновлены31.10.2026, 12:00
- Данные обновлены29.10.2026, 12:47
- Опубликована28.10.2026, 23:51
Личная заметка и статус
Другие CVE того же продукта
| УЯЗВИМОСТЬ / ПРОДУКТ | ПРИОРИТЕТ | CVSS | EPSS | СИГНАЛЫ | ОПУБЛИКОВАНА | Карточка |
|---|---|---|---|---|---|---|
| CVE-2026-99261 drm/amdgpu: correct reservation fence slots for userq per-vm BOs eviction Linux / Linux | Информационный | — | — | 03.11.2026 | ||
| CVE-2026-99260 ntfs: fix resident conversion in ntfs_new_attr_flags Linux / Linux | Информационный | — | — | 03.11.2026 | ||
| CVE-2026-99240 mm/damon/core: error damos_commit_quota_goal() for zero target_value Linux / Linux | Информационный | — | — | 02.11.2026 | ||
| CVE-2026-99270 tcp: Fix potential UAF in reqsk_timer_handler(). Linux / Linux | Высокий | 8.1 | — | 03.11.2026 | ||
| CVE-2026-99269 sched_ext: Wait for SCX_OPSS_DISPATCHING before moving tasks off DSQs Linux / Linux | Высокий | 7.8 | — | 03.11.2026 |