Public mode

No access to your tenant or devices. Every item links to its source. What this means

Some sources or documents need attention: 261/275 feeds/APIs · 469/469 docs · 9/9 advisories · checked 19:07 UTC Customize Public modeDiscuss ChangeIntel on Discord

calipso: keep BIG TCP payload_len in calipso_skbuff_setattr()

Assessment

Severity
Moderate
CVSS base score
6.5
Impact
Not stated
Exploitation detected
Unknown: not stated by MSRC
Exploitability
Not assessed
Publicly disclosed
Unknown: not stated by MSRC
EPSS · 30-day forecast
No EPSS score collected
Customer action
Required: follow the MSRC remediation guidance
More details
CVSS vector
CVSS:3.1/AV:N/AC:L/PR:L/UI:N/S:U/C:N/I:N/A:H/E:U
Public detection template
No Nuclei template is listed in the current collected catalog
Component
Mariner
Weakness
—
Issued by
Linux
Published
29 Oct 2026 · October 2026
Last revised
7 Nov 2026Information published.
CVSS 3.1 base metricsRed raises the risk · green lowers it
Attack vector
NetworkAV:N
Attack complexity
LowAC:L
Privileges required
LowPR:L
User interaction
NoneUI:N
Scope
UnchangedS:U
Confidentiality
NoneC:N
Integrity
NoneI:N
Availability
HighA:H

Updates that fix it

0 KBs

No KB listed

No KB update is listed in the collected MSRC record. Check the MSRC advisory for product releases and other remedies.

Affected products

Open Source Software
2 affected products
  • azl3 kernel 6.6.157.1-1 on Azure Linux 3.0
  • azl3 kernel 6.6.159.1-1 on Azure Linux 3.0

What changed

  1. Detection template: Unknown: detection-template evidence is incomplete or retained → No Nuclei template listed
  2. Detection template: No Nuclei template listed → Unknown: detection-template evidence is incomplete or retained
  3. Detection template: Unknown: detection-template evidence is incomplete or retained → No Nuclei template listed
  4. Detection template: No Nuclei template listed → Unknown: detection-template evidence is incomplete or retained
  5. Affected products: azl3 kernel 6.6.157.1-1 on Azure Linux 3.0 → azl3 kernel 6.6.157.1-1 on Azure Linux 3.0, azl3 kernel 6.6.159.1-1 on Azure Linux 3.0
  6. Detection template: No Nuclei template listed · Customer action: Required: apply the update → Required: follow the MSRC remediation guidance · Public disclosure: No → Unknown: not stated by MSRC · Exploitation detected: Not reported by MSRC → Unknown: not stated by MSRC
Page history

Changes are dated when recorded; day views use the last saved version from that UTC day, and citations stay fixed.

Cite this version
Field-level log (25)

