CVE-2024-38577 (GCVE-0-2024-38577)
Vulnerability from cvelistv5
Published
2024-06-19 13:37
Modified
2026-08-05 11:32
Summary
In the Linux kernel, the following vulnerability has been resolved: rcu-tasks: Fix show_rcu_tasks_trace_gp_kthread buffer overflow There is a possibility of buffer overflow in show_rcu_tasks_trace_gp_kthread() if counters, passed to sprintf() are huge. Counter numbers, needed for this are unrealistically high, but buffer overflow is still possible. Use snprintf() with buffer size instead of sprintf(). Found by Linux Verification Center (linuxtesting.org) with SVACE.
Impacted products
Vendor Product Version
Linux Linux Version: edf3775f0ad66879796f594983163f672c4bf1a2
Version: edf3775f0ad66879796f594983163f672c4bf1a2
Version: edf3775f0ad66879796f594983163f672c4bf1a2
Version: edf3775f0ad66879796f594983163f672c4bf1a2
Version: edf3775f0ad66879796f594983163f672c4bf1a2
Version: edf3775f0ad66879796f594983163f672c4bf1a2
Version: edf3775f0ad66879796f594983163f672c4bf1a2
Create a notification for this product.
Show details on NVD website


{
  "containers": {
    "adp": [
      {
        "providerMetadata": {
          "dateUpdated": "2025-11-03T21:55:49.034Z",
          "orgId": "af854a3a-2127-422b-91ae-364da2661108",
          "shortName": "CVE"
        },
        "references": [
          {
            "tags": [
              "x_transferred"
            ],
            "url": "https://git.kernel.org/stable/c/08186d0c5fb64a1cc4b43e009314ee6b173ed222"
          },
          {
            "tags": [
              "x_transferred"
            ],
            "url": "https://git.kernel.org/stable/c/32d988f48ed287e676a29a15ac30701c35849aec"
          },
          {
            "tags": [
              "x_transferred"
            ],
            "url": "https://git.kernel.org/stable/c/6593d857ce5b5b802fb73d8091ac9c84b92c1697"
          },
          {
            "tags": [
              "x_transferred"
            ],
            "url": "https://git.kernel.org/stable/c/1a240e138071b25944ded0f5b3e357aa99fabcb7"
          },
          {
            "tags": [
              "x_transferred"
            ],
            "url": "https://git.kernel.org/stable/c/cc5645fddb0ce28492b15520306d092730dffa48"
          },
          {
            "url": "https://lists.debian.org/debian-lts-announce/2024/10/msg00003.html"
          }
        ],
        "title": "CVE Program Container"
      },
      {
        "metrics": [
          {
            "other": {
              "content": {
                "id": "CVE-2024-38577",
                "options": [
                  {
                    "Exploitation": "none"
                  },
                  {
                    "Automatable": "no"
                  },
                  {
                    "Technical Impact": "partial"
                  }
                ],
                "role": "CISA Coordinator",
                "timestamp": "2024-09-10T17:14:09.560635Z",
                "version": "2.0.3"
              },
              "type": "ssvc"
            }
          }
        ],
        "providerMetadata": {
          "dateUpdated": "2024-09-11T17:34:55.793Z",
          "orgId": "134c704f-9b21-4f2e-91b3-4a467353bcc0",
          "shortName": "CISA-ADP"
        },
        "title": "CISA ADP Vulnrichment"
      }
    ],
    "cna": {
      "affected": [
        {
          "defaultStatus": "unaffected",
          "product": "Linux",
          "programFiles": [
            "kernel/rcu/tasks.h"
          ],
          "repo": "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git",
          "vendor": "Linux",
          "versions": [
            {
              "lessThan": "17c43211d45f13d1badea3942b76bf16bcc49281",
              "status": "affected",
              "version": "edf3775f0ad66879796f594983163f672c4bf1a2",
              "versionType": "git"
            },
            {
              "lessThan": "af7b560c88fb420099e29890aa682b8a3efc8784",
              "status": "affected",
              "version": "edf3775f0ad66879796f594983163f672c4bf1a2",
              "versionType": "git"
            },
            {
              "lessThan": "08186d0c5fb64a1cc4b43e009314ee6b173ed222",
              "status": "affected",
              "version": "edf3775f0ad66879796f594983163f672c4bf1a2",
              "versionType": "git"
            },
            {
              "lessThan": "32d988f48ed287e676a29a15ac30701c35849aec",
              "status": "affected",
              "version": "edf3775f0ad66879796f594983163f672c4bf1a2",
              "versionType": "git"
            },
            {
              "lessThan": "6593d857ce5b5b802fb73d8091ac9c84b92c1697",
              "status": "affected",
              "version": "edf3775f0ad66879796f594983163f672c4bf1a2",
              "versionType": "git"
            },
            {
              "lessThan": "1a240e138071b25944ded0f5b3e357aa99fabcb7",
              "status": "affected",
              "version": "edf3775f0ad66879796f594983163f672c4bf1a2",
              "versionType": "git"
            },
            {
              "lessThan": "cc5645fddb0ce28492b15520306d092730dffa48",
              "status": "affected",
              "version": "edf3775f0ad66879796f594983163f672c4bf1a2",
              "versionType": "git"
            }
          ]
        },
        {
          "defaultStatus": "affected",
          "product": "Linux",
          "programFiles": [
            "kernel/rcu/tasks.h"
          ],
          "repo": "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git",
          "vendor": "Linux",
          "versions": [
            {
              "status": "affected",
              "version": "5.8"
            },
            {
              "lessThan": "5.8",
              "status": "unaffected",
              "version": "0",
              "versionType": "semver"
            },
            {
              "lessThanOrEqual": "5.10.*",
              "status": "unaffected",
              "version": "5.10.226",
              "versionType": "semver"
            },
            {
              "lessThanOrEqual": "5.15.*",
              "status": "unaffected",
              "version": "5.15.167",
              "versionType": "semver"
            },
            {
              "lessThanOrEqual": "6.1.*",
              "status": "unaffected",
              "version": "6.1.93",
              "versionType": "semver"
            },
            {
              "lessThanOrEqual": "6.6.*",
              "status": "unaffected",
              "version": "6.6.33",
              "versionType": "semver"
            },
            {
              "lessThanOrEqual": "6.8.*",
              "status": "unaffected",
              "version": "6.8.12",
              "versionType": "semver"
            },
            {
              "lessThanOrEqual": "6.9.*",
              "status": "unaffected",
              "version": "6.9.3",
              "versionType": "semver"
            },
            {
              "lessThanOrEqual": "*",
              "status": "unaffected",
              "version": "6.10",
              "versionType": "original_commit_for_fix"
            }
          ]
        }
      ],
      "cpeApplicability": [
        {
          "nodes": [
            {
              "cpeMatch": [
                {
                  "criteria": "cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*",
                  "versionEndExcluding": "5.10.226",
                  "versionStartIncluding": "5.8",
                  "vulnerable": true
                },
                {
                  "criteria": "cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*",
                  "versionEndExcluding": "5.15.167",
                  "versionStartIncluding": "5.8",
                  "vulnerable": true
                },
                {
                  "criteria": "cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*",
                  "versionEndExcluding": "6.1.93",
                  "versionStartIncluding": "5.8",
                  "vulnerable": true
                },
                {
                  "criteria": "cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*",
                  "versionEndExcluding": "6.6.33",
                  "versionStartIncluding": "5.8",
                  "vulnerable": true
                },
                {
                  "criteria": "cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*",
                  "versionEndExcluding": "6.8.12",
                  "versionStartIncluding": "5.8",
                  "vulnerable": true
                },
                {
                  "criteria": "cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*",
                  "versionEndExcluding": "6.9.3",
                  "versionStartIncluding": "5.8",
                  "vulnerable": true
                },
                {
                  "criteria": "cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*",
                  "versionEndExcluding": "6.10",
                  "versionStartIncluding": "5.8",
                  "vulnerable": true
                }
              ],
              "negate": false,
              "operator": "OR"
            }
          ]
        }
      ],
      "descriptions": [
        {
          "lang": "en",
          "value": "In the Linux kernel, the following vulnerability has been resolved:\n\nrcu-tasks: Fix show_rcu_tasks_trace_gp_kthread buffer overflow\n\nThere is a possibility of buffer overflow in\nshow_rcu_tasks_trace_gp_kthread() if counters, passed\nto sprintf() are huge. Counter numbers, needed for this\nare unrealistically high, but buffer overflow is still\npossible.\n\nUse snprintf() with buffer size instead of sprintf().\n\nFound by Linux Verification Center (linuxtesting.org) with SVACE."
        }
      ],
      "metrics": [
        {
          "cvssV3_1": {
            "baseScore": 7,
            "baseSeverity": "HIGH",
            "vectorString": "CVSS:3.1/AV:L/AC:H/PR:L/UI:N/S:U/C:H/I:H/A:H",
            "version": "3.1"
          },
          "scenarios": [
            {
              "lang": "en",
              "value": "AV:L - The vulnerable code is an RCU diagnostic dump routine reached only from in-kernel debug paths (PROVE_RCU stall check, rcutorture forward-progress check, sysrq-y) with no remote or network-facing entry point. The most severe defensible vector is a local actor on the machine.\nAC:H - Overflow requires the four unsigned long counters to render to \u226564 decimal digits, i.e. three monotonic heavy-reader counters near 10^18 simultaneously, which no attacker can drive within any feasible uptime; it additionally requires non-default builds/boot options (CONFIG_TASKS_TRACE_RCU_READ_MB plus CONFIG_PROVE_RCU, rcutorture, or rcutree.sysrq_rcu=1). These are conditions entirely outside the attacker\u0027s control.\nPR:L - No capability check guards the counter-incrementing paths, so an unprivileged local user\u0027s workload is the lowest-privileged plausible actor; scoring the higher-severity option, PR:L rather than PR:H is used even though the actual dump trigger (sysrq, rcutorture) normally implies root.\nUI:N - Emission of the RCU kthread dump happens from kernel diagnostic paths without any victim action; no user must open a file, mount a filesystem, or interact in any way.\nS:U - The stack overflow corrupts the kernel stack of the thread executing the dump, staying entirely within the kernel\u0027s own security authority with no crossing of a VM, IOMMU, or sandbox boundary.\nC:H - The defect is an out-of-bounds stack write that can clobber the canary, saved registers, and return address; per kernel scoring guidance such memory corruption is treated as leverageable toward disclosure of kernel memory, even though the overflowing bytes themselves are uncontrolled ASCII digits and there is no direct read primitive.\nI:H - This is a classic out-of-bounds stack write of up to 23 bytes past a 64-byte buffer, overwriting adjacent frame state including the saved return address, which is scored as high integrity impact for control-flow corruption.\nA:H - Smashing the stack frame triggers __stack_chk_fail (panic) on stack-protector builds and a fatal fault on a garbage return address otherwise, i.e. a kernel crash."
            }
          ]
        }
      ],
      "providerMetadata": {
        "dateUpdated": "2026-08-05T11:32:54.659Z",
        "orgId": "416baaa9-dc9f-4396-8d5f-8c081fb06d67",
        "shortName": "Linux"
      },
      "references": [
        {
          "url": "https://git.kernel.org/stable/c/17c43211d45f13d1badea3942b76bf16bcc49281"
        },
        {
          "url": "https://git.kernel.org/stable/c/af7b560c88fb420099e29890aa682b8a3efc8784"
        },
        {
          "url": "https://git.kernel.org/stable/c/08186d0c5fb64a1cc4b43e009314ee6b173ed222"
        },
        {
          "url": "https://git.kernel.org/stable/c/32d988f48ed287e676a29a15ac30701c35849aec"
        },
        {
          "url": "https://git.kernel.org/stable/c/6593d857ce5b5b802fb73d8091ac9c84b92c1697"
        },
        {
          "url": "https://git.kernel.org/stable/c/1a240e138071b25944ded0f5b3e357aa99fabcb7"
        },
        {
          "url": "https://git.kernel.org/stable/c/cc5645fddb0ce28492b15520306d092730dffa48"
        }
      ],
      "title": "rcu-tasks: Fix show_rcu_tasks_trace_gp_kthread buffer overflow",
      "x_generator": {
        "engine": "bippy-1.2.0"
      }
    }
  },
  "cveMetadata": {
    "assignerOrgId": "416baaa9-dc9f-4396-8d5f-8c081fb06d67",
    "assignerShortName": "Linux",
    "cveId": "CVE-2024-38577",
    "datePublished": "2024-06-19T13:37:35.797Z",
    "dateReserved": "2024-06-18T19:36:34.926Z",
    "dateUpdated": "2026-08-05T11:32:54.659Z",
    "state": "PUBLISHED"
  },
  "dataType": "CVE_RECORD",
  "dataVersion": "5.2",
  "vulnerability-lookup:meta": {
    "vulnrichment": {
      "containers": "{\"adp\": [{\"title\": \"CVE Program Container\", \"references\": [{\"url\": \"https://git.kernel.org/stable/c/08186d0c5fb64a1cc4b43e009314ee6b173ed222\", \"tags\": [\"x_transferred\"]}, {\"url\": \"https://git.kernel.org/stable/c/32d988f48ed287e676a29a15ac30701c35849aec\", \"tags\": [\"x_transferred\"]}, {\"url\": \"https://git.kernel.org/stable/c/6593d857ce5b5b802fb73d8091ac9c84b92c1697\", \"tags\": [\"x_transferred\"]}, {\"url\": \"https://git.kernel.org/stable/c/1a240e138071b25944ded0f5b3e357aa99fabcb7\", \"tags\": [\"x_transferred\"]}, {\"url\": \"https://git.kernel.org/stable/c/cc5645fddb0ce28492b15520306d092730dffa48\", \"tags\": [\"x_transferred\"]}], \"providerMetadata\": {\"orgId\": \"af854a3a-2127-422b-91ae-364da2661108\", \"shortName\": \"CVE\", \"dateUpdated\": \"2024-08-02T04:12:25.688Z\"}}, {\"title\": \"CISA ADP Vulnrichment\", \"metrics\": [{\"other\": {\"type\": \"ssvc\", \"content\": {\"id\": \"CVE-2024-38577\", \"role\": \"CISA Coordinator\", \"options\": [{\"Exploitation\": \"none\"}, {\"Automatable\": \"no\"}, {\"Technical Impact\": \"partial\"}], \"version\": \"2.0.3\", \"timestamp\": \"2024-09-10T17:14:09.560635Z\"}}}], \"providerMetadata\": {\"orgId\": \"134c704f-9b21-4f2e-91b3-4a467353bcc0\", \"shortName\": \"CISA-ADP\", \"dateUpdated\": \"2024-09-11T12:42:26.912Z\"}}], \"cna\": {\"title\": \"rcu-tasks: Fix show_rcu_tasks_trace_gp_kthread buffer overflow\", \"affected\": [{\"repo\": \"https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git\", \"vendor\": \"Linux\", \"product\": \"Linux\", \"versions\": [{\"status\": \"affected\", \"version\": \"edf3775f0ad6\", \"lessThan\": \"17c43211d45f\", \"versionType\": \"git\"}, {\"status\": \"affected\", \"version\": \"edf3775f0ad6\", \"lessThan\": \"af7b560c88fb\", \"versionType\": \"git\"}, {\"status\": \"affected\", \"version\": \"edf3775f0ad6\", \"lessThan\": \"08186d0c5fb6\", \"versionType\": \"git\"}, {\"status\": \"affected\", \"version\": \"edf3775f0ad6\", \"lessThan\": \"32d988f48ed2\", \"versionType\": \"git\"}, {\"status\": \"affected\", \"version\": \"edf3775f0ad6\", \"lessThan\": \"6593d857ce5b\", \"versionType\": \"git\"}, {\"status\": \"affected\", \"version\": \"edf3775f0ad6\", \"lessThan\": \"1a240e138071\", \"versionType\": \"git\"}, {\"status\": \"affected\", \"version\": \"edf3775f0ad6\", \"lessThan\": \"cc5645fddb0c\", \"versionType\": \"git\"}], \"programFiles\": [\"kernel/rcu/tasks.h\"], \"defaultStatus\": \"unaffected\"}, {\"repo\": \"https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git\", \"vendor\": \"Linux\", \"product\": \"Linux\", \"versions\": [{\"status\": \"affected\", \"version\": \"5.8\"}, {\"status\": \"unaffected\", \"version\": \"0\", \"lessThan\": \"5.8\", \"versionType\": \"semver\"}, {\"status\": \"unaffected\", \"version\": \"5.10.226\", \"versionType\": \"semver\", \"lessThanOrEqual\": \"5.10.*\"}, {\"status\": \"unaffected\", \"version\": \"5.15.167\", \"versionType\": \"semver\", \"lessThanOrEqual\": \"5.15.*\"}, {\"status\": \"unaffected\", \"version\": \"6.1.93\", \"versionType\": \"semver\", \"lessThanOrEqual\": \"6.1.*\"}, {\"status\": \"unaffected\", \"version\": \"6.6.33\", \"versionType\": \"semver\", \"lessThanOrEqual\": \"6.6.*\"}, {\"status\": \"unaffected\", \"version\": \"6.8.12\", \"versionType\": \"semver\", \"lessThanOrEqual\": \"6.8.*\"}, {\"status\": \"unaffected\", \"version\": \"6.9.3\", \"versionType\": \"semver\", \"lessThanOrEqual\": \"6.9.*\"}, {\"status\": \"unaffected\", \"version\": \"6.10\", \"versionType\": \"original_commit_for_fix\", \"lessThanOrEqual\": \"*\"}], \"programFiles\": [\"kernel/rcu/tasks.h\"], \"defaultStatus\": \"affected\"}], \"references\": [{\"url\": \"https://git.kernel.org/stable/c/17c43211d45f13d1badea3942b76bf16bcc49281\"}, {\"url\": \"https://git.kernel.org/stable/c/af7b560c88fb420099e29890aa682b8a3efc8784\"}, {\"url\": \"https://git.kernel.org/stable/c/08186d0c5fb64a1cc4b43e009314ee6b173ed222\"}, {\"url\": \"https://git.kernel.org/stable/c/32d988f48ed287e676a29a15ac30701c35849aec\"}, {\"url\": \"https://git.kernel.org/stable/c/6593d857ce5b5b802fb73d8091ac9c84b92c1697\"}, {\"url\": \"https://git.kernel.org/stable/c/1a240e138071b25944ded0f5b3e357aa99fabcb7\"}, {\"url\": \"https://git.kernel.org/stable/c/cc5645fddb0ce28492b15520306d092730dffa48\"}], \"x_generator\": {\"engine\": \"bippy-9e1c9544281a\"}, \"descriptions\": [{\"lang\": \"en\", \"value\": \"In the Linux kernel, the following vulnerability has been resolved:\\n\\nrcu-tasks: Fix show_rcu_tasks_trace_gp_kthread buffer overflow\\n\\nThere is a possibility of buffer overflow in\\nshow_rcu_tasks_trace_gp_kthread() if counters, passed\\nto sprintf() are huge. Counter numbers, needed for this\\nare unrealistically high, but buffer overflow is still\\npossible.\\n\\nUse snprintf() with buffer size instead of sprintf().\\n\\nFound by Linux Verification Center (linuxtesting.org) with SVACE.\"}], \"providerMetadata\": {\"orgId\": \"416baaa9-dc9f-4396-8d5f-8c081fb06d67\", \"shortName\": \"Linux\", \"dateUpdated\": \"2024-11-05T09:30:14.553Z\"}}}",
      "cveMetadata": "{\"cveId\": \"CVE-2024-38577\", \"state\": \"PUBLISHED\", \"dateUpdated\": \"2024-11-05T09:30:14.553Z\", \"dateReserved\": \"2024-06-18T19:36:34.926Z\", \"assignerOrgId\": \"416baaa9-dc9f-4396-8d5f-8c081fb06d67\", \"datePublished\": \"2024-06-19T13:37:35.797Z\", \"assignerShortName\": \"Linux\"}",
      "dataType": "CVE_RECORD",
      "dataVersion": "5.1"
    }
  }
}


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.
  • Published Proof of Concept: A public proof of concept is available for this vulnerability.
  • 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…

Loading…