cve-2024-44968
Vulnerability from cvelistv5
Published
2024-09-04 18:56
Modified
2025-05-04 09:29
Severity ?
Summary
In the Linux kernel, the following vulnerability has been resolved: tick/broadcast: Move per CPU pointer access into the atomic section The recent fix for making the take over of the broadcast timer more reliable retrieves a per CPU pointer in preemptible context. This went unnoticed as compilers hoist the access into the non-preemptible region where the pointer is actually used. But of course it's valid that the compiler keeps it at the place where the code puts it which rightfully triggers: BUG: using smp_processor_id() in preemptible [00000000] code: caller is hotplug_cpu__broadcast_tick_pull+0x1c/0xc0 Move it to the actual usage site which is in a non-preemptible region.
Impacted products
Vendor Product Version
Linux Linux Version: dfe19aa91378972f10530635ad83b2d77f481044
Version: 457a1c87d454455d671a3045cf0b56157be110a1
Version: 9ef7190228145f959d9bc0ddca40ecf76bb413b0
Version: d3b165c10473aa6fc6141bb5b1f6e5b50c1fb774
Version: 408bfb6b0a7f22e971ce6b600aec448769e580a8
Version: 3a58c590f6bd1d20eb1e76c5cea31c36cc032339
Version: 2cdab4b4bf77369961f706cdeb7d040db10c5217
Version: f7d43dd206e7e18c182f200e67a8db8c209907fa
Create a notification for this product.
   Linux Linux Version: 6.1.103   
Version: 6.6.44   
Version: 6.10.3   
Create a notification for this product.
Show details on NVD website


