CVE-2026-98096
ipv6: sr: restore network header before routing and forwarding
Что произошло
In the Linux kernel, the following vulnerability has been resolved: ipv6: sr: restore network header before routing and forwarding ipv6_srh_rcv() runs with skb->data at the Segment Routing Header (SRH) while skb_network_header() points at the IPv6 header. When segments_left > 0, ipv6_srh_rcv() previously restored the skb->data position by pushing sizeof(struct ipv6hdr), assuming the SRH immediately followed the fixed IPv6 header. If another extension header (such as a Hop-by-Hop options header) precedes the SRH, skb_network_offset() remained negative. This led to two problems: 1. During ip6_route_input(), fib6_rules_early_flow_dissect() invokes __skb_flow_dissect() which passes the negative skb_network_offset() to flow dissection, breaking BPF and C flow dissector logic. 2. If forwarded via ip6_forward() or redirected via act_mirred, downstream handlers (like sch_fragment() or neighbour output) pass the negative offset as an unsigned length, triggering OOB memcpy or buffer overflows. Fix this by pushing -skb_network_offset(skb) before routing, ensuring skb_network_offset(skb) is 0 for route lookup / flow dissection as well as downstream forwarding. On the loopback path, pull skb_transport_offset(skb) to restore skb->data to the SRH before looping back.
Что это значит
Компонент может записать данные за границами выделенной памяти. Последствия зависят от условий атаки и прав процесса.
Что делать
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": "1ababeba4a21f3dba3da3523c670b207fb2feb62",
"lessThan": "f463c4786cf27376de7dfc0833a12e924a98f698",
"versionType": "git"
}{
"status": "affected",
"version": "1ababeba4a21f3dba3da3523c670b207fb2feb62",
"lessThan": "8f44d4160bcdb3136a9145a4b9c7816382976925",
"versionType": "git"
}{
"status": "affected",
"version": "1ababeba4a21f3dba3da3523c670b207fb2feb62",
"lessThan": "9cfbe2c381ab6d00a08e7a5b6028865adfb4e1bc",
"versionType": "git"
}{
"status": "affected",
"version": "1ababeba4a21f3dba3da3523c670b207fb2feb62",
"lessThan": "af08f62b5a5a446d6134a92d86771d3d12e0e3da",
"versionType": "git"
}{
"status": "affected",
"version": "1ababeba4a21f3dba3da3523c670b207fb2feb62",
"lessThan": "ce4c8beedc19aceeab0e7bdc6f34394fb158c47c",
"versionType": "git"
}{
"status": "affected",
"version": "1ababeba4a21f3dba3da3523c670b207fb2feb62",
"lessThan": "97b21ef57dfabbff660a4672c9fef7edfb720f47",
"versionType": "git"
}{
"status": "affected",
"version": "1ababeba4a21f3dba3da3523c670b207fb2feb62",
"lessThan": "3ad7dca5e03bd64c65983a19734337512fd75491",
"versionType": "git"
}{
"status": "affected",
"version": "1ababeba4a21f3dba3da3523c670b207fb2feb62",
"lessThan": "975b5b067f525a1b1338c4a3bee1c46545801518",
"versionType": "git"
}Linux / Linux
{
"status": "affected",
"version": "4.10"
}{
"status": "unaffected",
"version": "0",
"lessThan": "4.10",
"versionType": "semver"
}{
"status": "unaffected",
"version": "5.10.271",
"versionType": "semver",
"lessThanOrEqual": "5.10.*"
}{
"status": "unaffected",
"version": "5.15.222",
"versionType": "semver",
"lessThanOrEqual": "5.15.*"
}{
"status": "unaffected",
"version": "6.1.189",
"versionType": "semver",
"lessThanOrEqual": "6.1.*"
}{
"status": "unaffected",
"version": "6.6.158",
"versionType": "semver",
"lessThanOrEqual": "6.6.*"
}{
"status": "unaffected",
"version": "6.12.111",
"versionType": "semver",
"lessThanOrEqual": "6.12.*"
}{
"status": "unaffected",
"version": "6.18.53",
"versionType": "semver",
"lessThanOrEqual": "6.18.*"
}{
"status": "unaffected",
"version": "7.2.7",
"versionType": "semver",
"lessThanOrEqual": "7.2.*"
}{
"status": "unaffected",
"version": "7.3",
"versionType": "original_commit_for_fix",
"lessThanOrEqual": "*"
}linux / linux_kernel
{
"status": "affected",
"version": "*",
"versionEndExcluding": "5.10.271",
"versionStartIncluding": "4.10"
}cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*
linux / linux_kernel
{
"status": "affected",
"version": "*",
"versionEndExcluding": "5.15.222",
"versionStartIncluding": "5.11"
}cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*
linux / linux_kernel
{
"status": "affected",
"version": "*",
"versionEndExcluding": "6.1.189",
"versionStartIncluding": "6.0"
}cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*
linux / linux_kernel
{
"status": "affected",
"version": "*",
"versionEndExcluding": "6.6.158",
"versionStartIncluding": "6.2"
}cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*
linux / linux_kernel
{
"status": "affected",
"version": "*",
"versionEndExcluding": "6.12.111",
"versionStartIncluding": "6.7"
}cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*
linux / linux_kernel
{
"status": "affected",
"version": "*",
"versionEndExcluding": "6.18.53",
"versionStartIncluding": "6.13"
}cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*
linux / linux_kernel
{
"status": "affected",
"version": "*",
"versionEndExcluding": "7.2.7",
"versionStartIncluding": "6.19"
}cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*
linux / linux_kernel
{
"status": "affected",
"version": "7.3"
}cpe:2.3:o:linux:linux_kernel:7.3:rc1:*:*:*:*:*:*
CVSS: оценки и векторы
CVSS 3.1 · cve7.4
CVSS:3.1/AV:N/AC:H/PR:N/UI:N/S:U/C:N/I:H/A:H
CVSS 3.1 · 416baaa9-dc9f-4396-8d5f-8c081fb06d677.4
CVSS:3.1/AV:N/AC:H/PR:N/UI:N/S:U/C:N/I:H/A:H
CVSS 3.1 · ghsa7.4
CVSS:3.1/AV:N/AC:H/PR:N/UI:N/S:U/C:N/I:H/A:H
Классы CWE
Источники и ссылки
Происхождение полей
{
"cwes": [
"ghsa",
"nvd"
],
"epss": {
"source": "epss",
"received_at": "2026-11-01T21:13:18.959328+00:00"
},
"title": {
"source": "cve",
"received_at": "2026-10-28T20:15:08.205904+00:00"
},
"scores": [
"cve",
"ghsa",
"nvd"
],
"status": {
"source": "cve",
"received_at": "2026-10-28T20:15:08.205904+00:00"
},
"affected": [
"cve",
"nvd"
],
"published": {
"source": "cve",
"received_at": "2026-10-28T20:15:08.205904+00:00"
},
"solutions": [],
"percentile": {
"source": "epss",
"received_at": "2026-11-01T21:13:18.959328+00:00"
},
"references": [
"cve",
"ghsa",
"nvd"
],
"description": {
"source": "cve",
"received_at": "2026-10-28T20:15:08.205904+00:00"
},
"workarounds": [],
"configurations": [
"nvd"
]
}Хронология записи
- Данные обновлены02.11.2026, 00:13
- Данные обновлены31.10.2026, 12:00
- Данные обновлены29.10.2026, 12:47
- Данные обновлены29.10.2026, 01:01
- Данные обновлены28.10.2026, 23:15
- Появились сведения об исправлении28.10.2026, 21:59
Личная заметка и статус
Другие CVE того же продукта
| УЯЗВИМОСТЬ / ПРОДУКТ | ПРИОРИТЕТ | CVSS | EPSS | СИГНАЛЫ | ОПУБЛИКОВАНА | Карточка |
|---|---|---|---|---|---|---|
| CVE-2026-99239 Bluetooth: L2CAP: refuse __l2cap_chan_add if chan already has conn Linux / Linux | Высокий | 7.8 | — | 02.11.2026 | ||
| CVE-2026-99234 tracing: Unregister field variable histograms when the command fails Linux / Linux | Информационный | — | — | 02.11.2026 | ||
| CVE-2026-99233 tracing/histograms: Verify event_call identity when updating synth_event refcount Linux / Linux | Высокий | 7.8 | — | 02.11.2026 | ||
| CVE-2026-99235 tracing: Save the event file instead of the compatible histogram Linux / Linux | Высокий | 7.8 | — | 02.11.2026 | ||
| CVE-2026-99238 tracing: Hold trace_types_lock when updating modules in persistent instances Linux / Linux | Высокий | 7.8 | — | 02.11.2026 |