← Back to CVE Explorer

CVE-2026-97614

Full vulnerability record from the local CVENow database.

Description

In the Linux kernel, the following vulnerability has been resolved: net: dsa: tag_brcm: legacy FCS: request needed tailroom The legacy FCS tagger calculates the CRC over skb->len bytes starting at skb->data. When a nonlinear skb reaches the tagger, this reads past the linear head into unrelated slab memory. The tagger appends an Ethernet FCS but does not declare that tailroom. As a result, DSA leaves NETIF_F_SG and NETIF_F_FRAGLIST enabled on the user port, and nonlinear skbs can reach the CRC calculation. Declare the required tailroom. DSA will then clear those features and the networking core will linearize skbs before the tagger runs. A KASAN-enabled dsa_loop test using this tagger reports: BUG: KASAN: slab-out-of-bounds in crc32_le Read of size 1 at addr ffff8880397086c0 by task exp/135 Call Trace: crc32_le (lib/crc/crc32-main.c:38) brcm_leg_fcs_tag_xmit (net/dsa/tag_brcm.c:343) dsa_user_xmit (net/dsa/user.c:942) dev_hard_start_xmit (net/core/dev.c:3937) __dev_queue_xmit (net/core/dev.c:4926) packet_sendmsg (net/packet/af_packet.c:3110) __sys_sendto (net/socket.c:2281) The buggy address belongs to the object at ffff888039708400 which belongs to the cache skbuff_small_head of size 704 The buggy address is located 0 bytes to the right of allocated 704-byte region [ffff888039708400, ffff8880397086c0)

Severity
Not scored
CVSS score
Not available
Vulnerability status
Received
Source identifier
416baaa9-dc9f-4396-8d5f-8c081fb06d67
Published
2026-09-25 11:17:15.563000
Last modified
2026-10-19 10:17:31.580000
View original CVE JSON
{
  "id": "CVE-2026-97614",
  "sourceIdentifier": "416baaa9-dc9f-4396-8d5f-8c081fb06d67",
  "published": "2026-09-25T11:17:15.563",
  "lastModified": "2026-10-19T10:17:31.580",
  "vulnStatus": "Received",
  "cveTags": [],
  "descriptions": [
    {
      "lang": "en",
      "value": "In the Linux kernel, the following vulnerability has been resolved:\n\nnet: dsa: tag_brcm: legacy FCS: request needed tailroom\n\nThe legacy FCS tagger calculates the CRC over skb->len bytes starting at\nskb->data. When a nonlinear skb reaches the tagger, this reads past the\nlinear head into unrelated slab memory.\n\nThe tagger appends an Ethernet FCS but does not declare that tailroom. As a\nresult, DSA leaves NETIF_F_SG and NETIF_F_FRAGLIST enabled on the user\nport, and nonlinear skbs can reach the CRC calculation.\n\nDeclare the required tailroom. DSA will then clear those features and the\nnetworking core will linearize skbs before the tagger runs.\n\nA KASAN-enabled dsa_loop test using this tagger reports:\n\n  BUG: KASAN: slab-out-of-bounds in crc32_le\n  Read of size 1 at addr ffff8880397086c0 by task exp/135\n\n  Call Trace:\n   crc32_le (lib/crc/crc32-main.c:38)\n   brcm_leg_fcs_tag_xmit (net/dsa/tag_brcm.c:343)\n   dsa_user_xmit (net/dsa/user.c:942)\n   dev_hard_start_xmit (net/core/dev.c:3937)\n   __dev_queue_xmit (net/core/dev.c:4926)\n   packet_sendmsg (net/packet/af_packet.c:3110)\n   __sys_sendto (net/socket.c:2281)\n\n  The buggy address belongs to the object at ffff888039708400\n   which belongs to the cache skbuff_small_head of size 704\n  The buggy address is located 0 bytes to the right of\n   allocated 704-byte region [ffff888039708400, ffff8880397086c0)"
    }
  ],
  "affected": [
    {
      "source": "416baaa9-dc9f-4396-8d5f-8c081fb06d67",
      "affectedData": [
        {
          "vendor": "Linux",
          "product": "Linux",
          "defaultStatus": "unaffected",
          "programFiles": [
            "net/dsa/tag_brcm.c"
          ],
          "repo": "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git",
          "versions": [
            {
              "version": "ef07df397a621707903ef0d294a7df11f80cf206",
              "lessThan": "709451db123d90743fa9104b48f324a8e49f8c6f",
              "versionType": "git",
              "status": "affected"
            },
            {
              "version": "ef07df397a621707903ef0d294a7df11f80cf206",
              "lessThan": "3eb5c7e1c154c74568620a25c6751bb8d6d8d728",
              "versionType": "git",
              "status": "affected"
            },
            {
              "version": "ef07df397a621707903ef0d294a7df11f80cf206",
              "lessThan": "5be081b83abd3f17d908953b4bb77279f5a149e3",
              "versionType": "git",
              "status": "affected"
            }
          ]
        },
        {
          "vendor": "Linux",
          "product": "Linux",
          "defaultStatus": "affected",
          "programFiles": [
            "net/dsa/tag_brcm.c"
          ],
          "repo": "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git",
          "versions": [
            {
              "version": "6.17",
              "status": "affected"
            },
            {
              "version": "0",
              "lessThan": "6.17",
              "versionType": "semver",
              "status": "unaffected"
            },
            {
              "version": "6.18.53",
              "lessThanOrEqual": "6.18.*",
              "versionType": "semver",
              "status": "unaffected"
            },
            {
              "version": "7.2.7",
              "lessThanOrEqual": "7.2.*",
              "versionType": "semver",
              "status": "unaffected"
            },
            {
              "version": "7.3",
              "lessThanOrEqual": "*",
              "versionType": "original_commit_for_fix",
              "status": "unaffected"
            }
          ]
        }
      ]
    }
  ],
  "metrics": {},
  "references": [
    {
      "url": "https://git.kernel.org/stable/c/3eb5c7e1c154c74568620a25c6751bb8d6d8d728",
      "source": "416baaa9-dc9f-4396-8d5f-8c081fb06d67"
    },
    {
      "url": "https://git.kernel.org/stable/c/5be081b83abd3f17d908953b4bb77279f5a149e3",
      "source": "416baaa9-dc9f-4396-8d5f-8c081fb06d67"
    },
    {
      "url": "https://git.kernel.org/stable/c/709451db123d90743fa9104b48f324a8e49f8c6f",
      "source": "416baaa9-dc9f-4396-8d5f-8c081fb06d67"
    }
  ]
}