Перейти к содержимому
Noroxi
CVE-2026-31396· NVD / CVE Program· CNA Linux

net: macb: fix use-after-free access to PTP clock

In the Linux kernel, the following vulnerability has been resolved: net: macb: fix use-after-free access to PTP clock PTP clock is registered on every opening of the interface and destroyed on every closing. However it may be accessed via get_ts_info ethtool call which is possible while the interface is just present in the kernel. BUG: KASAN: use-after-free in ptp_clock_index+0x47/0x50 drivers/ptp/ptp_clock.c:426 Read of size 4 at addr ffff8880194345cc by task syz.0.6/948 CPU: 1 PID: 948 Comm: syz.0.6 Not tainted 6.1.164+ #109 Hardware name: QEMU Standard PC (Q35 + ICH9, 2009), BIOS rel-1.16.1-0-g3208b098f51a-prebuilt.qemu.org 04/01/2014 Call Trace: <TASK> __dump_stack lib/dump_stack.c:88 [inline] dump_stack_lvl+0x8d/0xba lib/dump_stack.c:106 print_address_description mm/kasan/report.c:316 [inline] print_report+0x17f/0x496 mm/kasan/report.c:420 kasan_report+0xd9/0x180 mm/kasan/report.c:524 ptp_clock_index+0x47/0x50 drivers/ptp/ptp_clock.c:426 gem_get_ts_info+0x138/0x1e0 drivers/net/ethernet/cadence/macb_main.c:3349 macb_get_ts_info+0x68/0xb0 drivers/net/ethernet/cadence/macb_main.c:3371 __ethtool_get_ts_info+0x17c/0x260 net/ethtool/common.c:558 ethtool_get_ts_info net/ethtool/ioctl.c:2367 [inline] __dev_ethtool net/ethtool/ioctl.c:3017 [inline] dev_ethtool+0x2b05/0x6290 net/ethtool/ioctl.c:3095 dev_ioctl+0x637/0x1070 net/core/dev_ioctl.c:510 sock_do_ioctl+0x20d/0x2c0 net/socket.c:1215 sock_ioctl+0x577/0x6d0 net/socket.c:1320 vfs_ioctl fs/ioctl.c:51 [inline] __do_sys_ioctl fs/ioctl.c:870 [inline] __se_sys_ioctl fs/ioctl.c:856 [inline] __x64_sys_ioctl+0x18c/0x210 fs/ioctl.c:856 do_syscall_x64 arch/x86/entry/common.c:46 [inline] do_syscall_64+0x35/0x80 arch/x86/entry/common.c:76 entry_SYSCALL_64_after_hwframe+0x6e/0xd8 </TASK> Allocated by task 457: kmalloc include/linux/slab.h:563 [inline] kzalloc include/linux/slab.h:699 [inline] ptp_clock_register+0x144/0x10e0 drivers/ptp/ptp_clock.c:235 gem_ptp_init+0x46f/0x930 drivers/net/ethernet/cadence/macb_ptp.c:375 macb_open+0x901/0xd10 drivers/net/ethernet/cadence/macb_main.c:2920 __dev_open+0x2ce/0x500 net/core/dev.c:1501 __dev_change_flags+0x56a/0x740 net/core/dev.c:8651 dev_change_flags+0x92/0x170 net/core/dev.c:8722 do_setlink+0xaf8/0x3a80 net/core/rtnetlink.c:2833 __rtnl_newlink+0xbf4/0x1940 net/core/rtnetlink.c:3608 rtnl_newlink+0x63/0xa0 net/core/rtnetlink.c:3655 rtnetlink_rcv_msg+0x3c6/0xed0 net/core/rtnetlink.c:6150 netlink_rcv_skb+0x15d/0x430 net/netlink/af_netlink.c:2511 netlink_unicast_kernel net/netlink/af_netlink.c:1318 [inline] netlink_unicast+0x6d7/0xa30 net/netlink/af_netlink.c:1344 netlink_sendmsg+0x97e/0xeb0 net/netlink/af_netlink.c:1872 sock_sendmsg_nosec net/socket.c:718 [inline] __sock_sendmsg+0x14b/0x180 net/socket.c:730 __sys_sendto+0x320/0x3b0 net/socket.c:2152 __do_sys_sendto net/socket.c:2164 [inline] __se_sys_sendto net/socket.c:2160 [inline] __x64_sys_sendto+0xdc/0x1b0 net/socket.c:2160 do_syscall_x64 arch/x86/entry/common.c:46 [inline] do_syscall_64+0x35/0x80 arch/x86/entry/common.c:76 entry_SYSCALL_64_after_hwframe+0x6e/0xd8 Freed by task 938: kasan_slab_free include/linux/kasan.h:177 [inline] slab_free_hook mm/slub.c:1729 [inline] slab_free_freelist_hook mm/slub.c:1755 [inline] slab_free mm/slub.c:3687 [inline] __kmem_cache_free+0xbc/0x320 mm/slub.c:3700 device_release+0xa0/0x240 drivers/base/core.c:2507 kobject_cleanup lib/kobject.c:681 [inline] kobject_release lib/kobject.c:712 [inline] kref_put include/linux/kref.h:65 [inline] kobject_put+0x1cd/0x350 lib/kobject.c:729 put_device+0x1b/0x30 drivers/base/core.c:3805 ptp_clock_unregister+0x171/0x270 drivers/ptp/ptp_clock.c:391 gem_ptp_remove+0x4e/0x1f0 drivers/net/ethernet/cadence/macb_ptp.c:404 macb_close+0x1c8/0x270 drivers/net/ethernet/cadence/macb_main.c:2966 __dev_close_many+0x1b9/0x310 net/core/dev.c:1585 __dev_close net/core/dev.c:1597 [inline] __dev_change_flags+0x2bb/0x740 net/core/dev.c:8649 dev_change_fl ---truncated---

