Vulnerability · CVE-2026-99191
calipso: keep BIG TCP payload_len in calipso_skbuff_setattr()
Published Oct 28, 2026 · catalog updated Oct 28, 2026 · Linux Linux
Last checked Oct 29, 2026. A connected source was read within the last 7 days.
Open the advisory
Exploitation likelihood is not on this record for CVE-2026-99191. A missing EPSS score is not a low risk. Compare Linux Linux with the linked advisory before you change production.
Gaps on this record
- No vendor fix or required action is stored. Compare the linked advisory before you change production.
- EPSS is missing. A missing score is not a low risk.
Same product and reporting
- CVE-2026-99164 · Unknown
- CVE-2026-99100 · Unknown
- CVE-2026-99192 · High
- CVE-2026-99195 · Medium
- CVE-2026-99196 · Medium
- Severity
- Medium—
- Known exploitation
- Not in CISA/VulnCheck KEV
- EPSS
- Not in the current FIRST EPSS dataset
- Remediation
- Advisory link
- Affected products
- Debian:12 linux · Debian:13 linux · Debian:14 linux · vendor Linux Linux
In the Linux kernel, the following vulnerability has been resolved: calipso: keep BIG TCP payload_len in calipso_skbuff_setattr() calipso_skbuff_setattr() adjusts payload_len by the length of the option it inserts or resizes: payload = ntohs(ip6_hdr->payload_len); ip6_hdr->payload_len = htons(payload + len_delta); GRO can build BIG TCP packets larger than IPV6_MAXPLEN, and stores payload_len == 0 for them; ipv6_payload_len() then falls back to skb->len. For such a packet forwarded to a destination mapped to CALIPSO, the code above writes len_delta (or 65536 + len_delta when shrinking) into payload_len, and ipv6_payload_len() no longer falls back to skb->len. nf_tables, conntrack and sch_cake rely on it. The same arithmetic also wraps when a packet grows past IPV6_MAXPLEN, and a BIG TCP packet that shrinks below IPV6_MAXPLEN should get its real length back. Set payload_len from the skb length with ipv6_set_payload_len(), which stores 0 above IPV6_MAXPLEN and the real length otherwise, as ipv6_gro_complete() does. The network header was just reset to skb->data, so skb->len - sizeof(*ip6_hdr) is the payload length. Tested on one kernel (arm64, QEMU) with SELinux permissive, a minimal mdp-generated policy (network_peer_controls=1), "netlabelctl calipso add pass doi:16" and a NetLabel mapping of fd00:2::/64 to CALIPSO DOI 16. calipso_skbuff_setattr() was called through netlbl_skbuff_setattr() from a test-only debugfs hook (not part of this patch) adding a level-only label; payload_len after the call: case before fix after fix real length 1000, unlabeled 1016 1016 1016 70000 GSO, payload_len 0 16 0 70016 65530 GSO, grows past MAXPLEN 10 0 65546 65540 GSO with a 24 byte hop header, shrinks below MAXPLEN 65528 65532 65532 1000 with a 24 byte hop header 992 992 992 (0 means ipv6_payload_len() returns the real length.) On the forward path, with a client injecting unlabeled UDP through a router to a server, the router adds the CALIPSO option and the server delivers all datagra
Are you affected?
Enter the version you run. The result uses only the ranges stored on this record.
The check returns affected, not affected, or incomplete. It does not guess a version that is missing from the record.
- Debian:12 linux6.1.106-1, 6.1.106-2, 6.1.106-3
- Debian:13 linux6.12.100-1, 6.12.101-1, 6.12.105-1
- Debian:14 linux6.12.100-1, 6.12.101-1, 6.12.105-1
- vendor Linux Linuxversion unspecified
How to fix CVE-2026-99191
No stored fix
No vendor fix text is stored. Use the linked advisory before you change production.
Version check
Seen in 6.1.106-1 · 8 other packages on the advisory
Advisory
Open the cve_org record and follow its fix.
Official advisories
What to do
Three questions, each answered from this record only. Confirm the vendor advisory before you patch.
Should you patch?
Exploitation likelihood is not on this record for CVE-2026-99191. A missing EPSS score is not a low risk. Compare Linux Linux with the linked advisory before you change production.
Which versions are affected?
Compare what you have installed with 6.1.106-1, 6.1.106-2, 6.1.106-3, 6.12.100-1, 6.12.101-1, 6.12.105-1. Compare the installed version with the linked vendor advisory before you change production.
What should an analyst verify?
No weakness class is stored. EPSS is absent from the current FIRST dataset. There is no CISA KEV listing. No Exploit-DB or Metasploit reference is linked. Use the source links for the original advisory.
Technology hubs
Code
The project this record applies to. Exploit listings stay in References.
Timeline
Detection, updates, and resolution for this record.
Oct 28, 2026 · OpenCVE
Detected
CVE-2026-99191 is named on the public OpenCVE page.
Oct 28, 2026 · Trivy Vulnerability DB
Updated
In the Linux kernel, the following vulnerability has been resolved: calipso: keep BIG TCP payload_len in calipso_skbuff_setattr() calipso_skbuff_setattr() adjusts payload_len by the length of the option it inserts or resizes: payload = ntohs(ip6_hdr->payload_len); ip6_hdr->payload_len = htons(payload + len_delta); GRO can build BIG TCP packets larger than IPV6_MAXPLEN, and stores payload_len == 0
Sources
- CVE.orgVulnerability recordCVE-2026-99191
In the Linux kernel, the following vulnerability has been resolved: calipso: keep BIG TCP payload_len in calipso_skbuff_setattr() calipso_skbuff_setattr() adjusts payload_len by the length of the option it inserts or resizes: payload = ntohs(ip6_hdr->payload_len); ip6_hdr->payloa
cve.org - OpenCVEVendor advisoryCVE-2026-99191
CVE-2026-99191 is named on the public OpenCVE page.
opencve.io - Tenable CVE DatabaseVulnerability recordCVE-2026-99191
In the Linux kernel, the following vulnerability has been resolved: calipso: keep BIG TCP payload_len in calipso_skbuff_setattr() calipso_skbuff_setattr() adjusts payload_len by the length of the option it inserts or resizes: payload = ntohs(ip6_hdr->payload_len); ip6_hdr->payload_len = htons(payload + len_delta); GRO can build BIG TCP packets larger than IPV6_MAXPLEN, and stores payload_len == 0
tenable.com - Trivy Vulnerability DBPackage advisoryDEBIAN-CVE-2026-99191osv.dev
References
Freshness
Last verified in this catalog Oct 29, 2026. Significant claims (KEV, EPSS, CVSS, affected ranges) come from the source rows above — open the original publisher for the authoritative advisory.
- CVE.orgOct 28, 2026
- Trivy Vulnerability DBOct 28, 2026
- Tenable CVE DatabaseOct 28, 2026
- OpenCVEOct 28, 2026