Мониторинг Карточка CVE
Открытые данные
К списку уязвимостей
Информационный
Опубликована

CVE-2026-98065

bpf: Reject key-less BTF for hash maps

Публикация: 25.09.2026·Обновлена: 19.10.2026, 12:13·Europe/Moscow

Что произошло

Автоперевод выключен · оригинальное описание

In the Linux kernel, the following vulnerability has been resolved: bpf: Reject key-less BTF for hash maps map_check_btf() allows a key-less BTF (btf_key_type_id == 0) only for maps that have a ->map_check_btf callback, and leaves the actual decision to that callback. Hash maps used to have no ->map_check_btf, so a key-less BTF was rejected outright. That changed when htab and rhtab gained a ->map_check_btf to register a dtor - htab in commit 1df97a7453ee ("bpf: Register dtor for freeing special fields") and rhtab in commit 6905f8601298 ("bpf: Allow special fields in resizable hashtab"). Neither looks at the key, so a key-less hash map now passes map_check_btf() and gets created. Reading it back through bpffs feeds the key type_id 0 into btf_type_seq_show(); btf_type_by_id() returns the void type, kind_ops[BTF_KIND_UNKN] is NULL, and btf_type_show() dereferences it: RIP: 0010:btf_type_show+0x223/0x2e0 kernel/bpf/btf.c:8232 RSP: 0018:ffffc9000399f868 EFLAGS: 00010206 RAX: dffffc0000000000 RBX: 0000000000000000 RCX: 0000000000000000 RDX: 0000000000000005 RSI: 0000000000000000 RDI: 0000000000000028 RBP: 0000000000000000 R08: 0000000000000001 R09: 0000000000000000 R10: ffffc9000399f970 R11: 0000000000000001 R12: ffffffff9b96b140 R13: ffffc9000399f8e0 R14: ffff88803d393c00 R15: 0000000000000003 CS: 0010 DS: 0000 ES: 0000 CR0: 0000000080050033 CR2: 0000200000000000 CR3: 000000003d213000 CR4: 0000000000352ef0 DR0: 0000000039ae8f55 DR1: 0000000000000000 DR2: 0000000000000000 DR3: 0000000000000000 DR6: 00000000ffff0ff0 DR7: 0000000000000400 Call Trace: btf_type_seq_show_flags+0xca/0x120 kernel/bpf/btf.c:8250 htab_map_seq_show_elem+0x12e/0x350 kernel/bpf/hashtab.c:1669 map_seq_show+0x13d/0x1e0 kernel/bpf/inode.c:293 traverse.part.0.constprop.0+0x107/0x650 fs/seq_file.c:112 traverse fs/seq_file.c:99 [inline] seq_read_iter+0x93f/0x1270 fs/seq_file.c:196 seq_read+0x344/0x4d0 fs/seq_file.c:163 vfs_read+0x1e4/0xb40 fs/read_write.c:572 ksys_pread64 fs/read_write.c:764 [inline] __do_sys_pread64 fs/read_write.c:772 [inline] __se_sys_pread64 fs/read_write.c:769 [inline] __x64_sys_pread64+0x1eb/0x250 fs/read_write.c:769 do_syscall_x64 arch/x86/entry/syscall_64.c:61 [inline] do_syscall_64+0x123/0x790 arch/x86/entry/syscall_64.c:84 entry_SYSCALL_64_after_hwframe+0x77/0x7f Reject a key-less BTF in htab_map_check_btf() and rhtab_map_check_btf(), restoring the previous behavior.

Что это значит

В источнике описана ошибка безопасности в перечисленных продуктах. Фактический риск зависит от установленной версии, конфигурации и доступности компонента; проверьте условия в первичном бюллетене.

Что делать

Редакционные пояснения, сведения источников и общие рекомендации помечены отдельно
Плановое окно после оценки применимости

1. Проверьте, затронуты ли вы

Соберите инвентаризацию и сравните с таблицей затронутых версий. Эти команды только показывают установленные компоненты и сами по себе не доказывают наличие CVE.

Debian / Ubuntu
dpkg-query -W -f='${Package}	${Version}\n'
RHEL / AlmaLinux
rpm -qa --qf '%{NAME}\t%{VERSION}-%{RELEASE}\n'
Windows PowerShell
Get-HotFix | Select-Object HotFixID, InstalledOn
Общая рекомендация, не из бюллетеня вендора

2. Установите исправление

Сверьте точный продукт и версию с бюллетенем вендора. Установите указанное в нём исправление после резервного копирования и проверки совместимости. Подтверждённая целевая версия в источниках отсутствует.