{
   containers: {
      adp: [
         {
            metrics: [
               {
                  other: {
                     content: {
                        id: "CVE-2024-44968",
                        options: [
                           {
                              Exploitation: "none",
                           },
                           {
                              Automatable: "no",
                           },
                           {
                              "Technical Impact": "partial",
                           },
                        ],
                        role: "CISA Coordinator",
                        timestamp: "2024-09-10T17:39:24.484235Z",
                        version: "2.0.3",
                     },
                     type: "ssvc",
                  },
               },
            ],
            providerMetadata: {
               dateUpdated: "2024-09-12T17:33:33.994Z",
               orgId: "134c704f-9b21-4f2e-91b3-4a467353bcc0",
               shortName: "CISA-ADP",
            },
            title: "CISA ADP Vulnrichment",
         },
      ],
      cna: {
         affected: [
            {
               defaultStatus: "unaffected",
               product: "Linux",
               programFiles: [
                  "kernel/time/tick-broadcast.c",
               ],
               repo: "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git",
               vendor: "Linux",
               versions: [
                  {
                     lessThan: "f54abf332a2bc0413cfa8bd6a8511f7aa99faea0",
                     status: "affected",
                     version: "dfe19aa91378972f10530635ad83b2d77f481044",
                     versionType: "git",
                  },
                  {
                     lessThan: "f91fb47ecacc178a83a77eeebd25cbaec18c01d6",
                     status: "affected",
                     version: "457a1c87d454455d671a3045cf0b56157be110a1",
                     versionType: "git",
                  },
                  {
                     lessThan: "668c6c4a7e9e9f081c06b70f30104fb7013437ed",
                     status: "affected",
                     version: "9ef7190228145f959d9bc0ddca40ecf76bb413b0",
                     versionType: "git",
                  },
                  {
                     lessThan: "541a900d245536d4809cb1aa322c3fcc2cdb58a6",
                     status: "affected",
                     version: "d3b165c10473aa6fc6141bb5b1f6e5b50c1fb774",
                     versionType: "git",
                  },
                  {
                     lessThan: "7b3ec186ba93e333e9efe7254e7e31c1828e5d2d",
                     status: "affected",
                     version: "408bfb6b0a7f22e971ce6b600aec448769e580a8",
                     versionType: "git",
                  },
                  {
                     lessThan: "b9d604933d5fd72dd37f24e1dc35f778297d745a",
                     status: "affected",
                     version: "3a58c590f6bd1d20eb1e76c5cea31c36cc032339",
                     versionType: "git",
                  },
                  {
                     lessThan: "7dd12f85f150010ef7518201c63fa7e395f5c3e9",
                     status: "affected",
                     version: "2cdab4b4bf77369961f706cdeb7d040db10c5217",
                     versionType: "git",
                  },
                  {
                     lessThan: "6881e75237a84093d0986f56223db3724619f26e",
                     status: "affected",
                     version: "f7d43dd206e7e18c182f200e67a8db8c209907fa",
                     versionType: "git",
                  },
               ],
            },
            {
               defaultStatus: "unaffected",
               product: "Linux",
               programFiles: [
                  "kernel/time/tick-broadcast.c",
               ],
               repo: "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git",
               vendor: "Linux",
               versions: [
                  {
                     lessThan: "6.1.105",
                     status: "affected",
                     version: "6.1.103",
                     versionType: "semver",
                  },
                  {
                     lessThan: "6.6.46",
                     status: "affected",
                     version: "6.6.44",
                     versionType: "semver",
                  },
                  {
                     lessThan: "6.10.5",
                     status: "affected",
                     version: "6.10.3",
                     versionType: "semver",
                  },
               ],
            },
         ],
         cpeApplicability: [
            {
               nodes: [
                  {
                     cpeMatch: [
                        {
                           criteria: "cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*",
                           versionEndExcluding: "6.1.105",
                           versionStartIncluding: "6.1.103",
                           vulnerable: true,
                        },
                        {
                           criteria: "cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*",
                           versionEndExcluding: "6.6.46",
                           versionStartIncluding: "6.6.44",
                           vulnerable: true,
                        },
                        {
                           criteria: "cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*",
                           versionEndExcluding: "6.10.5",
                           versionStartIncluding: "6.10.3",
                           vulnerable: true,
                        },
                     ],
                     negate: false,
                     operator: "OR",
                  },
               ],
            },
         ],
         descriptions: [
            {
               lang: "en",
               value: "In the Linux kernel, the following vulnerability has been resolved:\n\ntick/broadcast: Move per CPU pointer access into the atomic section\n\nThe recent fix for making the take over of the broadcast timer more\nreliable retrieves a per CPU pointer in preemptible context.\n\nThis went unnoticed as compilers hoist the access into the non-preemptible\nregion where the pointer is actually used. But of course it's valid that\nthe compiler keeps it at the place where the code puts it which rightfully\ntriggers:\n\n  BUG: using smp_processor_id() in preemptible [00000000] code:\n       caller is hotplug_cpu__broadcast_tick_pull+0x1c/0xc0\n\nMove it to the actual usage site which is in a non-preemptible region.",
            },
         ],
         providerMetadata: {
            dateUpdated: "2025-05-04T09:29:59.239Z",
            orgId: "416baaa9-dc9f-4396-8d5f-8c081fb06d67",
            shortName: "Linux",
         },
         references: [
            {
               url: "https://git.kernel.org/stable/c/f54abf332a2bc0413cfa8bd6a8511f7aa99faea0",
            },
            {
               url: "https://git.kernel.org/stable/c/f91fb47ecacc178a83a77eeebd25cbaec18c01d6",
            },
            {
               url: "https://git.kernel.org/stable/c/668c6c4a7e9e9f081c06b70f30104fb7013437ed",
            },
            {
               url: "https://git.kernel.org/stable/c/541a900d245536d4809cb1aa322c3fcc2cdb58a6",
            },
            {
               url: "https://git.kernel.org/stable/c/7b3ec186ba93e333e9efe7254e7e31c1828e5d2d",
            },
            {
               url: "https://git.kernel.org/stable/c/b9d604933d5fd72dd37f24e1dc35f778297d745a",
            },
            {
               url: "https://git.kernel.org/stable/c/7dd12f85f150010ef7518201c63fa7e395f5c3e9",
            },
            {
               url: "https://git.kernel.org/stable/c/6881e75237a84093d0986f56223db3724619f26e",
            },
         ],
         title: "tick/broadcast: Move per CPU pointer access into the atomic section",
         x_generator: {
            engine: "bippy-1.2.0",
         },
      },
   },
   cveMetadata: {
      assignerOrgId: "416baaa9-dc9f-4396-8d5f-8c081fb06d67",
      assignerShortName: "Linux",
      cveId: "CVE-2024-44968",
      datePublished: "2024-09-04T18:56:45.456Z",
      dateReserved: "2024-08-21T05:34:56.667Z",
      dateUpdated: "2025-05-04T09:29:59.239Z",
      state: "PUBLISHED",
   },
   dataType: "CVE_RECORD",
   dataVersion: "5.1",
   "vulnerability-lookup:meta": {
      nvd: "{\"cve\":{\"id\":\"CVE-2024-44968\",\"sourceIdentifier\":\"416baaa9-dc9f-4396-8d5f-8c081fb06d67\",\"published\":\"2024-09-04T19:15:31.173\",\"lastModified\":\"2024-10-03T18:04:57.973\",\"vulnStatus\":\"Analyzed\",\"cveTags\":[],\"descriptions\":[{\"lang\":\"en\",\"value\":\"In the Linux kernel, the following vulnerability has been resolved:\\n\\ntick/broadcast: Move per CPU pointer access into the atomic section\\n\\nThe recent fix for making the take over of the broadcast timer more\\nreliable retrieves a per CPU pointer in preemptible context.\\n\\nThis went unnoticed as compilers hoist the access into the non-preemptible\\nregion where the pointer is actually used. But of course it's valid that\\nthe compiler keeps it at the place where the code puts it which rightfully\\ntriggers:\\n\\n  BUG: using smp_processor_id() in preemptible [00000000] code:\\n       caller is hotplug_cpu__broadcast_tick_pull+0x1c/0xc0\\n\\nMove it to the actual usage site which is in a non-preemptible region.\"},{\"lang\":\"es\",\"value\":\"En el kernel de Linux, se ha resuelto la siguiente vulnerabilidad: tick/broadcast: mover el acceso al puntero por CPU a la sección atómica La solución reciente para hacer que la toma de control del temporizador de difusión sea más fiable recupera un puntero por CPU en un contexto preemptible. Esto pasó desapercibido ya que los compiladores elevan el acceso a la región no preemptible donde realmente se usa el puntero. Pero, por supuesto, es válido que el compilador lo mantenga en el lugar donde lo pone el código, lo que activa correctamente: ERROR: usar smp_processor_id() en código preemptible [00000000]: el llamador es hotplug_cpu__broadcast_tick_pull+0x1c/0xc0 Muévalo al sitio de uso real que está en una región no preemptible.\"}],\"metrics\":{\"cvssMetricV31\":[{\"source\":\"nvd@nist.gov\",\"type\":\"Primary\",\"cvssData\":{\"version\":\"3.1\",\"vectorString\":\"CVSS:3.1/AV:L/AC:L/PR:L/UI:N/S:U/C:N/I:N/A:H\",\"baseScore\":5.5,\"baseSeverity\":\"MEDIUM\",\"attackVector\":\"LOCAL\",\"attackComplexity\":\"LOW\",\"privilegesRequired\":\"LOW\",\"userInteraction\":\"NONE\",\"scope\":\"UNCHANGED\",\"confidentialityImpact\":\"NONE\",\"integrityImpact\":\"NONE\",\"availabilityImpact\":\"HIGH\"},\"exploitabilityScore\":1.8,\"impactScore\":3.6}]},\"weaknesses\":[{\"source\":\"nvd@nist.gov\",\"type\":\"Primary\",\"description\":[{\"lang\":\"en\",\"value\":\"NVD-CWE-noinfo\"}]}],\"configurations\":[{\"nodes\":[{\"operator\":\"OR\",\"negate\":false,\"cpeMatch\":[{\"vulnerable\":true,\"criteria\":\"cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*\",\"versionStartIncluding\":\"6.1.103\",\"versionEndExcluding\":\"6.1.105\",\"matchCriteriaId\":\"46ED0550-DB43-4D2A-8895-8F048C891A5F\"},{\"vulnerable\":true,\"criteria\":\"cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*\",\"versionStartIncluding\":\"6.6.44\",\"versionEndExcluding\":\"6.6.46\",\"matchCriteriaId\":\"83875505-0CFF-44AD-A3E1-BE3F8B866F43\"},{\"vulnerable\":true,\"criteria\":\"cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*\",\"versionStartIncluding\":\"6.10.3\",\"versionEndExcluding\":\"6.10.5\",\"matchCriteriaId\":\"ECD67C7B-CA88-4F2B-B232-AE23DDFBA7D2\"},{\"vulnerable\":true,\"criteria\":\"cpe:2.3:o:linux:linux_kernel:6.11:rc1:*:*:*:*:*:*\",\"matchCriteriaId\":\"8B3CE743-2126-47A3-8B7C-822B502CF119\"}]}]}],\"references\":[{\"url\":\"https://git.kernel.org/stable/c/541a900d245536d4809cb1aa322c3fcc2cdb58a6\",\"source\":\"416baaa9-dc9f-4396-8d5f-8c081fb06d67\",\"tags\":[\"Patch\"]},{\"url\":\"https://git.kernel.org/stable/c/668c6c4a7e9e9f081c06b70f30104fb7013437ed\",\"source\":\"416baaa9-dc9f-4396-8d5f-8c081fb06d67\",\"tags\":[\"Patch\"]},{\"url\":\"https://git.kernel.org/stable/c/6881e75237a84093d0986f56223db3724619f26e\",\"source\":\"416baaa9-dc9f-4396-8d5f-8c081fb06d67\",\"tags\":[\"Patch\"]},{\"url\":\"https://git.kernel.org/stable/c/7b3ec186ba93e333e9efe7254e7e31c1828e5d2d\",\"source\":\"416baaa9-dc9f-4396-8d5f-8c081fb06d67\",\"tags\":[\"Patch\"]},{\"url\":\"https://git.kernel.org/stable/c/7dd12f85f150010ef7518201c63fa7e395f5c3e9\",\"source\":\"416baaa9-dc9f-4396-8d5f-8c081fb06d67\",\"tags\":[\"Patch\"]},{\"url\":\"https://git.kernel.org/stable/c/b9d604933d5fd72dd37f24e1dc35f778297d745a\",\"source\":\"416baaa9-dc9f-4396-8d5f-8c081fb06d67\",\"tags\":[\"Patch\"]},{\"url\":\"https://git.kernel.org/stable/c/f54abf332a2bc0413cfa8bd6a8511f7aa99faea0\",\"source\":\"416baaa9-dc9f-4396-8d5f-8c081fb06d67\",\"tags\":[\"Patch\"]},{\"url\":\"https://git.kernel.org/stable/c/f91fb47ecacc178a83a77eeebd25cbaec18c01d6\",\"source\":\"416baaa9-dc9f-4396-8d5f-8c081fb06d67\",\"tags\":[\"Patch\"]}]}}",
      vulnrichment: {
         containers: "{\"adp\": [{\"title\": \"CISA ADP Vulnrichment\", \"metrics\": [{\"other\": {\"type\": \"ssvc\", \"content\": {\"id\": \"CVE-2024-44968\", \"role\": \"CISA Coordinator\", \"options\": [{\"Exploitation\": \"none\"}, {\"Automatable\": \"no\"}, {\"Technical Impact\": \"partial\"}], \"version\": \"2.0.3\", \"timestamp\": \"2024-09-10T17:39:24.484235Z\"}}}], \"providerMetadata\": {\"orgId\": \"134c704f-9b21-4f2e-91b3-4a467353bcc0\", \"shortName\": \"CISA-ADP\", \"dateUpdated\": \"2024-09-11T12:42:24.792Z\"}}], \"cna\": {\"title\": \"tick/broadcast: Move per CPU pointer access into the atomic section\", \"affected\": [{\"repo\": \"https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git\", \"vendor\": \"Linux\", \"product\": \"Linux\", \"versions\": [{\"status\": \"affected\", \"version\": \"dfe19aa91378972f10530635ad83b2d77f481044\", \"lessThan\": \"f54abf332a2bc0413cfa8bd6a8511f7aa99faea0\", \"versionType\": \"git\"}, {\"status\": \"affected\", \"version\": \"457a1c87d454455d671a3045cf0b56157be110a1\", \"lessThan\": \"f91fb47ecacc178a83a77eeebd25cbaec18c01d6\", \"versionType\": \"git\"}, {\"status\": \"affected\", \"version\": \"9ef7190228145f959d9bc0ddca40ecf76bb413b0\", \"lessThan\": \"668c6c4a7e9e9f081c06b70f30104fb7013437ed\", \"versionType\": \"git\"}, {\"status\": \"affected\", \"version\": \"d3b165c10473aa6fc6141bb5b1f6e5b50c1fb774\", \"lessThan\": \"541a900d245536d4809cb1aa322c3fcc2cdb58a6\", \"versionType\": \"git\"}, {\"status\": \"affected\", \"version\": \"408bfb6b0a7f22e971ce6b600aec448769e580a8\", \"lessThan\": \"7b3ec186ba93e333e9efe7254e7e31c1828e5d2d\", \"versionType\": \"git\"}, {\"status\": \"affected\", \"version\": \"3a58c590f6bd1d20eb1e76c5cea31c36cc032339\", \"lessThan\": \"b9d604933d5fd72dd37f24e1dc35f778297d745a\", \"versionType\": \"git\"}, {\"status\": \"affected\", \"version\": \"2cdab4b4bf77369961f706cdeb7d040db10c5217\", \"lessThan\": \"7dd12f85f150010ef7518201c63fa7e395f5c3e9\", \"versionType\": \"git\"}, {\"status\": \"affected\", \"version\": \"f7d43dd206e7e18c182f200e67a8db8c209907fa\", \"lessThan\": \"6881e75237a84093d0986f56223db3724619f26e\", \"versionType\": \"git\"}], \"programFiles\": [\"kernel/time/tick-broadcast.c\"], \"defaultStatus\": \"unaffected\"}, {\"repo\": \"https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git\", \"vendor\": \"Linux\", \"product\": \"Linux\", \"versions\": [{\"status\": \"affected\", \"version\": \"6.1.103\", \"lessThan\": \"6.1.105\", \"versionType\": \"semver\"}, {\"status\": \"affected\", \"version\": \"6.6.44\", \"lessThan\": \"6.6.46\", \"versionType\": \"semver\"}, {\"status\": \"affected\", \"version\": \"6.10.3\", \"lessThan\": \"6.10.5\", \"versionType\": \"semver\"}], \"programFiles\": [\"kernel/time/tick-broadcast.c\"], \"defaultStatus\": \"unaffected\"}], \"references\": [{\"url\": \"https://git.kernel.org/stable/c/f54abf332a2bc0413cfa8bd6a8511f7aa99faea0\"}, {\"url\": \"https://git.kernel.org/stable/c/f91fb47ecacc178a83a77eeebd25cbaec18c01d6\"}, {\"url\": \"https://git.kernel.org/stable/c/668c6c4a7e9e9f081c06b70f30104fb7013437ed\"}, {\"url\": \"https://git.kernel.org/stable/c/541a900d245536d4809cb1aa322c3fcc2cdb58a6\"}, {\"url\": \"https://git.kernel.org/stable/c/7b3ec186ba93e333e9efe7254e7e31c1828e5d2d\"}, {\"url\": \"https://git.kernel.org/stable/c/b9d604933d5fd72dd37f24e1dc35f778297d745a\"}, {\"url\": \"https://git.kernel.org/stable/c/7dd12f85f150010ef7518201c63fa7e395f5c3e9\"}, {\"url\": \"https://git.kernel.org/stable/c/6881e75237a84093d0986f56223db3724619f26e\"}], \"x_generator\": {\"engine\": \"bippy-5f407fcff5a0\"}, \"descriptions\": [{\"lang\": \"en\", \"value\": \"In the Linux kernel, the following vulnerability has been resolved:\\n\\ntick/broadcast: Move per CPU pointer access into the atomic section\\n\\nThe recent fix for making the take over of the broadcast timer more\\nreliable retrieves a per CPU pointer in preemptible context.\\n\\nThis went unnoticed as compilers hoist the access into the non-preemptible\\nregion where the pointer is actually used. But of course it's valid that\\nthe compiler keeps it at the place where the code puts it which rightfully\\ntriggers:\\n\\n  BUG: using smp_processor_id() in preemptible [00000000] code:\\n       caller is hotplug_cpu__broadcast_tick_pull+0x1c/0xc0\\n\\nMove it to the actual usage site which is in a non-preemptible region.\"}], \"providerMetadata\": {\"orgId\": \"416baaa9-dc9f-4396-8d5f-8c081fb06d67\", \"shortName\": \"Linux\", \"dateUpdated\": \"2024-12-19T09:19:19.039Z\"}}}",
         cveMetadata: "{\"cveId\": \"CVE-2024-44968\", \"state\": \"PUBLISHED\", \"dateUpdated\": \"2024-12-19T09:19:19.039Z\", \"dateReserved\": \"2024-08-21T05:34:56.667Z\", \"assignerOrgId\": \"416baaa9-dc9f-4396-8d5f-8c081fb06d67\", \"datePublished\": \"2024-09-04T18:56:45.456Z\", \"assignerShortName\": \"Linux\"}",
         dataType: "CVE_RECORD",
         dataVersion: "5.1",
      },
   },
}


Log in or create an account to share your comment.

Security Advisory comment format.

This schema specifies the format of a comment related to a security advisory.

UUIDv4 of the comment
UUIDv4 of the Vulnerability-Lookup instance
When the comment was created originally
When the comment was last updated
Title of the comment
Description of the comment
The identifier of the vulnerability (CVE ID, GHSA-ID, PYSEC ID, etc.).



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.