CVE-2023-53441 (GCVE-0-2023-53441)
Vulnerability from cvelistv5
Published
2025-09-18 16:04
Modified
2025-09-18 16:04
Severity ?
Summary
In the Linux kernel, the following vulnerability has been resolved: bpf: cpumap: Fix memory leak in cpu_map_update_elem Syzkaller reported a memory leak as follows: BUG: memory leak unreferenced object 0xff110001198ef748 (size 192): comm "syz-executor.3", pid 17672, jiffies 4298118891 (age 9.906s) hex dump (first 32 bytes): 00 00 00 00 4a 19 00 00 80 ad e3 e4 fe ff c0 00 ....J........... 00 b2 d3 0c 01 00 11 ff 28 f5 8e 19 01 00 11 ff ........(....... backtrace: [<ffffffffadd28087>] __cpu_map_entry_alloc+0xf7/0xb00 [<ffffffffadd28d8e>] cpu_map_update_elem+0x2fe/0x3d0 [<ffffffffadc6d0fd>] bpf_map_update_value.isra.0+0x2bd/0x520 [<ffffffffadc7349b>] map_update_elem+0x4cb/0x720 [<ffffffffadc7d983>] __se_sys_bpf+0x8c3/0xb90 [<ffffffffb029cc80>] do_syscall_64+0x30/0x40 [<ffffffffb0400099>] entry_SYSCALL_64_after_hwframe+0x61/0xc6 BUG: memory leak unreferenced object 0xff110001198ef528 (size 192): comm "syz-executor.3", pid 17672, jiffies 4298118891 (age 9.906s) hex dump (first 32 bytes): 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................ 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................ backtrace: [<ffffffffadd281f0>] __cpu_map_entry_alloc+0x260/0xb00 [<ffffffffadd28d8e>] cpu_map_update_elem+0x2fe/0x3d0 [<ffffffffadc6d0fd>] bpf_map_update_value.isra.0+0x2bd/0x520 [<ffffffffadc7349b>] map_update_elem+0x4cb/0x720 [<ffffffffadc7d983>] __se_sys_bpf+0x8c3/0xb90 [<ffffffffb029cc80>] do_syscall_64+0x30/0x40 [<ffffffffb0400099>] entry_SYSCALL_64_after_hwframe+0x61/0xc6 BUG: memory leak unreferenced object 0xff1100010fd93d68 (size 8): comm "syz-executor.3", pid 17672, jiffies 4298118891 (age 9.906s) hex dump (first 8 bytes): 00 00 00 00 00 00 00 00 ........ backtrace: [<ffffffffade5db3e>] kvmalloc_node+0x11e/0x170 [<ffffffffadd28280>] __cpu_map_entry_alloc+0x2f0/0xb00 [<ffffffffadd28d8e>] cpu_map_update_elem+0x2fe/0x3d0 [<ffffffffadc6d0fd>] bpf_map_update_value.isra.0+0x2bd/0x520 [<ffffffffadc7349b>] map_update_elem+0x4cb/0x720 [<ffffffffadc7d983>] __se_sys_bpf+0x8c3/0xb90 [<ffffffffb029cc80>] do_syscall_64+0x30/0x40 [<ffffffffb0400099>] entry_SYSCALL_64_after_hwframe+0x61/0xc6 In the cpu_map_update_elem flow, when kthread_stop is called before calling the threadfn of rcpu->kthread, since the KTHREAD_SHOULD_STOP bit of kthread has been set by kthread_stop, the threadfn of rcpu->kthread will never be executed, and rcpu->refcnt will never be 0, which will lead to the allocated rcpu, rcpu->queue and rcpu->queue->queue cannot be released. Calling kthread_stop before executing kthread's threadfn will return -EINTR. We can complete the release of memory resources in this state.
Impacted products
Vendor Product Version
Linux Linux Version: 6710e1126934d8b4372b4d2f9ae1646cd3f151bf
Version: 6710e1126934d8b4372b4d2f9ae1646cd3f151bf
Version: 6710e1126934d8b4372b4d2f9ae1646cd3f151bf
Version: 6710e1126934d8b4372b4d2f9ae1646cd3f151bf
Create a notification for this product.
   Linux Linux Version: 4.15
Create a notification for this product.
Show details on NVD website


{
  "containers": {
    "cna": {
      "affected": [
        {
          "defaultStatus": "unaffected",
          "product": "Linux",
          "programFiles": [
            "kernel/bpf/cpumap.c"
          ],
          "repo": "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git",
          "vendor": "Linux",
          "versions": [
            {
              "lessThan": "d26299f50f5ea8f0aeb5d49e659c31f64233c816",
              "status": "affected",
              "version": "6710e1126934d8b4372b4d2f9ae1646cd3f151bf",
              "versionType": "git"
            },
            {
              "lessThan": "b11a9b4f28cb6ff69ef7e69809e5f7fffeac9030",
              "status": "affected",
              "version": "6710e1126934d8b4372b4d2f9ae1646cd3f151bf",
              "versionType": "git"
            },
            {
              "lessThan": "a957ac8e0b5ffb5797382a6adbafd005a5f72851",
              "status": "affected",
              "version": "6710e1126934d8b4372b4d2f9ae1646cd3f151bf",
              "versionType": "git"
            },
            {
              "lessThan": "4369016497319a9635702da010d02af1ebb1849d",
              "status": "affected",
              "version": "6710e1126934d8b4372b4d2f9ae1646cd3f151bf",
              "versionType": "git"
            }
          ]
        },
        {
          "defaultStatus": "affected",
          "product": "Linux",
          "programFiles": [
            "kernel/bpf/cpumap.c"
          ],
          "repo": "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git",
          "vendor": "Linux",
          "versions": [
            {
              "status": "affected",
              "version": "4.15"
            },
            {
              "lessThan": "4.15",
              "status": "unaffected",
              "version": "0",
              "versionType": "semver"
            },
            {
              "lessThanOrEqual": "5.15.*",
              "status": "unaffected",
              "version": "5.15.121",
              "versionType": "semver"
            },
            {
              "lessThanOrEqual": "6.1.*",
              "status": "unaffected",
              "version": "6.1.40",
              "versionType": "semver"
            },
            {
              "lessThanOrEqual": "6.4.*",
              "status": "unaffected",
              "version": "6.4.5",
              "versionType": "semver"
            },
            {
              "lessThanOrEqual": "*",
              "status": "unaffected",
              "version": "6.5",
              "versionType": "original_commit_for_fix"
            }
          ]
        }
      ],
      "cpeApplicability": [
        {
          "nodes": [
            {
              "cpeMatch": [
                {
                  "criteria": "cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*",
                  "versionEndExcluding": "5.15.121",
                  "versionStartIncluding": "4.15",
                  "vulnerable": true
                },
                {
                  "criteria": "cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*",
                  "versionEndExcluding": "6.1.40",
                  "versionStartIncluding": "4.15",
                  "vulnerable": true
                },
                {
                  "criteria": "cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*",
                  "versionEndExcluding": "6.4.5",
                  "versionStartIncluding": "4.15",
                  "vulnerable": true
                },
                {
                  "criteria": "cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*",
                  "versionEndExcluding": "6.5",
                  "versionStartIncluding": "4.15",
                  "vulnerable": true
                }
              ],
              "negate": false,
              "operator": "OR"
            }
          ]
        }
      ],
      "descriptions": [
        {
          "lang": "en",
          "value": "In the Linux kernel, the following vulnerability has been resolved:\n\nbpf: cpumap: Fix memory leak in cpu_map_update_elem\n\nSyzkaller reported a memory leak as follows:\n\nBUG: memory leak\nunreferenced object 0xff110001198ef748 (size 192):\n  comm \"syz-executor.3\", pid 17672, jiffies 4298118891 (age 9.906s)\n  hex dump (first 32 bytes):\n    00 00 00 00 4a 19 00 00 80 ad e3 e4 fe ff c0 00  ....J...........\n    00 b2 d3 0c 01 00 11 ff 28 f5 8e 19 01 00 11 ff  ........(.......\n  backtrace:\n    [\u003cffffffffadd28087\u003e] __cpu_map_entry_alloc+0xf7/0xb00\n    [\u003cffffffffadd28d8e\u003e] cpu_map_update_elem+0x2fe/0x3d0\n    [\u003cffffffffadc6d0fd\u003e] bpf_map_update_value.isra.0+0x2bd/0x520\n    [\u003cffffffffadc7349b\u003e] map_update_elem+0x4cb/0x720\n    [\u003cffffffffadc7d983\u003e] __se_sys_bpf+0x8c3/0xb90\n    [\u003cffffffffb029cc80\u003e] do_syscall_64+0x30/0x40\n    [\u003cffffffffb0400099\u003e] entry_SYSCALL_64_after_hwframe+0x61/0xc6\n\nBUG: memory leak\nunreferenced object 0xff110001198ef528 (size 192):\n  comm \"syz-executor.3\", pid 17672, jiffies 4298118891 (age 9.906s)\n  hex dump (first 32 bytes):\n    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  ................\n    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  ................\n  backtrace:\n    [\u003cffffffffadd281f0\u003e] __cpu_map_entry_alloc+0x260/0xb00\n    [\u003cffffffffadd28d8e\u003e] cpu_map_update_elem+0x2fe/0x3d0\n    [\u003cffffffffadc6d0fd\u003e] bpf_map_update_value.isra.0+0x2bd/0x520\n    [\u003cffffffffadc7349b\u003e] map_update_elem+0x4cb/0x720\n    [\u003cffffffffadc7d983\u003e] __se_sys_bpf+0x8c3/0xb90\n    [\u003cffffffffb029cc80\u003e] do_syscall_64+0x30/0x40\n    [\u003cffffffffb0400099\u003e] entry_SYSCALL_64_after_hwframe+0x61/0xc6\n\nBUG: memory leak\nunreferenced object 0xff1100010fd93d68 (size 8):\n  comm \"syz-executor.3\", pid 17672, jiffies 4298118891 (age 9.906s)\n  hex dump (first 8 bytes):\n    00 00 00 00 00 00 00 00                          ........\n  backtrace:\n    [\u003cffffffffade5db3e\u003e] kvmalloc_node+0x11e/0x170\n    [\u003cffffffffadd28280\u003e] __cpu_map_entry_alloc+0x2f0/0xb00\n    [\u003cffffffffadd28d8e\u003e] cpu_map_update_elem+0x2fe/0x3d0\n    [\u003cffffffffadc6d0fd\u003e] bpf_map_update_value.isra.0+0x2bd/0x520\n    [\u003cffffffffadc7349b\u003e] map_update_elem+0x4cb/0x720\n    [\u003cffffffffadc7d983\u003e] __se_sys_bpf+0x8c3/0xb90\n    [\u003cffffffffb029cc80\u003e] do_syscall_64+0x30/0x40\n    [\u003cffffffffb0400099\u003e] entry_SYSCALL_64_after_hwframe+0x61/0xc6\n\nIn the cpu_map_update_elem flow, when kthread_stop is called before\ncalling the threadfn of rcpu-\u003ekthread, since the KTHREAD_SHOULD_STOP bit\nof kthread has been set by kthread_stop, the threadfn of rcpu-\u003ekthread\nwill never be executed, and rcpu-\u003erefcnt will never be 0, which will\nlead to the allocated rcpu, rcpu-\u003equeue and rcpu-\u003equeue-\u003equeue cannot be\nreleased.\n\nCalling kthread_stop before executing kthread\u0027s threadfn will return\n-EINTR. We can complete the release of memory resources in this state."
        }
      ],
      "providerMetadata": {
        "dateUpdated": "2025-09-18T16:04:18.519Z",
        "orgId": "416baaa9-dc9f-4396-8d5f-8c081fb06d67",
        "shortName": "Linux"
      },
      "references": [
        {
          "url": "https://git.kernel.org/stable/c/d26299f50f5ea8f0aeb5d49e659c31f64233c816"
        },
        {
          "url": "https://git.kernel.org/stable/c/b11a9b4f28cb6ff69ef7e69809e5f7fffeac9030"
        },
        {
          "url": "https://git.kernel.org/stable/c/a957ac8e0b5ffb5797382a6adbafd005a5f72851"
        },
        {
          "url": "https://git.kernel.org/stable/c/4369016497319a9635702da010d02af1ebb1849d"
        }
      ],
      "title": "bpf: cpumap: Fix memory leak in cpu_map_update_elem",
      "x_generator": {
        "engine": "bippy-1.2.0"
      }
    }
  },
  "cveMetadata": {
    "assignerOrgId": "416baaa9-dc9f-4396-8d5f-8c081fb06d67",
    "assignerShortName": "Linux",
    "cveId": "CVE-2023-53441",
    "datePublished": "2025-09-18T16:04:18.519Z",
    "dateReserved": "2025-09-17T14:54:09.752Z",
    "dateUpdated": "2025-09-18T16:04:18.519Z",
    "state": "PUBLISHED"
  },
  "dataType": "CVE_RECORD",
  "dataVersion": "5.1",
  "vulnerability-lookup:meta": {
    "nvd": "{\"cve\":{\"id\":\"CVE-2023-53441\",\"sourceIdentifier\":\"416baaa9-dc9f-4396-8d5f-8c081fb06d67\",\"published\":\"2025-09-18T16:15:48.353\",\"lastModified\":\"2025-09-19T16:00:27.847\",\"vulnStatus\":\"Awaiting Analysis\",\"cveTags\":[],\"descriptions\":[{\"lang\":\"en\",\"value\":\"In the Linux kernel, the following vulnerability has been resolved:\\n\\nbpf: cpumap: Fix memory leak in cpu_map_update_elem\\n\\nSyzkaller reported a memory leak as follows:\\n\\nBUG: memory leak\\nunreferenced object 0xff110001198ef748 (size 192):\\n  comm \\\"syz-executor.3\\\", pid 17672, jiffies 4298118891 (age 9.906s)\\n  hex dump (first 32 bytes):\\n    00 00 00 00 4a 19 00 00 80 ad e3 e4 fe ff c0 00  ....J...........\\n    00 b2 d3 0c 01 00 11 ff 28 f5 8e 19 01 00 11 ff  ........(.......\\n  backtrace:\\n    [\u003cffffffffadd28087\u003e] __cpu_map_entry_alloc+0xf7/0xb00\\n    [\u003cffffffffadd28d8e\u003e] cpu_map_update_elem+0x2fe/0x3d0\\n    [\u003cffffffffadc6d0fd\u003e] bpf_map_update_value.isra.0+0x2bd/0x520\\n    [\u003cffffffffadc7349b\u003e] map_update_elem+0x4cb/0x720\\n    [\u003cffffffffadc7d983\u003e] __se_sys_bpf+0x8c3/0xb90\\n    [\u003cffffffffb029cc80\u003e] do_syscall_64+0x30/0x40\\n    [\u003cffffffffb0400099\u003e] entry_SYSCALL_64_after_hwframe+0x61/0xc6\\n\\nBUG: memory leak\\nunreferenced object 0xff110001198ef528 (size 192):\\n  comm \\\"syz-executor.3\\\", pid 17672, jiffies 4298118891 (age 9.906s)\\n  hex dump (first 32 bytes):\\n    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  ................\\n    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  ................\\n  backtrace:\\n    [\u003cffffffffadd281f0\u003e] __cpu_map_entry_alloc+0x260/0xb00\\n    [\u003cffffffffadd28d8e\u003e] cpu_map_update_elem+0x2fe/0x3d0\\n    [\u003cffffffffadc6d0fd\u003e] bpf_map_update_value.isra.0+0x2bd/0x520\\n    [\u003cffffffffadc7349b\u003e] map_update_elem+0x4cb/0x720\\n    [\u003cffffffffadc7d983\u003e] __se_sys_bpf+0x8c3/0xb90\\n    [\u003cffffffffb029cc80\u003e] do_syscall_64+0x30/0x40\\n    [\u003cffffffffb0400099\u003e] entry_SYSCALL_64_after_hwframe+0x61/0xc6\\n\\nBUG: memory leak\\nunreferenced object 0xff1100010fd93d68 (size 8):\\n  comm \\\"syz-executor.3\\\", pid 17672, jiffies 4298118891 (age 9.906s)\\n  hex dump (first 8 bytes):\\n    00 00 00 00 00 00 00 00                          ........\\n  backtrace:\\n    [\u003cffffffffade5db3e\u003e] kvmalloc_node+0x11e/0x170\\n    [\u003cffffffffadd28280\u003e] __cpu_map_entry_alloc+0x2f0/0xb00\\n    [\u003cffffffffadd28d8e\u003e] cpu_map_update_elem+0x2fe/0x3d0\\n    [\u003cffffffffadc6d0fd\u003e] bpf_map_update_value.isra.0+0x2bd/0x520\\n    [\u003cffffffffadc7349b\u003e] map_update_elem+0x4cb/0x720\\n    [\u003cffffffffadc7d983\u003e] __se_sys_bpf+0x8c3/0xb90\\n    [\u003cffffffffb029cc80\u003e] do_syscall_64+0x30/0x40\\n    [\u003cffffffffb0400099\u003e] entry_SYSCALL_64_after_hwframe+0x61/0xc6\\n\\nIn the cpu_map_update_elem flow, when kthread_stop is called before\\ncalling the threadfn of rcpu-\u003ekthread, since the KTHREAD_SHOULD_STOP bit\\nof kthread has been set by kthread_stop, the threadfn of rcpu-\u003ekthread\\nwill never be executed, and rcpu-\u003erefcnt will never be 0, which will\\nlead to the allocated rcpu, rcpu-\u003equeue and rcpu-\u003equeue-\u003equeue cannot be\\nreleased.\\n\\nCalling kthread_stop before executing kthread\u0027s threadfn will return\\n-EINTR. We can complete the release of memory resources in this state.\"}],\"metrics\":{},\"references\":[{\"url\":\"https://git.kernel.org/stable/c/4369016497319a9635702da010d02af1ebb1849d\",\"source\":\"416baaa9-dc9f-4396-8d5f-8c081fb06d67\"},{\"url\":\"https://git.kernel.org/stable/c/a957ac8e0b5ffb5797382a6adbafd005a5f72851\",\"source\":\"416baaa9-dc9f-4396-8d5f-8c081fb06d67\"},{\"url\":\"https://git.kernel.org/stable/c/b11a9b4f28cb6ff69ef7e69809e5f7fffeac9030\",\"source\":\"416baaa9-dc9f-4396-8d5f-8c081fb06d67\"},{\"url\":\"https://git.kernel.org/stable/c/d26299f50f5ea8f0aeb5d49e659c31f64233c816\",\"source\":\"416baaa9-dc9f-4396-8d5f-8c081fb06d67\"}]}}"
  }
}


Log in or create an account to share your comment.




Tags
Taxonomy of the tags.


Loading…

Loading…

Loading…

Sightings

Author Source Type Date

Nomenclature

  • Seen: The vulnerability was mentioned, discussed, or seen somewhere by the user.
  • Confirmed: The vulnerability is confirmed from an analyst perspective.
  • Exploited: This vulnerability was exploited and seen by the user reporting the sighting.
  • Patched: This vulnerability was successfully patched by the user reporting the sighting.
  • Not exploited: This vulnerability was not exploited or seen by the user reporting the sighting.
  • Not confirmed: The user expresses doubt about the veracity of the vulnerability.
  • Not patched: This vulnerability was not successfully patched by the user reporting the sighting.


Loading…