Общая рекомендация, не из бюллетеня вендора

3. Временные меры

До проверки бюллетеня ограничьте доступ к затронутому компоненту доверенными узлами. Оцените сегментацию и отключение ненужных интерфейсов с владельцем сервиса; универсального правила WAF для этой CVE не подтверждено.

Общая рекомендация, не из бюллетеня вендора

4. Проверьте следы эксплуатации

Проверьте аномальные входы, новые учётные записи, ошибки и необычные дочерние процессы в затронутом сервисе. Публичные проверенные правила обнаружения не включены в запись; отсутствие сигналов не доказывает отсутствие компрометации.

Общая рекомендация, не из бюллетеня вендора

5. После исправления

  • Проверьте фактическую версию и результат установки по бюллетеню.
  • При необходимости перезапустите сервисы в согласованное окно.
  • Повторите проверку сканером и функциональные проверки.
  • Зафиксируйте результат, дату, владельца и оставшийся риск.

Продукты и затронутые версии

Linux / Linux

{
  "status": "affected",
  "version": "451a84a3ad3c897c03181af433e7c98640730f1f",
  "lessThan": "54098e3fe34ec190bc256b338b9a93c7e2dc9354",
  "versionType": "git"
}
{
  "status": "affected",
  "version": "51a17f0ce19c4ee2a25cf16c93490d509b1ebb0a",
  "lessThan": "fa047f2a025003f5654ebd76539f16a6ead0401a",
  "versionType": "git"
}
{
  "status": "affected",
  "version": "1df97a7453eec80c1912c2d0360290a3970a7671",
  "lessThan": "7ca231252820c47aaec42a5db580db98f9b64724",
  "versionType": "git"
}
{
  "status": "affected",
  "version": "1df97a7453eec80c1912c2d0360290a3970a7671",
  "lessThan": "0895a0c0734703be5532f3883c42db95615fd98b",
  "versionType": "git"
}

Linux / Linux

{
  "status": "affected",
  "version": "7.0"
}
{
  "status": "unaffected",
  "version": "0",
  "lessThan": "7.0",
  "versionType": "semver"
}
{
  "status": "unaffected",
  "version": "7.2.7",
  "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-03T21:16:04.220045+00:00"
  },
  "title": {
    "source": "cve",
    "received_at": "2026-10-28T20:15:08.196568+00:00"
  },
  "scores": [],
  "status": {
    "source": "cve",
    "received_at": "2026-10-28T20:15:08.196568+00:00"
  },
  "affected": [
    "cve"
  ],
  "published": {
    "source": "cve",
    "received_at": "2026-10-28T20:15:08.196568+00:00"
  },
  "solutions": [],
  "percentile": {
    "source": "epss",
    "received_at": "2026-11-03T21:16:04.220045+00:00"
  },
  "references": [
    "cve"
  ],
  "description": {
    "source": "cve",
    "received_at": "2026-10-28T20:15:08.196568+00:00"
  },
  "workarounds": [],
  "configurations": []
}

Хронология записи

  1. Данные обновлены04.11.2026, 00:16
  2. Данные обновлены03.11.2026, 00:15
  3. Данные обновлены02.11.2026, 00:13
  4. Данные обновлены31.10.2026, 12:00
  5. Данные обновлены29.10.2026, 12:47
  6. Опубликована28.10.2026, 23:15

Личная заметка и статус

Другие CVE того же продукта

УЯЗВИМОСТЬ / ПРОДУКТПРИОРИТЕТCVSSEPSSСИГНАЛЫОПУБЛИКОВАНАКарточка
CVE-2024-36978
net: sched: sch_multiq: fix possible OOB write in multiq_tune()
Linux / Linux · Siemens / RUGGEDCOM RST2428P
Высокий7.8
0,28 %
Патч
19.06.2024
CVE-2024-46852
dma-buf: heaps: Fix off-by-one in CMA heap fault handler
Linux / Linux · debian / debian_linux
Высокий7.8
0,22 %
Патч
27.09.2024
CVE-2024-26923
af_unix: Fix garbage collector racing against connect()
Linux / Linux · Siemens / RUGGEDCOM RST2428P
Высокий7.8
0,21 %
Патч
25.04.2024
CVE-2026-99246
tipc: protect node reset trace dump with node lock
Linux / Linux
Высокий8.1
—
03.11.2026
CVE-2026-99270
tcp: Fix potential UAF in reqsk_timer_handler().
Linux / Linux
Высокий8.1
—
03.11.2026