Description
In the Linux kernel, the following vulnerability has been resolved:

cipso: adjust cached option offsets when removing CIPSO

cipso_v4_skbuff_delattr() removes the CIPSO bytes but does not adjust
cached offsets for options that follow them.

For example, with a valid 10-byte CIPSO option followed by a seven-byte
RR option, parsing records rr at offset 30. Removing CIPSO moves RR to
offset 20, while the cached offset remains 30. Consumers such as
ip_forward_options() and __ip_options_echo() then access the wrong bytes;
the latter may interpret packet data as the option length and copy it into
fixed-size option storage.

Mirror cipso_v4_delopt() and subtract cipso_len from the srr, rr, ts and
router_alert offsets when they follow CIPSO. cipso_len is the distance
the first memmove() shifts those options. The later header move and
network-header reset relocate the bytes and their offset base together.
Published: 2026-10-23
Score: n/a
EPSS: n/a
KEV: No
Impact: Potential memory corruption through incorrect option offset handling
Action: Apply update
AI Analysis

Impact

A flaw in the Linux kernel’s CIPSO option handling leads to the offset for subsequent IP options remaining stale after the CIPSO attribute is removed. Consumers such as packet forwarding and option echoing calculations then reference invalid memory locations, potentially causing untrusted packet data to be interpreted as option lengths and copied into fixed‑size buffers. This misuse of packet contents can corrupt kernel memory or cause anomalous behavior when processing network traffic.

Affected Systems

The vulnerability is present in Linux kernel implementations that do not include the recent commit correcting the cached offset logic; specific affected releases are not listed in the advisory, implying that any kernel version prior to the patch may be susceptible. All distributions using the default Linux kernel should verify whether their kernel contains the fix introduced in the linked commits.

Risk and Exploitability

No EPSS score or KEV designation is available, and a CVSS score is not provided, so the overall severity cannot be precisely quantified. However, the flaw can be triggered by a network attacker sending crafted IP packets containing CIPSO options, which would lead to a local kernel memory corruption if the victim processes the packet. Given the lack of publicly available exploitation examples, the risk is moderate but not negligible, and operators should treat it as a potential avenue for local privilege escalation or denial of service.

Generated by OpenCVE AI on October 23, 2026 at 15:43 UTC.

Remediation

No solution or workaround provided in the CVE record.

OpenCVE Recommended Actions

  • Upgrade the Linux kernel to a release that incorporates the commit correcting the CIPSO offset handling
  • If an immediate kernel upgrade is impractical, manually apply the change to the cipso_v4_delopt() logic from the Git commit and rebuild the kernel
  • As a short‑term countermeasure, consider filtering or dropping packets that contain CIPSO options using firewall or traffic control rules

Generated by OpenCVE AI on October 23, 2026 at 15:43 UTC.

Tracking

Sign in to view the affected projects.

Advisories

No advisories yet.

History

Fri, 23 Oct 2026 16:00:00 +0000

Type Values Removed Values Added
Weaknesses CWE-129

Fri, 23 Oct 2026 12:45:00 +0000

Type Values Removed Values Added
Description In the Linux kernel, the following vulnerability has been resolved: cipso: adjust cached option offsets when removing CIPSO cipso_v4_skbuff_delattr() removes the CIPSO bytes but does not adjust cached offsets for options that follow them. For example, with a valid 10-byte CIPSO option followed by a seven-byte RR option, parsing records rr at offset 30. Removing CIPSO moves RR to offset 20, while the cached offset remains 30. Consumers such as ip_forward_options() and __ip_options_echo() then access the wrong bytes; the latter may interpret packet data as the option length and copy it into fixed-size option storage. Mirror cipso_v4_delopt() and subtract cipso_len from the srr, rr, ts and router_alert offsets when they follow CIPSO. cipso_len is the distance the first memmove() shifts those options. The later header move and network-header reset relocate the bytes and their offset base together.
Title cipso: adjust cached option offsets when removing CIPSO
First Time appeared Linux
Linux linux Kernel
CPEs cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*
Vendors & Products Linux
Linux linux Kernel
References

Subscriptions

Linux Linux Kernel
cve-icon MITRE

Status: PUBLISHED

Assigner: Linux

Published:

Updated: 2026-10-23T12:23:05.854Z

Reserved: 2026-09-25T10:25:14.389Z

Link: CVE-2026-99064

cve-icon Vulnrichment

No data.

cve-icon NVD

Status : Received

Published: 2026-10-23T13:17:30.253

Modified: 2026-10-23T13:17:30.253

Link: CVE-2026-99064

cve-icon Redhat

No data.

cve-icon OpenCVE Enrichment

Updated: 2026-10-23T15:45:16Z

Weaknesses
  • CWE-129

    Improper Validation of Array Index