CVE-2025-38526 (GCVE-0-2025-38526)

Vulnerability from cvelistv5 – Published: 2025-08-16 11:12 – Updated: 2026-08-05 12:02
VLAI
Title
ice: add NULL check in eswitch lag check
Summary
In the Linux kernel, the following vulnerability has been resolved: ice: add NULL check in eswitch lag check The function ice_lag_is_switchdev_running() is being called from outside of the LAG event handler code. This results in the lag->upper_netdev being NULL sometimes. To avoid a NULL-pointer dereference, there needs to be a check before it is dereferenced.
Impacted products
Vendor Product Version CPE status
Linux Linux Affected: 776fe19953b0e0af00399e50fb3b205101d4b3c1 , < 27591d926191e42b2332e4bad3bcd3a49def393b (git)
Affected: 776fe19953b0e0af00399e50fb3b205101d4b3c1 , < 5a5d64f0eec82076b2c09fee2195d640cfbe3379 (git)
Affected: 776fe19953b0e0af00399e50fb3b205101d4b3c1 , < 245917d3c5ed7c6ae720302b64eac5c6f0c85177 (git)
Affected: 776fe19953b0e0af00399e50fb3b205101d4b3c1 , < 3ce58b01ada408b372f15b7c992ed0519840e3cf (git)
guessed Create a notification for this product.
Linux Linux Affected: 6.6
Unaffected: 0 , < 6.6 (semver)
Unaffected: 6.6.100 , ≤ 6.6.* (semver)
Unaffected: 6.12.40 , ≤ 6.12.* (semver)
Unaffected: 6.15.8 , ≤ 6.15.* (semver)
Unaffected: 6.16 , ≤ * (original_commit_for_fix)
guessed Create a notification for this product.
Show details on NVD website