ВысокаяCVSS 7.8 · v3.1—Эксплойта нет Есть исправление
Опубликовано
3 апр. 2026 г.
Обновлено
8 сент. 2026 г.
EPSS
0,2 % · 7-й процентиль
Следить за этой CVE

Войдите, чтобы следить · Вы получите уведомление, если запись попадёт в KEV, получит эксплойт или обновится.

Инструменты для отчёта

JSON

Оценка срочности

31

Наблюдать

Пока низкий приоритет.

CVSS
31 / 40 · 7.8 / 10
CISA KEV
0 / 30 · Нет в списке
EPSS
0 / 30 · 0,2 %

Оценка CNA и NVD

NVD
—
CNA · Linux
7,8
NVD ещё не выставил свою оценку; показана оценка CNA.

Оценка присваивающего органа и независимая оценка NVD. Разрыв означает, что критичность спорна.

Анализ Noroxi

Анализа Noroxi для этой записи пока нет

Мы не пишем анализ вручную для сотен тысяч уязвимостей в базе; это было бы нечестно. Для значимых уязвимостей с реальным влиянием наша команда описывает механизм, обнаружение и устранение.

Мы используем этот продукт, нужна помощь

Затронутые системы

ВендорПродукт
linuxlinux kernel

Затронутые версии

Диапазоны версий NVD (для продуктов из каталога). Добавьте продукт в стек с версией, и сопоставление будет по ним.

  • linux linux kernel4.11 и новее · до 5.10.253
  • linux linux kernel5.11 и новее · до 5.15.203
  • linux linux kernel5.16 и новее · до 6.1.167
  • linux linux kernel6.2 и новее · до 6.6.130
  • linux linux kernel6.7 и новее · до 6.12.78
  • linux linux kernel6.13 и новее · до 6.18.20
  • linux linux kernel6.19 и новее · до 6.19.10
  • linux linux kernel7.0

Версии, заявленные вендором

Диапазоны затронутых версий, заявленные назначающей организацией (Linux). Не зависят от анализа CPE в NVD и обычно опережают его.

  • Linux Linux

    • 4.11затронута
    • c2594d804d5c8033861d44840673d852d98508c1 и новее · до 8820ffe0975fd2efbe50453e9179c8e1c33a13d3затронута · git
    • c2594d804d5c8033861d44840673d852d98508c1 и новее · до 6b757f345eeea87ed5d8afd6de35b927a1a57a2fзатронута · git
    • c2594d804d5c8033861d44840673d852d98508c1 и новее · до 341d01087f821aa0f165fb1ffc8bfe4e50776da7затронута · git
    • c2594d804d5c8033861d44840673d852d98508c1 и новее · до 5653af416a48f6c18f9626ae9df96f814f45ff34затронута · git
    • c2594d804d5c8033861d44840673d852d98508c1 и новее · до 0bb848d8c64938024e45780f8032f1f67d3a3607затронута · git
    • c2594d804d5c8033861d44840673d852d98508c1 и новее · до 1f4714065b2bcbb0a4013fd355b84b848e6cc345затронута · git
    • c2594d804d5c8033861d44840673d852d98508c1 и новее · до eb652535e9ec795ef5c1078f7578eaaed755268bзатронута · git
    • c2594d804d5c8033861d44840673d852d98508c1 и новее · до 8da13e6d63c1a97f7302d342c89c4a56a55c7015затронута · git
    • до 4.11не затронута · semver

