In the Linux kernel, the following vulnerability has been resolved:
ppp: fix memory leak in padcompressskb
If allocskb() fails in padcompress_skb(), it returns NULL without releasing the old skb. The caller does:
skb = pad_compress_skb(ppp, skb);
if (!skb)
goto drop;
drop: kfree_skb(skb);
When padcompressskb() returns NULL, the reference to the old skb is lost and kfree_skb(skb) ends up doing nothing, leading to a memory leak.
Align padcompressskb() semantics with realloc(): only free the old skb if allocation and compression succeed. At the call site, use the newskb variable so the original skb is not lost when padcompress_skb() fails.
[
{
"digest": {
"length": 2433.0,
"function_hash": "92381091404528526474508200540115664310"
},
"deprecated": false,
"signature_version": "v1",
"target": {
"function": "ppp_send_frame",
"file": "drivers/net/ppp/ppp_generic.c"
},
"signature_type": "Function",
"id": "CVE-2025-39847-000c781c",
"source": "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git@9ca6a040f76c0b149293e430dabab446f3fc8ab7"
},
{
"digest": {
"length": 1009.0,
"function_hash": "331988424219287095171138322693817832501"
},
"deprecated": false,
"signature_version": "v1",
"target": {
"function": "pad_compress_skb",
"file": "drivers/net/ppp/ppp_generic.c"
},
"signature_type": "Function",
"id": "CVE-2025-39847-09f32b16",
"source": "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git@9ca6a040f76c0b149293e430dabab446f3fc8ab7"
},
{
"digest": {
"threshold": 0.9,
"line_hashes": [
"276636255120100706561140157212978319432",
"55829420223695408849192385140628696563",
"168932883713912060084761680093108038223",
"8308544490015562216543838113310104136",
"109277469889237095925664481820540532921",
"183979913570224277252247881574250061579",
"219958819775903306392194923039033473121",
"183530889483296138570307612122907848057",
"3859885813748848713060688504156912300",
"149942529086438987781671592107618920575"
]
},
"deprecated": false,
"signature_version": "v1",
"target": {
"file": "drivers/net/ppp/ppp_generic.c"
},
"signature_type": "Line",
"id": "CVE-2025-39847-1906de41",
"source": "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git@33a5bac5f14772730d2caf632ae97b6c2ee95044"
},
{
"digest": {
"threshold": 0.9,
"line_hashes": [
"276636255120100706561140157212978319432",
"55829420223695408849192385140628696563",
"168932883713912060084761680093108038223",
"8308544490015562216543838113310104136",
"109277469889237095925664481820540532921",
"183979913570224277252247881574250061579",
"219958819775903306392194923039033473121",
"183530889483296138570307612122907848057",
"3859885813748848713060688504156912300",
"149942529086438987781671592107618920575"
]
},
"deprecated": false,
"signature_version": "v1",
"target": {
"file": "drivers/net/ppp/ppp_generic.c"
},
"signature_type": "Line",
"id": "CVE-2025-39847-2de1cab0",
"source": "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git@4844123fe0b853a4982c02666cb3fd863d701d50"
},
{
"digest": {
"length": 1009.0,
"function_hash": "331988424219287095171138322693817832501"
},
"deprecated": false,
"signature_version": "v1",
"target": {
"function": "pad_compress_skb",
"file": "drivers/net/ppp/ppp_generic.c"
},
"signature_type": "Function",
"id": "CVE-2025-39847-5c465dc5",
"source": "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git@1d8b354eafb8876d8bdb1bef69c7d2438aacfbe8"
},
{
"digest": {
"length": 1009.0,
"function_hash": "331988424219287095171138322693817832501"
},
"deprecated": false,
"signature_version": "v1",
"target": {
"function": "pad_compress_skb",
"file": "drivers/net/ppp/ppp_generic.c"
},
"signature_type": "Function",
"id": "CVE-2025-39847-5ee7068f",
"source": "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git@4844123fe0b853a4982c02666cb3fd863d701d50"
},
{
"digest": {
"threshold": 0.9,
"line_hashes": [
"276636255120100706561140157212978319432",
"55829420223695408849192385140628696563",
"168932883713912060084761680093108038223",
"8308544490015562216543838113310104136",
"109277469889237095925664481820540532921",
"183979913570224277252247881574250061579",
"219958819775903306392194923039033473121",
"183530889483296138570307612122907848057",
"3859885813748848713060688504156912300",
"149942529086438987781671592107618920575"
]
},
"deprecated": false,
"signature_version": "v1",
"target": {
"file": "drivers/net/ppp/ppp_generic.c"
},
"signature_type": "Line",
"id": "CVE-2025-39847-840d01ca",
"source": "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git@631fc8ab5beb9e0ec8651fb9875b9a968e7b4ae4"
},
{
"digest": {
"length": 2433.0,
"function_hash": "92381091404528526474508200540115664310"
},
"deprecated": false,
"signature_version": "v1",
"target": {
"function": "ppp_send_frame",
"file": "drivers/net/ppp/ppp_generic.c"
},
"signature_type": "Function",
"id": "CVE-2025-39847-9e713d2a",
"source": "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git@631fc8ab5beb9e0ec8651fb9875b9a968e7b4ae4"
},
{
"digest": {
"length": 1009.0,
"function_hash": "331988424219287095171138322693817832501"
},
"deprecated": false,
"signature_version": "v1",
"target": {
"function": "pad_compress_skb",
"file": "drivers/net/ppp/ppp_generic.c"
},
"signature_type": "Function",
"id": "CVE-2025-39847-a0197847",
"source": "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git@33a5bac5f14772730d2caf632ae97b6c2ee95044"
},
{
"digest": {
"length": 2399.0,
"function_hash": "317115270519907963077121105528875668158"
},
"deprecated": false,
"signature_version": "v1",
"target": {
"function": "ppp_send_frame",
"file": "drivers/net/ppp/ppp_generic.c"
},
"signature_type": "Function",
"id": "CVE-2025-39847-b7cd232e",
"source": "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git@4844123fe0b853a4982c02666cb3fd863d701d50"
},
{
"digest": {
"threshold": 0.9,
"line_hashes": [
"276636255120100706561140157212978319432",
"55829420223695408849192385140628696563",
"168932883713912060084761680093108038223",
"8308544490015562216543838113310104136",
"109277469889237095925664481820540532921",
"183979913570224277252247881574250061579",
"219958819775903306392194923039033473121",
"183530889483296138570307612122907848057",
"3859885813748848713060688504156912300",
"149942529086438987781671592107618920575"
]
},
"deprecated": false,
"signature_version": "v1",
"target": {
"file": "drivers/net/ppp/ppp_generic.c"
},
"signature_type": "Line",
"id": "CVE-2025-39847-b8a023c7",
"source": "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git@9ca6a040f76c0b149293e430dabab446f3fc8ab7"
},
{
"digest": {
"length": 2433.0,
"function_hash": "92381091404528526474508200540115664310"
},
"deprecated": false,
"signature_version": "v1",
"target": {
"function": "ppp_send_frame",
"file": "drivers/net/ppp/ppp_generic.c"
},
"signature_type": "Function",
"id": "CVE-2025-39847-c60a16af",
"source": "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git@1d8b354eafb8876d8bdb1bef69c7d2438aacfbe8"
},
{
"digest": {
"length": 1009.0,
"function_hash": "331988424219287095171138322693817832501"
},
"deprecated": false,
"signature_version": "v1",
"target": {
"function": "pad_compress_skb",
"file": "drivers/net/ppp/ppp_generic.c"
},
"signature_type": "Function",
"id": "CVE-2025-39847-d2ecdf2e",
"source": "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git@631fc8ab5beb9e0ec8651fb9875b9a968e7b4ae4"
},
{
"digest": {
"length": 2433.0,
"function_hash": "92381091404528526474508200540115664310"
},
"deprecated": false,
"signature_version": "v1",
"target": {
"function": "ppp_send_frame",
"file": "drivers/net/ppp/ppp_generic.c"
},
"signature_type": "Function",
"id": "CVE-2025-39847-dde9ff07",
"source": "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git@33a5bac5f14772730d2caf632ae97b6c2ee95044"
},
{
"digest": {
"threshold": 0.9,
"line_hashes": [
"276636255120100706561140157212978319432",
"55829420223695408849192385140628696563",
"168932883713912060084761680093108038223",
"8308544490015562216543838113310104136",
"109277469889237095925664481820540532921",
"183979913570224277252247881574250061579",
"219958819775903306392194923039033473121",
"183530889483296138570307612122907848057",
"3859885813748848713060688504156912300",
"149942529086438987781671592107618920575"
]
},
"deprecated": false,
"signature_version": "v1",
"target": {
"file": "drivers/net/ppp/ppp_generic.c"
},
"signature_type": "Line",
"id": "CVE-2025-39847-ed66fecc",
"source": "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git@1d8b354eafb8876d8bdb1bef69c7d2438aacfbe8"
}
]