Up to 100 recent field edits are shown; older edits may be outside retention.

  1. 7 Nov 2026 · 08:59:22 UTC Last revised5 Nov 2026 14:47 UTC → 7 Nov 2026 01:49 UTC
  2. 6 Nov 2026 · 17:32:22 UTC Public detection templateUnknown: detection-template evidence is incomplete or retained → No Nuclei template listed
  3. 6 Nov 2026 · 17:32:22 UTC Source coverage: public-exploit-codeIncomplete → Current
  4. 6 Nov 2026 · 17:32:22 UTC Source coverage: first-epssIncomplete → Current
  5. 6 Nov 2026 · 17:32:22 UTC Source coverage: msrc-cvrfIncomplete → Current
  6. 6 Nov 2026 · 16:31:02 UTC Public detection templateNo Nuclei template listed → Unknown: detection-template evidence is incomplete or retained
  7. 6 Nov 2026 · 16:31:02 UTC Source coverage: public-exploit-codeCurrent → Incomplete
  8. 6 Nov 2026 · 16:31:02 UTC Source coverage: first-epssCurrent → Incomplete
  9. 6 Nov 2026 · 16:31:02 UTC Source coverage: msrc-cvrfCurrent → Incomplete
  10. 6 Nov 2026 · 09:07:49 UTC Last revised1 Nov 2026 14:52 UTC → 5 Nov 2026 14:47 UTC
  11. 2 Nov 2026 · 17:30:39 UTC Public detection templateUnknown: detection-template evidence is incomplete or retained → No Nuclei template listed
  12. 2 Nov 2026 · 17:30:39 UTC Source coverage: public-exploit-codeIncomplete → Current
  13. 2 Nov 2026 · 17:30:39 UTC Source coverage: first-epssIncomplete → Current
  14. 2 Nov 2026 · 17:30:39 UTC Source coverage: msrc-cvrfIncomplete → Current
  15. 2 Nov 2026 · 16:27:39 UTC Public detection templateNo Nuclei template listed → Unknown: detection-template evidence is incomplete or retained
  16. 2 Nov 2026 · 16:27:39 UTC Source coverage: public-exploit-codeCurrent → Incomplete
  17. 2 Nov 2026 · 16:27:39 UTC Source coverage: first-epssCurrent → Incomplete
  18. 2 Nov 2026 · 16:27:39 UTC Source coverage: msrc-cvrfCurrent → Incomplete
  19. 2 Nov 2026 · 09:04:36 UTC Last revised29 Oct 2026 01:08 UTC → 1 Nov 2026 14:52 UTC
  20. 2 Nov 2026 · 09:04:36 UTC Affected productsazl3 kernel 6.6.157.1-1 on Azure Linux 3.0 → azl3 kernel 6.6.157.1-1 on Azure Linux 3.0, azl3 kernel 6.6.159.1-1 on Azure Linux 3.0
  21. 29 Oct 2026 · 20:19:26 UTC Public detection templateNo Nuclei template listed
  22. 29 Oct 2026 · 20:19:26 UTC EPSSNot scored → No EPSS score collected
  23. 29 Oct 2026 · 20:19:26 UTC Customer actionRequired: apply the update → Required: follow the MSRC remediation guidance
  24. 29 Oct 2026 · 20:19:26 UTC Publicly disclosedNo → Unknown: not stated by MSRC
  25. 29 Oct 2026 · 20:19:26 UTC Exploitation detectedNot reported by MSRC → Unknown: not stated by MSRC

Explore global source statements, affected packages and advisory history for CVE-2026-99191. The catalog has a separate collection scope from Microsoft release records.

Collected exploitation and prediction evidence

Risk source coverage

CISA KEV is observed exploitation evidence. FIRST EPSS is a dated prediction of exploitation in the next 30 days. Missing scores are unknown. This collector requests predictions only for explicit CVE aliases in the public NuGet archive; Microsoft release views retain their existing prediction scope.

No collected risk observation for these identifiers. This does not establish absence of exploitation or a zero probability.

cve-program · CVE-2026-99191

Published

calipso: keep BIG TCP payload_len in calipso_skbuff_setattr()

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 datagrams (Udp6InDatagrams 5, Ip6InTruncatedPkts 0) with this patch.

Source published
28 Oct 2026 10:35:47 UTC
Source modified
30 Oct 2026 12:42:48 UTC
Observed here
30 Oct 2026 13:45:33 UTC
Source terms
CVE Program Terms of Use

Original source record · Cite this exact observation · Complete original publisher JSON

This view projects the publisher's source fields for reading; the original JSON retains additional fields and CVE enrichment containers. Attribution: cve-program · CVE Program Terms of Use. Source text is retained; field grouping and change labels are provided by ChangeIntel.

ChangeIntel

An IT change radar: releases, security, known issues, retirements, documentation changes, and service status from public sources. Every item links to supporting evidence; dates and statuses can change after they are read.

Sources read 10 Nov 19:07 UTC · 261 of 275 readable · 260 fully read · documentation 469/469 current