Затронутые пакеты

Данные OSV и GitHub Advisory: экосистема, пакет и диапазон. Сопоставление SBOM использует эту таблицу.

ЭкосистемаПакетЗатронутый диапазонИсправление
Debian:12linuxдо 6.1.170-16.1.170-1
Debian:13linuxдо 6.12.85-16.12.85-1
Debian:14linuxдо 6.19.10-16.19.10-1
openSUSE:Leap 16.0dtb-aarch64до 6.12.0-160000.35.16.12.0-160000.35.1
openSUSE:Leap 16.0kernel-64kbдо 6.12.0-160000.35.16.12.0-160000.35.1
openSUSE:Leap 16.0kernel-azureдо 6.12.0-160000.35.16.12.0-160000.35.1
openSUSE:Leap 16.0kernel-defaultдо 6.12.0-160000.35.16.12.0-160000.35.1
openSUSE:Leap 16.0kernel-default-baseдо 6.12.0-160000.35.1.160000.2.166.12.0-160000.35.1.160000.2.16
openSUSE:Leap 16.0kernel-docsдо 6.12.0-160000.35.16.12.0-160000.35.1
openSUSE:Leap 16.0kernel-kvmsmallдо 6.12.0-160000.35.16.12.0-160000.35.1
openSUSE:Leap 16.0kernel-obs-buildдо 6.12.0-160000.35.16.12.0-160000.35.1
openSUSE:Leap 16.0kernel-obs-qaдо 6.12.0-160000.35.16.12.0-160000.35.1
openSUSE:Leap 16.0kernel-rtдо 6.12.0-160000.35.16.12.0-160000.35.1
openSUSE:Leap 16.0kernel-sourceдо 6.12.0-160000.35.16.12.0-160000.35.1
openSUSE:Leap 16.0kernel-symsдо 6.12.0-160000.35.16.12.0-160000.35.1
openSUSE:Leap 16.0kernel-zfcpdumpдо 6.12.0-160000.35.16.12.0-160000.35.1
SUSE:Linux Enterprise High Availability Extension 16.0kernel-defaultдо 6.12.0-160000.35.16.12.0-160000.35.1
SUSE:Linux Enterprise Live Patching 15 SP7kernel-livepatch-SLE15-SP7_Update_16до 1-150700.15.3.21-150700.15.3.2
SUSE:Linux Enterprise Live Patching 15 SP7kernel-livepatch-SLE15-SP7-RT_Update_16до 1-150700.1.5.21-150700.1.5.2
SUSE:Linux Enterprise Module for Basesystem 15 SP7kernel-64kbдо 6.4.0-150700.53.60.16.4.0-150700.53.60.1
SUSE:Linux Enterprise Module for Basesystem 15 SP7kernel-defaultдо 6.4.0-150700.53.60.16.4.0-150700.53.60.1
SUSE:Linux Enterprise Module for Basesystem 15 SP7kernel-default-baseдо 6.4.0-150700.53.60.1.150700.17.35.46.4.0-150700.53.60.1.150700.17.35.4
SUSE:Linux Enterprise Module for Basesystem 15 SP7kernel-sourceдо 6.4.0-150700.53.60.16.4.0-150700.53.60.1
SUSE:Linux Enterprise Module for Basesystem 15 SP7kernel-zfcpdumpдо 6.4.0-150700.53.60.16.4.0-150700.53.60.1

+24

Тот же продукт

linux: все записи

