---
id: CVE-2026-74659
title: |-
  In the Linux kernel, the following vulnerability has been resolved:

  net: bridge: mrp: fix uninitialised bytes on the wire

  br_mrp_alloc_test_skb() builds MRP test frames on an skb from
  dev_alloc_skb(), which does not clear the linear da…
summary: |-
  In the Linux kernel, the following vulnerability has been resolved:

  net: bridge: mrp: fix uninitialised bytes on the wire

  br_mrp_alloc_test_skb() builds MRP test frames on an skb from
  dev_alloc_skb(), which does not clear the linear da…
severity: none
published: '2026-08-22'
updated: '2026-10-14'
sourceUpdated: '2026-10-14T13:10:00.187'
source: NVD
sourceUrl: 'https://nvd.nist.gov/vuln/detail/CVE-2026-74659'
references:
  - url: 'https://git.kernel.org/stable/c/014c062d23c63ec77ef2cf17a0d9363c7441cc94'
    label: 416baaa9-dc9f-4396-8d5f-8c081fb06d67
  - url: 'https://git.kernel.org/stable/c/06d58b8d2f053ced82e01efaeb6e7c82891eed58'
    label: 416baaa9-dc9f-4396-8d5f-8c081fb06d67
  - url: 'https://git.kernel.org/stable/c/5912cf1822fbe53ae275c147868740eb384a5d3e'
    label: 416baaa9-dc9f-4396-8d5f-8c081fb06d67
  - url: 'https://git.kernel.org/stable/c/63488dba65ef91373ef616575b32eb0eb21459f4'
    label: 416baaa9-dc9f-4396-8d5f-8c081fb06d67
  - url: 'https://git.kernel.org/stable/c/7ebc23ff03668042e0b0e4034bb1518d36198d9e'
    label: 416baaa9-dc9f-4396-8d5f-8c081fb06d67
  - url: 'https://git.kernel.org/stable/c/a5e385eeb2d6dbbbdebfa050e67c34734ae12693'
    label: 416baaa9-dc9f-4396-8d5f-8c081fb06d67
  - url: 'https://git.kernel.org/stable/c/e08665218040f8e312abe40f74543186f3c2c941'
    label: 416baaa9-dc9f-4396-8d5f-8c081fb06d67
tags:
  - nvd
epss: 0.00215
epssPercentile: 0.10991
ingestedAt: '2026-10-14T13:30:58.529Z'
---

## Overview

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

net: bridge: mrp: fix uninitialised bytes on the wire

br_mrp_alloc_test_skb() builds MRP test frames on an skb from
dev_alloc_skb(), which does not clear the linear data area.  On the MRA
ring-role branch the sub-option TLV header is appended with

	sub_tlv = skb_put(skb, sizeof(*sub_tlv));
	sub_tlv->type = BR_MRP_SUB_TLV_HEADER_TEST_AUTO_MGR;

so sub_tlv->length is never written, and the two trailing alignment bytes
are appended with a bare skb_put() that does not clear them either.  The
neighbouring oui and sub_opt regions are explicitly zeroed, so three
uninitialised bytes are left in every MRA MRP_Test frame that goes out.

Put the sub-option TLV header and the alignment padding in a single
skb_put_zero(), which clears both.  The AUTO_MGR sub-TLV carries no
payload, so the zeroed length field is already the value it should have.

## Remediation

Refer to the linked advisories for vendor-supplied fixes and affected version ranges.