{
  "containers": {
    "cna": {
      "affected": [
        {
          "defaultStatus": "unaffected",
          "product": "Linux",
          "programFiles": [
            "drivers/net/ethernet/intel/ice/ice_lag.c"
          ],
          "repo": "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git",
          "vendor": "Linux",
          "versions": [
            {
              "lessThan": "27591d926191e42b2332e4bad3bcd3a49def393b",
              "status": "affected",
              "version": "776fe19953b0e0af00399e50fb3b205101d4b3c1",
              "versionType": "git"
            },
            {
              "lessThan": "5a5d64f0eec82076b2c09fee2195d640cfbe3379",
              "status": "affected",
              "version": "776fe19953b0e0af00399e50fb3b205101d4b3c1",
              "versionType": "git"
            },
            {
              "lessThan": "245917d3c5ed7c6ae720302b64eac5c6f0c85177",
              "status": "affected",
              "version": "776fe19953b0e0af00399e50fb3b205101d4b3c1",
              "versionType": "git"
            },
            {
              "lessThan": "3ce58b01ada408b372f15b7c992ed0519840e3cf",
              "status": "affected",
              "version": "776fe19953b0e0af00399e50fb3b205101d4b3c1",
              "versionType": "git"
            }
          ]
        },
        {
          "defaultStatus": "affected",
          "product": "Linux",
          "programFiles": [
            "drivers/net/ethernet/intel/ice/ice_lag.c"
          ],
          "repo": "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git",
          "vendor": "Linux",
          "versions": [
            {
              "status": "affected",
              "version": "6.6"
            },
            {
              "lessThan": "6.6",
              "status": "unaffected",
              "version": "0",
              "versionType": "semver"
            },
            {
              "lessThanOrEqual": "6.6.*",
              "status": "unaffected",
              "version": "6.6.100",
              "versionType": "semver"
            },
            {
              "lessThanOrEqual": "6.12.*",
              "status": "unaffected",
              "version": "6.12.40",
              "versionType": "semver"
            },
            {
              "lessThanOrEqual": "6.15.*",
              "status": "unaffected",
              "version": "6.15.8",
              "versionType": "semver"
            },
            {
              "lessThanOrEqual": "*",
              "status": "unaffected",
              "version": "6.16",
              "versionType": "original_commit_for_fix"
            }
          ]
        }
      ],
      "cpeApplicability": [
        {
          "nodes": [
            {
              "cpeMatch": [
                {
                  "criteria": "cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*",
                  "versionEndExcluding": "6.6.100",
                  "versionStartIncluding": "6.6",
                  "vulnerable": true
                },
                {
                  "criteria": "cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*",
                  "versionEndExcluding": "6.12.40",
                  "versionStartIncluding": "6.6",
                  "vulnerable": true
                },
                {
                  "criteria": "cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*",
                  "versionEndExcluding": "6.15.8",
                  "versionStartIncluding": "6.6",
                  "vulnerable": true
                },
                {
                  "criteria": "cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*",
                  "versionEndExcluding": "6.16",
                  "versionStartIncluding": "6.6",
                  "vulnerable": true
                }
              ],
              "negate": false,
              "operator": "OR"
            }
          ]
        }
      ],
      "descriptions": [
        {
          "lang": "en",
          "value": "In the Linux kernel, the following vulnerability has been resolved:\n\nice: add NULL check in eswitch lag check\n\nThe function ice_lag_is_switchdev_running() is being called from outside of\nthe LAG event handler code.  This results in the lag-\u003eupper_netdev being\nNULL sometimes.  To avoid a NULL-pointer dereference, there needs to be a\ncheck before it is dereferenced."
        }
      ],
      "metrics": [
        {
          "cvssV3_1": {
            "baseScore": 7.5,
            "baseSeverity": "HIGH",
            "vectorString": "CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:N/A:H",
            "version": "3.1"
          },
          "scenarios": [
            {
              "lang": "en",
              "value": "AV:N - The vulnerable function sits directly in the ice per-packet TX datapath (`ice_xmit_frame_ring()`), so any inbound packet that elicits a kernel-generated reply \u2014 ARP, ICMP echo, TCP SYN-ACK/RST \u2014 drives the host into the NULL dereference from the network. ice is the 100G NIC used in internet-facing cloud and datacenter servers, so a remote unauthenticated peer can reach the faulting code.\nAC:L - Once the affected configuration is present (SRIOV-LAG-capable PF not enslaved in a bond, which is the default post-probe state), the dereference is deterministic on the very next transmit \u2014 no race to win, no memory layout to groom, no packet content requirements.\nPR:N - Reaching `ice_xmit_frame_ring()` requires no credentials at all: a remote peer needs only to send a packet the host answers, and locally any unprivileged process calling `sendto()` on the interface suffices. No capability, namespace, or authentication check exists anywhere on that path.\nUI:N - No victim action is needed; the crash occurs during ordinary packet transmission driven entirely by the attacker\u0027s traffic.\nS:U - The fault and its impact are both in the host kernel\u0027s own security authority \u2014 a standard kernel oops with no crossing of a VM, IOMMU, or sandbox boundary. The one VF-originated path (`virtchnl` promiscuous-mode) is gated behind trusted-VF status, so no guest-to-host boundary crossing is established.\nC:N - This is a read of `nd_net` at a small fixed offset from a NULL pointer; the faulting address is not attacker-influenced and the value is never returned to userspace or the wire, so no information is disclosed.\nI:N - No memory is written, no object is freed or reused, and no type confusion occurs \u2014 the bug is a pure read fault with no path to modifying kernel state.\nA:H - The NULL dereference occurs in the transmit/softirq path and produces a kernel oops or panic, taking down the networking datapath and typically the whole system, and it re-triggers on every subsequent transmit attempt."
            }
          ]
        }
      ],
      "providerMetadata": {
        "dateUpdated": "2026-08-05T12:02:39.169Z",
        "orgId": "416baaa9-dc9f-4396-8d5f-8c081fb06d67",
        "shortName": "Linux"
      },
      "references": [
        {
          "url": "https://git.kernel.org/stable/c/27591d926191e42b2332e4bad3bcd3a49def393b"
        },
        {
          "url": "https://git.kernel.org/stable/c/5a5d64f0eec82076b2c09fee2195d640cfbe3379"
        },
        {
          "url": "https://git.kernel.org/stable/c/245917d3c5ed7c6ae720302b64eac5c6f0c85177"
        },
        {
          "url": "https://git.kernel.org/stable/c/3ce58b01ada408b372f15b7c992ed0519840e3cf"
        }
      ],
      "title": "ice: add NULL check in eswitch lag check",
      "x_generator": {
        "engine": "bippy-1.2.0"
      }
    }
  },
  "cveMetadata": {
    "assignerOrgId": "416baaa9-dc9f-4396-8d5f-8c081fb06d67",
    "assignerShortName": "Linux",
    "cveId": "CVE-2025-38526",
    "datePublished": "2025-08-16T11:12:20.036Z",
    "dateReserved": "2025-04-16T04:51:24.023Z",
    "dateUpdated": "2026-08-05T12:02:39.169Z",
    "state": "PUBLISHED"
  },
  "dataType": "CVE_RECORD",
  "dataVersion": "5.2",
  "vulnerability-lookup:meta": {
    "epss": {
      "cve": "CVE-2025-38526",
      "date": "2026-09-24",
      "epss": "0.00364",
      "percentile": "0.27517"
    },
    "microsoft_vex": {
      "current_release_date": "2025-09-04T00:47:42.000Z",
      "cve": "CVE-2025-38526",
      "id": "msrc_CVE-2025-38526",
      "initial_release_date": "2025-08-02T00:00:00.000Z",
      "product_status:fixed": "1",
      "product_status:known_affected": "2",
      "source": "Microsoft CSAF VEX",
      "status": "final",
      "title": "ice: add NULL check in eswitch lag check",
      "url": "https://msrc.microsoft.com/csaf/vex/2025/msrc_cve-2025-38526.json",
      "version": "1"
    },
    "nvd": {
      "cve": {
        "affected": [
          {
            "affectedData": [
              {
                "defaultStatus": "unaffected",
                "product": "Linux",
                "programFiles": [
                  "drivers/net/ethernet/intel/ice/ice_lag.c"
                ],
                "repo": "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git",
                "vendor": "Linux",
                "versions": [
                  {
                    "lessThan": "27591d926191e42b2332e4bad3bcd3a49def393b",
                    "status": "affected",
                    "version": "776fe19953b0e0af00399e50fb3b205101d4b3c1",
                    "versionType": "git"
                  },
                  {
                    "lessThan": "5a5d64f0eec82076b2c09fee2195d640cfbe3379",
                    "status": "affected",
                    "version": "776fe19953b0e0af00399e50fb3b205101d4b3c1",
                    "versionType": "git"
                  },
                  {
                    "lessThan": "245917d3c5ed7c6ae720302b64eac5c6f0c85177",
                    "status": "affected",
                    "version": "776fe19953b0e0af00399e50fb3b205101d4b3c1",
                    "versionType": "git"
                  },
                  {
                    "lessThan": "3ce58b01ada408b372f15b7c992ed0519840e3cf",
                    "status": "affected",
                    "version": "776fe19953b0e0af00399e50fb3b205101d4b3c1",
                    "versionType": "git"
                  }
                ]
              },
              {
                "defaultStatus": "affected",
                "product": "Linux",
                "programFiles": [
                  "drivers/net/ethernet/intel/ice/ice_lag.c"
                ],
                "repo": "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git",
                "vendor": "Linux",
                "versions": [
                  {
                    "status": "affected",
                    "version": "6.6"
                  },
                  {
                    "lessThan": "6.6",
                    "status": "unaffected",
                    "version": "0",
                    "versionType": "semver"
                  },
                  {
                    "lessThanOrEqual": "6.6.*",
                    "status": "unaffected",
                    "version": "6.6.100",
                    "versionType": "semver"
                  },
                  {
                    "lessThanOrEqual": "6.12.*",
                    "status": "unaffected",
                    "version": "6.12.40",
                    "versionType": "semver"
                  },
                  {
                    "lessThanOrEqual": "6.15.*",
                    "status": "unaffected",
                    "version": "6.15.8",
                    "versionType": "semver"
                  },
                  {
                    "lessThanOrEqual": "*",
                    "status": "unaffected",
                    "version": "6.16",
                    "versionType": "original_commit_for_fix"
                  }
                ]
              }
            ],
            "source": "416baaa9-dc9f-4396-8d5f-8c081fb06d67"
          }
        ],
        "configurations": [
          {
            "nodes": [
              {
                "cpeMatch": [
                  {
                    "criteria": "cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*",
                    "matchCriteriaId": "4C0E74C5-B30A-46CB-90D1-E99E764ADD69",
                    "versionEndExcluding": "6.6.100",
                    "versionStartIncluding": "6.6.1",
                    "vulnerable": true
                  },
                  {
                    "criteria": "cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*",
                    "matchCriteriaId": "0099D5A4-B157-4D36-8858-982C7D579030",
                    "versionEndExcluding": "6.12.40",
                    "versionStartIncluding": "6.7",
                    "vulnerable": true
                  },
                  {
                    "criteria": "cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*",
                    "matchCriteriaId": "C7AFE5B0-F3B1-4D30-B8BF-EDA0385C4746",
                    "versionEndExcluding": "6.15.8",
                    "versionStartIncluding": "6.13",
                    "vulnerable": true
                  },
                  {
                    "criteria": "cpe:2.3:o:linux:linux_kernel:6.6:-:*:*:*:*:*:*",
                    "matchCriteriaId": "E346B162-D566-4E62-ABDE-ECBFB21B8BFD",
                    "vulnerable": true
                  },
                  {
                    "criteria": "cpe:2.3:o:linux:linux_kernel:6.6:rc6:*:*:*:*:*:*",
                    "matchCriteriaId": "E114E9DD-F7E1-40CC-AAD5-F14E586CB2E6",
                    "vulnerable": true
                  },
                  {
                    "criteria": "cpe:2.3:o:linux:linux_kernel:6.6:rc7:*:*:*:*:*:*",
                    "matchCriteriaId": "DC5BD782-474C-4A68-AED7-6EC818FF89AE",
                    "vulnerable": true
                  },
                  {
                    "criteria": "cpe:2.3:o:linux:linux_kernel:6.16:rc1:*:*:*:*:*:*",
                    "matchCriteriaId": "6D4894DB-CCFE-4602-B1BF-3960B2E19A01",
                    "vulnerable": true
                  },
                  {
                    "criteria": "cpe:2.3:o:linux:linux_kernel:6.16:rc2:*:*:*:*:*:*",
                    "matchCriteriaId": "09709862-E348-4378-8632-5A7813EDDC86",
                    "vulnerable": true
                  },
                  {
                    "criteria": "cpe:2.3:o:linux:linux_kernel:6.16:rc3:*:*:*:*:*:*",
                    "matchCriteriaId": "415BF58A-8197-43F5-B3D7-D1D63057A26E",
                    "vulnerable": true
                  },
                  {
                    "criteria": "cpe:2.3:o:linux:linux_kernel:6.16:rc4:*:*:*:*:*:*",
                    "matchCriteriaId": "A0517869-312D-4429-80C2-561086E1421C",
                    "vulnerable": true
                  },
                  {
                    "criteria": "cpe:2.3:o:linux:linux_kernel:6.16:rc5:*:*:*:*:*:*",
                    "matchCriteriaId": "85421F4E-C863-4ABF-B4B4-E887CC2F7F92",
                    "vulnerable": true
                  },
                  {
                    "criteria": "cpe:2.3:o:linux:linux_kernel:6.16:rc6:*:*:*:*:*:*",
                    "matchCriteriaId": "3827F0D4-5FEE-4181-B267-5A45E7CA11FC",
                    "vulnerable": true
                  }
                ],
                "negate": false,
                "operator": "OR"
              }
            ]
          }
        ],
        "cveTags": [],
        "descriptions": [
          {
            "lang": "en",
            "value": "In the Linux kernel, the following vulnerability has been resolved:\n\nice: add NULL check in eswitch lag check\n\nThe function ice_lag_is_switchdev_running() is being called from outside of\nthe LAG event handler code.  This results in the lag-\u003eupper_netdev being\nNULL sometimes.  To avoid a NULL-pointer dereference, there needs to be a\ncheck before it is dereferenced."
          },
          {
            "lang": "es",
            "value": "En el kernel de Linux, se ha resuelto la siguiente vulnerabilidad: ice: a\u00f1adir comprobaci\u00f3n NULL en la comprobaci\u00f3n de retardo de eswitch. La funci\u00f3n ice_lag_is_switchdev_running() se llama desde fuera del c\u00f3digo del controlador de eventos LAG. Esto provoca que lag-\u0026gt;upper_netdev sea NULL en ocasiones. Para evitar una desreferencia de puntero NULL, es necesario realizar una comprobaci\u00f3n antes de desreferenciarlo."
          }
        ],
        "id": "CVE-2025-38526",
        "lastModified": "2026-07-30T06:23:24.063",
        "metrics": {
          "cvssMetricV31": [
            {
              "cvssData": {
                "attackComplexity": "LOW",
                "attackVector": "NETWORK",
                "availabilityImpact": "HIGH",
                "baseScore": 7.5,
                "baseSeverity": "HIGH",
                "confidentialityImpact": "NONE",
                "integrityImpact": "NONE",
                "privilegesRequired": "NONE",
                "scope": "UNCHANGED",
                "userInteraction": "NONE",
                "vectorString": "CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:N/A:H",
                "version": "3.1"
              },
              "exploitabilityScore": 3.9,
              "impactScore": 3.6,
              "source": "416baaa9-dc9f-4396-8d5f-8c081fb06d67",
              "type": "Secondary"
            },
            {
              "cvssData": {
                "attackComplexity": "LOW",
                "attackVector": "LOCAL",
                "availabilityImpact": "HIGH",
                "baseScore": 5.5,
                "baseSeverity": "MEDIUM",
                "confidentialityImpact": "NONE",
                "integrityImpact": "NONE",
                "privilegesRequired": "LOW",
                "scope": "UNCHANGED",
                "userInteraction": "NONE",
                "vectorString": "CVSS:3.1/AV:L/AC:L/PR:L/UI:N/S:U/C:N/I:N/A:H",
                "version": "3.1"
              },
              "exploitabilityScore": 1.8,
              "impactScore": 3.6,
              "source": "nvd@nist.gov",
              "type": "Primary"
            }
          ]
        },
        "published": "2025-08-16T12:15:28.060",
        "references": [
          {
            "source": "416baaa9-dc9f-4396-8d5f-8c081fb06d67",
            "tags": [
              "Patch"
            ],
            "url": "https://git.kernel.org/stable/c/245917d3c5ed7c6ae720302b64eac5c6f0c85177"
          },
          {
            "source": "416baaa9-dc9f-4396-8d5f-8c081fb06d67",
            "tags": [
              "Patch"
            ],
            "url": "https://git.kernel.org/stable/c/27591d926191e42b2332e4bad3bcd3a49def393b"
          },
          {
            "source": "416baaa9-dc9f-4396-8d5f-8c081fb06d67",
            "tags": [
              "Patch"
            ],
            "url": "https://git.kernel.org/stable/c/3ce58b01ada408b372f15b7c992ed0519840e3cf"
          },
          {
            "source": "416baaa9-dc9f-4396-8d5f-8c081fb06d67",
            "tags": [
              "Patch"
            ],
            "url": "https://git.kernel.org/stable/c/5a5d64f0eec82076b2c09fee2195d640cfbe3379"
          }
        ],
        "sourceIdentifier": "416baaa9-dc9f-4396-8d5f-8c081fb06d67",
        "vulnStatus": "Modified",
        "weaknesses": [
          {
            "description": [
              {
                "lang": "en",
                "value": "CWE-476"
              }
            ],
            "source": "nvd@nist.gov",
            "type": "Primary"
          }
        ]
      }
    },
    "redhat_vex": {
      "aggregate_severity": "Moderate",
      "current_release_date": "2026-07-30T09:07:43+00:00",
      "cve": "CVE-2025-38526",
      "id": "CVE-2025-38526",
      "initial_release_date": "2025-08-16T00:00:00+00:00",
      "product_status:known_affected": "184",
      "product_status:known_not_affected": "90",
      "source": "Red Hat CSAF VEX",
      "status": "final",
      "title": "kernel: ice: add NULL check in eswitch lag check",
      "url": "https://security.access.redhat.com/data/csaf/v2/vex/2025/cve-2025-38526.json",
      "version": "3"
    }
  }
}



Log in or create an account to share your comment.




Tags
Taxonomy of the tags.


Loading…

Loading…

Loading…

Forecast uses a logistic model when the trend is rising, or an exponential decay model when the trend is falling. Fitted via linearized least squares.

Sightings

Author Source Type Date Other

Nomenclature

  • Seen: The vulnerability was mentioned, discussed, or observed by the user.
  • Confirmed: The vulnerability has been validated from an analyst's perspective.
  • Published Proof of Concept: A public proof of concept is available for this vulnerability.
  • Exploited: The vulnerability was observed as exploited by the user who reported the sighting.
  • Patched: The vulnerability was observed as successfully patched by the user who reported the sighting.
  • Not exploited: The vulnerability was not observed as exploited by the user who reported the sighting.
  • Not confirmed: The user expressed doubt about the validity of the vulnerability.
  • Not patched: The vulnerability was not observed as successfully patched by the user who reported the sighting.

Loading…

Loading…

Loading…

Related by attack behaviour

Vulnerabilities whose description is nearest to this one in the vector space of the CIRCL/vulnerability-attack-technique-biencoder model. This is a similarity search over the bi-encoder space (plain cosine), not a classification, and it has no measured accuracy.


Loading…