Другие записи с наивысшей оценкой для того же основного продукта.

  • CVE-2022-0847A flaw was found in the way the "flags" member of the new pipe buffer structure was lacking proper initialization in copy_page_to_iter_pipe KEV
    89Срочно
  • CVE-2021-22555Heap Out-Of-Bounds Write in Netfilter IP6T_SO_SET_REPLACEKEV
    85Срочно
  • CVE-2016-5195Race condition in mm/gup.c in the Linux kernel 2.x through 4.x before 4.8.3 allows local users to gain privileges by leveraging incorrect haKEV
    83Срочно
  • CVE-2019-13272In the Linux kernel before 5.1.17, ptrace_link in kernel/ptrace.c mishandles the recording of the credentials of a process that wants to creKEV
    77На этой неделе
  • CVE-2013-6282The (1) get_user and (2) put_user API functions in the Linux kernel before 3.5.5 on the v6k and v7 ARM platforms do not validate certain addKEV
    77На этой неделе
  • CVE-2013-2094The perf_swevent_init function in kernel/events/core.c in the Linux kernel before 3.8.9 uses an incorrect integer data type, which allows loKEV
    77На этой неделе

Исправление

На какую версию обновиться

Версии с исправлением по данным вендора, реестров пакетов и Microsoft. Перед обновлением сверьтесь с бюллетенем вендора.

Продукт / пакетИсправленная версияИсточник
Linux Linux0bb848d8c64938024e45780f8032f1f67d3a3607Вендор (CNA)
Linux Linux1f4714065b2bcbb0a4013fd355b84b848e6cc345Вендор (CNA)
Linux Linux341d01087f821aa0f165fb1ffc8bfe4e50776da7Вендор (CNA)
Linux Linux5653af416a48f6c18f9626ae9df96f814f45ff34Вендор (CNA)
Linux Linux6b757f345eeea87ed5d8afd6de35b927a1a57a2fВендор (CNA)
Linux Linux8820ffe0975fd2efbe50453e9179c8e1c33a13d3Вендор (CNA)
Linux Linux8da13e6d63c1a97f7302d342c89c4a56a55c7015Вендор (CNA)
Linux Linuxeb652535e9ec795ef5c1078f7578eaaed755268bВендор (CNA)
debian:linux6.1.170-1 · Debian:12Реестр пакетов (OSV)
opensuse:dtb-aarch646.12.0-160000.35.1 · openSUSE:Leap 16.0Реестр пакетов (OSV)
opensuse:kernel-64kb6.12.0-160000.35.1 · openSUSE:Leap 16.0Реестр пакетов (OSV)
opensuse:kernel-azure6.12.0-160000.35.1 · openSUSE:Leap 16.0Реестр пакетов (OSV)
opensuse:kernel-default6.12.0-160000.35.1 · openSUSE:Leap 16.0Реестр пакетов (OSV)
opensuse:kernel-default-base6.12.0-160000.35.1.160000.2.16 · openSUSE:Leap 16.0Реестр пакетов (OSV)
opensuse:kernel-docs6.12.0-160000.35.1 · openSUSE:Leap 16.0Реестр пакетов (OSV)
opensuse:kernel-kvmsmall6.12.0-160000.35.1 · openSUSE:Leap 16.0Реестр пакетов (OSV)
opensuse:kernel-obs-build6.12.0-160000.35.1 · openSUSE:Leap 16.0Реестр пакетов (OSV)
opensuse:kernel-obs-qa6.12.0-160000.35.1 · openSUSE:Leap 16.0Реестр пакетов (OSV)
opensuse:kernel-rt6.12.0-160000.35.1 · openSUSE:Leap 16.0Реестр пакетов (OSV)
opensuse:kernel-source6.12.0-160000.35.1 · openSUSE:Leap 16.0Реестр пакетов (OSV)
opensuse:kernel-syms6.12.0-160000.35.1 · openSUSE:Leap 16.0Реестр пакетов (OSV)
suse:kernel-64kb6.12.0-160000.35.1 · SUSE:Linux Micro 6.2Реестр пакетов (OSV)
suse:kernel-azure6.12.0-160000.35.1 · SUSE:Linux Enterprise Server 16.0Реестр пакетов (OSV)
suse:kernel-default6.12.0-160000.35.1 · SUSE:Linux Enterprise High Availability Extension 16.0Реестр пакетов (OSV)
suse:kernel-default-base6.4.0-47.1.21.24 · SUSE:Linux Micro 6.0Реестр пакетов (OSV)
suse:kernel-docs6.12.0-160000.35.1 · SUSE:Linux Enterprise Server 16.0Реестр пакетов (OSV)
suse:kernel-kvmsmall6.4.0-47.1 · SUSE:Linux Micro 6.0Реестр пакетов (OSV)
suse:kernel-obs-build6.12.0-160000.35.1 · SUSE:Linux Micro Extras 6.2Реестр пакетов (OSV)
suse:kernel-obs-qa6.12.0-160000.35.1 · SUSE:Linux Enterprise Server 16.0Реестр пакетов (OSV)
suse:kernel-rt6.12.0-160000.35.1 · SUSE:Linux Micro 6.2Реестр пакетов (OSV)

