CVE-2026-97964
Full vulnerability record from the local CVENow database.
Description
In the Linux kernel, the following vulnerability has been resolved: ppp_synctty: ensure a writeable skb header ppp_sync_txmunge() checks headroom before prepending the address and control bytes, but does not ensure that the skb header is writable. A received skb can reach this function through PPP channel bridging without passing through ppp_start_xmit(), which calls skb_cow_head(). For example, a PPPoE frame may share its buffer with a clone queued to an AF_PACKET socket. If it is bridged to a synchronous tty channel, the address/control bytes can overwrite data still visible to that socket. Use skb_cow_head() to ensure both sufficient headroom and a writable header.
View original CVE JSON
{
"id": "CVE-2026-97964",
"sourceIdentifier": "416baaa9-dc9f-4396-8d5f-8c081fb06d67",
"published": "2026-09-25T11:17:24.187",
"lastModified": "2026-10-19T10:17:47.790",
"vulnStatus": "Received",
"cveTags": [],
"descriptions": [
{
"lang": "en",
"value": "In the Linux kernel, the following vulnerability has been resolved:\n\nppp_synctty: ensure a writeable skb header\n\nppp_sync_txmunge() checks headroom before prepending the address and\ncontrol bytes, but does not ensure that the skb header is writable.\nA received skb can reach this function through PPP channel bridging\nwithout passing through ppp_start_xmit(), which calls skb_cow_head().\n\nFor example, a PPPoE frame may share its buffer with a clone queued to\nan AF_PACKET socket. If it is bridged to a synchronous tty channel, the\naddress/control bytes can overwrite data still visible to that socket.\n\nUse skb_cow_head() to ensure both sufficient headroom and a writable\nheader."
}
],
"affected": [
{
"source": "416baaa9-dc9f-4396-8d5f-8c081fb06d67",
"affectedData": [
{
"vendor": "Linux",
"product": "Linux",
"defaultStatus": "unaffected",
"programFiles": [
"drivers/net/ppp/ppp_synctty.c"
],
"repo": "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git",
"versions": [
{
"version": "4cf476ced45d7f12df30a68e833b263e7a2202d1",
"lessThan": "25e03eeead2c49748c7582dfb64c205f93a42d00",
"versionType": "git",
"status": "affected"
},
{
"version": "4cf476ced45d7f12df30a68e833b263e7a2202d1",
"lessThan": "a256f9925288ef47de8febed5c38d5cc21340211",
"versionType": "git",
"status": "affected"
},
{
"version": "4cf476ced45d7f12df30a68e833b263e7a2202d1",
"lessThan": "7953946f68262a8bb137aa101249adef6e029652",
"versionType": "git",
"status": "affected"
},
{
"version": "4cf476ced45d7f12df30a68e833b263e7a2202d1",
"lessThan": "3af7797fbabc84992e0ca5ad2bc0ca8537d053ef",
"versionType": "git",
"status": "affected"
},
{
"version": "4cf476ced45d7f12df30a68e833b263e7a2202d1",
"lessThan": "0996c3e6bcc6ae08cb371ed43648c9f7f748ae6e",
"versionType": "git",
"status": "affected"
},
{
"version": "4cf476ced45d7f12df30a68e833b263e7a2202d1",
"lessThan": "15d0a6c9a42df2d745c37510dba828f6dbe60d9f",
"versionType": "git",
"status": "affected"
},
{
"version": "4cf476ced45d7f12df30a68e833b263e7a2202d1",
"lessThan": "8aaeb56aff2a557a88f83ae866da2c91ad247e59",
"versionType": "git",
"status": "affected"
}
]
},
{
"vendor": "Linux",
"product": "Linux",
"defaultStatus": "affected",
"programFiles": [
"drivers/net/ppp/ppp_synctty.c"
],
"repo": "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git",
"versions": [
{
"version": "5.11",
"status": "affected"
},
{
"version": "0",
"lessThan": "5.11",
"versionType": "semver",
"status": "unaffected"
},
{
"version": "5.15.222",
"lessThanOrEqual": "5.15.*",
"versionType": "semver",
"status": "unaffected"
},
{
"version": "6.1.189",
"lessThanOrEqual": "6.1.*",
"versionType": "semver",
"status": "unaffected"
},
{
"version": "6.6.158",
"lessThanOrEqual": "6.6.*",
"versionType": "semver",
"status": "unaffected"
},
{
"version": "6.12.111",
"lessThanOrEqual": "6.12.*",
"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/0996c3e6bcc6ae08cb371ed43648c9f7f748ae6e",
"source": "416baaa9-dc9f-4396-8d5f-8c081fb06d67"
},
{
"url": "https://git.kernel.org/stable/c/15d0a6c9a42df2d745c37510dba828f6dbe60d9f",
"source": "416baaa9-dc9f-4396-8d5f-8c081fb06d67"
},
{
"url": "https://git.kernel.org/stable/c/25e03eeead2c49748c7582dfb64c205f93a42d00",
"source": "416baaa9-dc9f-4396-8d5f-8c081fb06d67"
},
{
"url": "https://git.kernel.org/stable/c/3af7797fbabc84992e0ca5ad2bc0ca8537d053ef",
"source": "416baaa9-dc9f-4396-8d5f-8c081fb06d67"
},
{
"url": "https://git.kernel.org/stable/c/7953946f68262a8bb137aa101249adef6e029652",
"source": "416baaa9-dc9f-4396-8d5f-8c081fb06d67"
},
{
"url": "https://git.kernel.org/stable/c/8aaeb56aff2a557a88f83ae866da2c91ad247e59",
"source": "416baaa9-dc9f-4396-8d5f-8c081fb06d67"
},
{
"url": "https://git.kernel.org/stable/c/a256f9925288ef47de8febed5c38d5cc21340211",
"source": "416baaa9-dc9f-4396-8d5f-8c081fb06d67"
}
]
}