Skip to main content
← All vulnerabilities
CVE-2026-68121

pppoe: reload header pointer after dev_hard_header()

Published
Last modified
published
Not listed in CISA KEV
Fix
Fixed in 5.10.265, 5.15.216, 6.1.183, 6.6.148, 6.12.101, and 2 more
None on Exploit-DB, Metasploit or GitHub
  • Exploitation: none
  • Automatable: no
  • Technical impact: total

Summary

In the Linux kernel, the following vulnerability has been resolved: pppoe: reload header pointer after dev_hard_header() pppoe_sendmsg() saves a pointer to the PPPoE header before calling dev_hard_header(). Device header callbacks are allowed to reallocate the skb head, invalidating pointers into it. This can happen when a send is blocked in copy_from_user() while the first non-Ethernet port is added to an empty team device. The team's delegated GRE header callback then expands the skb head. PPPoE subsequently writes six bytes through the stale pointer into the freed head. Reload the PPPoE header through the skb's network-header offset after device header creation. pskb_expand_head() updates that offset when it relocates the head.

Timeline

  1. CVE published
  2. CISA SSVC assessment

    Exploitation: none · Automatable: no · Technical impact: total

  3. Record last updated

Affected versions

  • Linux Linux

    From 1da177e4c3f41524e886b7f1b8a0c1fc7321cac2 · fixed in 7a56e7c9b08e08fd55a1bcada24cf4fe3782b722; From 1da177e4c3f41524e886b7f1b8a0c1fc7321cac2 · fixed in 6eed5ae7887a93160803d2b81ff88e75eefd4a4c; From 1da177e4c3f41524e886b7f1b8a0c1fc7321cac2 · fixed in ba3409369c5413cdf0dcbf3a928f76b48e8c3e6a; From 1da177e4c3f41524e886b7f1b8a0c1fc7321cac2 · fixed in e6493a4d1ee17595766165fa446d45b7e0c318d0; From 1da177e4c3f41524e886b7f1b8a0c1fc7321cac2 · fixed in 7e9fbd7f96bcde63a7c798fe16b38cedee7a1501; From 1da177e4c3f41524e886b7f1b8a0c1fc7321cac2 · fixed in 6866abf59976d273164a6624234d96a967280223; From 1da177e4c3f41524e886b7f1b8a0c1fc7321cac2 · fixed in bed4caecd723693f750e13adbb2c42ca1249a3fd; From 1da177e4c3f41524e886b7f1b8a0c1fc7321cac2 · fixed in e9c238f6fe42fb1b4dba3a578277de32cb487937

  • Linux Linux

    2.6.12

  • KernelLinux

    From 2.6.12 · fixed in 5.10.265; From 5.11.0 · fixed in 5.15.216; From 5.16.0 · fixed in 6.1.183; From 6.2.0 · fixed in 6.6.148; From 6.7.0 · fixed in 6.12.101; From 6.13.0 · fixed in 6.18.42; From 6.19.0 · fixed in 7.1.6

References 8

git.kernel.org