+3

Статус эксплойта

Публичный эксплойт неизвестен

Публичный эксплойт пока не обнаружен. Это не значит, что вы в безопасности, лишь что порог чуть выше.

Контекст для исследователя

Для пентестеров и исследователей: профиль атаки, расхождение оценок, хронология, коммиты исправлений, авторы, кандидаты в варианты и цепочки, охват bug bounty. Всё выводится из имеющихся данных; без кода эксплойтов.

Хронология

От публикации до сегодня: proof of concept, модуль Metasploit, CISA KEV и запись об исправлении. Даты — как сообщают источники.

Кроме публикации датированных событий нет.

EPSS за 120 дней

Ежедневная оценка FIRST EPSS; записываются только изменения от 0,01 (ступенчатый график).

Ссылки на патчи и коммиты

Коммиты, PR и diff среди источников. Отправная точка для patch-diff и поиска вариантов; это исправления, не эксплойты.

Среди источников нет ссылок на коммит или PR.

Нашедшие, сообщившие и аналитики, названные в записи CNA. Нажмите имя, чтобы увидеть другие записи исследователя.

В записи CNA нет авторов.

Кандидаты в варианты

Тот же продукт, тот же класс уязвимости, в пределах 18 месяцев. Если патч не закрыл первопричину, родственная ошибка здесь.

Ночной расчёт связей ничего не нашёл.

Кандидаты в цепочки

Обход аутентификации и уязвимость, требующая привилегий, в одном продукте и близко по времени: вместе они могут дать путь без аутентификации.

—

Охват bug bounty

Известной публичной программы нет.

Источник: bounty-targets-data (публичные списки HackerOne, Bugcrowd, Intigriti, YesWeHack).

Технические детали

Условия атаки

  • Может быть вызвана пользователем с локальным доступом к системе.
  • Достаточно учётной записи с низкими привилегиями.
  • Действия пользователя не требуются.
  • Особые условия не требуются; воспроизводится стабильно.

В случае успеха

Конфиденциальность
высокое · данные могут быть прочитаны
Целостность
высокое · данные или конфигурация могут быть изменены
Доступность
высокое · работа сервиса может быть нарушена
Вектор атаки
Локальный
Сложность атаки
Низкая
Требуемые привилегии
Низкие
Взаимодействие с пользователем
Не требуется
Область действия
Не изменяется
Влияние на конфиденциальность
Высокое
Влияние на целостность
Высокое
Влияние на доступность
Высокое

Класс уязвимости (CWE)

CWE-416 · Use After Free

Вектор CVSS

CVSS:3.1/AV:L/AC:L/PR:L/UI:N/S:U/C:H/I:H/A:H

nvd-secondary

Первопричина

После освобождения области памяти продолжает использоваться другая ссылка на неё. К этому моменту та же область может быть выделена под другие данные.

Ошибка в коде

Весь класс CWE-416

Показательный пример этого класса уязвимостей. Это не исходный код вендора; показан ошибочный шаблон и его исправление.

Уязвимый код

c
free(dev->buf);/* ... другой поток всё ещё работает ... */process(dev->buf);

Исправленный код

c
lock(&dev->lock);free(dev->buf);dev->buf = NULL;unlock(&dev->lock);

Контекст атаки

Шаблоны атак MITRE CAPEC и техники ATT&CK для этого класса уязвимости (CWE). Отправная точка для правил обнаружения и threat hunting.

У MITRE нет сопоставления CAPEC/ATT&CK для этого CWE.

Журнал изменений

  1. Исправление✗ → ✓

Для отслеживаемых записей эти изменения приходят и как уведомления. →

Источники

Все записи