Skip to main content

CVE-2025-39682Linux Kernel Improper Check for Unusual or Exceptional Conditions Vulnerability

Patch nowCritical9.8Exploited, CISA due date 2026-09-21EPSS 3.3%, higher than 89% of scored CVEs

CVE-2025-39682 is a unchecked unusual condition in Linux Kernel, rated critical (9.8 on CVSS 3.1).

Why this priority: Exploited in the wild: listed in CISA's KEV catalog.

Published · Updated · NVD status: Analyzed

What it is

An unusual condition is not handled, leaving the software in an unsafe state.

How it is reached

An attacker can exploit it over the network, without an account, and nobody has to click anything.

What an attacker gains

A successful attack can read the data it protects, change data or behaviour and take it offline. In practice, this kind of flaw lets an attacker drive the component into behaviour its authors did not intend.

Is it being exploited?

CISA added it to the Known Exploited Vulnerabilities catalog on 2026-09-18: it is being exploited in the wild. It can be exploited automatically, at scale. EPSS estimates a 3.3% chance of exploitation activity in the next 30 days, higher than 89% of scored CVEs.

What to do

  1. Treat it as urgent: it is on CISA's KEV list. CISA's deadline for US federal agencies: 2026-09-21.
  2. No fixed version is listed for Linux Kernel itself; fixed versions for the other affected products are listed on this page.
  3. Until it is patched, keep it off the internet or behind a VPN, allowlist or authenticating proxy.
  4. Check exposed instances for signs of compromise, not only for the version.

Description from NVD

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

tls: fix handling of zero-length records on the rx_list

Each recvmsg() call must process either - only contiguous DATA records (any number of them) - one non-DATA record

If the next record has different type than what has already been processed we break out of the main processing loop. If the record has already been decrypted (which may be the case for TLS 1.3 where we don't know type until decryption) we queue the pending record to the rx_list. Next recvmsg() will pick it up from there.

Queuing the skb to rx_list after zero-copy decrypt is not possible, since in that case we decrypted directly to the user space buffer, and we don't have an skb to queue (darg.skb points to the ciphertext skb for access to metadata like length).

Only data records are allowed zero-copy, and we break the processing loop after each non-data record. So we should never zero-copy and then find out that the record type has changed. The corner case we missed is when the initial record comes from rx_list, and it's zero length.

What this means for your architecture.

A CVE names a product. Whether it matters depends on where that product sits in your systems: what reaches it, which trust boundary it guards and what it can reach once compromised. Veriom maps your components, their relationships and your trust boundaries from your code, cloud and delivery evidence, so you can see where a component like this sits. The radar itself does not look at your systems.

Components it touches

  • Network edge devices: VPNs, firewalls, routers and gateways. They sit between the internet and internal networks, so a flaw in one is often the first step into everything behind it.
  • Operating systems on servers, workstations or devices. Everything on the host inherits the flaw.
  • Interfaces that accept external input. The flaw sits at the input boundary of the affected component.

Trust boundaries in play

  • Internet-facing entry points. No account is needed. Any instance reachable from outside your perimeter, through a load balancer, gateway, VPN or exposed admin port, is in scope.
  • At the input boundary of the affected component. An attacker who crosses it can drive the component into behaviour its authors did not intend.

Questions to answer about your own systems

  • Where does Linux Kernel run in your systems, and at which version?
  • Which of those instances can be reached from the internet or partner networks?
  • What can it reach once compromised: which data stores, secrets and services?

Sources

  • CVE records and CVSS scores from the NVD CVE API. This product uses the NVD API but is not endorsed or certified by the NVD.
  • Exploitation status from CISA’s Known Exploited Vulnerabilities catalog.
  • Exploit likelihood from FIRST’s Exploit Prediction Scoring System (EPSS), refreshed daily.
  • Explanations are written by Veriom from fixed templates over each record’s data, not by a person reviewing each CVE. Descriptions are quoted from the records as published.