CVE-2024-35855 (GCVE-0-2024-35855)
Vulnerability from cvelistv5
Published
2024-05-17 14:47
Modified
2026-08-05 11:30
Summary
In the Linux kernel, the following vulnerability has been resolved: mlxsw: spectrum_acl_tcam: Fix possible use-after-free during activity update The rule activity update delayed work periodically traverses the list of configured rules and queries their activity from the device. As part of this task it accesses the entry pointed by 'ventry->entry', but this entry can be changed concurrently by the rehash delayed work, leading to a use-after-free [1]. Fix by closing the race and perform the activity query under the 'vregion->lock' mutex. [1] BUG: KASAN: slab-use-after-free in mlxsw_sp_acl_tcam_flower_rule_activity_get+0x121/0x140 Read of size 8 at addr ffff8881054ed808 by task kworker/0:18/181 CPU: 0 PID: 181 Comm: kworker/0:18 Not tainted 6.9.0-rc2-custom-00781-gd5ab772d32f7 #2 Hardware name: Mellanox Technologies Ltd. MSN3700/VMOD0005, BIOS 5.11 01/06/2019 Workqueue: mlxsw_core mlxsw_sp_acl_rule_activity_update_work Call Trace: <TASK> dump_stack_lvl+0xc6/0x120 print_report+0xce/0x670 kasan_report+0xd7/0x110 mlxsw_sp_acl_tcam_flower_rule_activity_get+0x121/0x140 mlxsw_sp_acl_rule_activity_update_work+0x219/0x400 process_one_work+0x8eb/0x19b0 worker_thread+0x6c9/0xf70 kthread+0x2c9/0x3b0 ret_from_fork+0x4d/0x80 ret_from_fork_asm+0x1a/0x30 </TASK> Allocated by task 1039: kasan_save_stack+0x33/0x60 kasan_save_track+0x14/0x30 __kasan_kmalloc+0x8f/0xa0 __kmalloc+0x19c/0x360 mlxsw_sp_acl_tcam_entry_create+0x7b/0x1f0 mlxsw_sp_acl_tcam_vchunk_migrate_all+0x30d/0xb50 mlxsw_sp_acl_tcam_vregion_rehash_work+0x157/0x1300 process_one_work+0x8eb/0x19b0 worker_thread+0x6c9/0xf70 kthread+0x2c9/0x3b0 ret_from_fork+0x4d/0x80 ret_from_fork_asm+0x1a/0x30 Freed by task 1039: kasan_save_stack+0x33/0x60 kasan_save_track+0x14/0x30 kasan_save_free_info+0x3b/0x60 poison_slab_object+0x102/0x170 __kasan_slab_free+0x14/0x30 kfree+0xc1/0x290 mlxsw_sp_acl_tcam_vchunk_migrate_all+0x3d7/0xb50 mlxsw_sp_acl_tcam_vregion_rehash_work+0x157/0x1300 process_one_work+0x8eb/0x19b0 worker_thread+0x6c9/0xf70 kthread+0x2c9/0x3b0 ret_from_fork+0x4d/0x80 ret_from_fork_asm+0x1a/0x30
Impacted products
Vendor Product Version
Linux Linux Version: 2bffc5322fd8679e879cd6370881ee50cf141ada
Version: 2bffc5322fd8679e879cd6370881ee50cf141ada
Version: 2bffc5322fd8679e879cd6370881ee50cf141ada
Version: 2bffc5322fd8679e879cd6370881ee50cf141ada
Version: 2bffc5322fd8679e879cd6370881ee50cf141ada
Version: 2bffc5322fd8679e879cd6370881ee50cf141ada
Version: 2bffc5322fd8679e879cd6370881ee50cf141ada
Create a notification for this product.
Show details on NVD website


{
  "containers": {
    "adp": [
      {
        "metrics": [
          {
            "other": {
              "content": {
                "id": "CVE-2024-35855",
                "options": [
                  {
                    "Exploitation": "none"
                  },
                  {
                    "Automatable": "no"
                  },
                  {
                    "Technical Impact": "partial"
                  }
                ],
                "role": "CISA Coordinator",
                "timestamp": "2024-05-17T16:58:00.643012Z",
                "version": "2.0.3"
              },
              "type": "ssvc"
            }
          }
        ],
        "providerMetadata": {
          "dateUpdated": "2024-06-04T17:33:37.309Z",
          "orgId": "134c704f-9b21-4f2e-91b3-4a467353bcc0",
          "shortName": "CISA-ADP"
        },
        "title": "CISA ADP Vulnrichment"
      },
      {
        "providerMetadata": {
          "dateUpdated": "2024-08-02T03:21:48.376Z",
          "orgId": "af854a3a-2127-422b-91ae-364da2661108",
          "shortName": "CVE"
        },
        "references": [
          {
            "tags": [
              "x_transferred"
            ],
            "url": "https://git.kernel.org/stable/c/1b73f6e4ea770410a937a8db98f77e52594d23a0"
          },
          {
            "tags": [
              "x_transferred"
            ],
            "url": "https://git.kernel.org/stable/c/e24d2487424779c02760ff50cd9021b8676e19ef"
          },
          {
            "tags": [
              "x_transferred"
            ],
            "url": "https://git.kernel.org/stable/c/c17976b42d546ee118ca300db559630ee96fb758"
          },
          {
            "tags": [
              "x_transferred"
            ],
            "url": "https://git.kernel.org/stable/c/b996e8699da810e4c915841d6aaef761007f933a"
          },
          {
            "tags": [
              "x_transferred"
            ],
            "url": "https://git.kernel.org/stable/c/feabdac2057e863d0e140a2adf3d232eb4882db4"
          },
          {
            "tags": [
              "x_transferred"
            ],
            "url": "https://git.kernel.org/stable/c/b183b915beef818a25e3154d719ca015a1ae0770"
          },
          {
            "tags": [
              "x_transferred"
            ],
            "url": "https://git.kernel.org/stable/c/79b5b4b18bc85b19d3a518483f9abbbe6d7b3ba4"
          },
          {
            "tags": [
              "x_transferred"
            ],
            "url": "https://lists.debian.org/debian-lts-announce/2024/06/msg00017.html"
          }
        ],
        "title": "CVE Program Container"
      }
    ],
    "cna": {
      "affected": [
        {
          "defaultStatus": "unaffected",
          "product": "Linux",
          "programFiles": [
            "drivers/net/ethernet/mellanox/mlxsw/spectrum_acl_tcam.c"
          ],
          "repo": "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git",
          "vendor": "Linux",
          "versions": [
            {
              "lessThan": "1b73f6e4ea770410a937a8db98f77e52594d23a0",
              "status": "affected",
              "version": "2bffc5322fd8679e879cd6370881ee50cf141ada",
              "versionType": "git"
            },
            {
              "lessThan": "e24d2487424779c02760ff50cd9021b8676e19ef",
              "status": "affected",
              "version": "2bffc5322fd8679e879cd6370881ee50cf141ada",
              "versionType": "git"
            },
            {
              "lessThan": "c17976b42d546ee118ca300db559630ee96fb758",
              "status": "affected",
              "version": "2bffc5322fd8679e879cd6370881ee50cf141ada",
              "versionType": "git"
            },
            {
              "lessThan": "b996e8699da810e4c915841d6aaef761007f933a",
              "status": "affected",
              "version": "2bffc5322fd8679e879cd6370881ee50cf141ada",
              "versionType": "git"
            },
            {
              "lessThan": "feabdac2057e863d0e140a2adf3d232eb4882db4",
              "status": "affected",
              "version": "2bffc5322fd8679e879cd6370881ee50cf141ada",
              "versionType": "git"
            },
            {
              "lessThan": "b183b915beef818a25e3154d719ca015a1ae0770",
              "status": "affected",
              "version": "2bffc5322fd8679e879cd6370881ee50cf141ada",
              "versionType": "git"
            },
            {
              "lessThan": "79b5b4b18bc85b19d3a518483f9abbbe6d7b3ba4",
              "status": "affected",
              "version": "2bffc5322fd8679e879cd6370881ee50cf141ada",
              "versionType": "git"
            }
          ]
        },
        {
          "defaultStatus": "affected",
          "product": "Linux",
          "programFiles": [
            "drivers/net/ethernet/mellanox/mlxsw/spectrum_acl_tcam.c"
          ],
          "repo": "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git",
          "vendor": "Linux",
          "versions": [
            {
              "status": "affected",
              "version": "5.1"
            },
            {
              "lessThan": "5.1",
              "status": "unaffected",
              "version": "0",
              "versionType": "semver"
            },
            {
              "lessThanOrEqual": "5.4.*",
              "status": "unaffected",
              "version": "5.4.275",
              "versionType": "semver"
            },
            {
              "lessThanOrEqual": "5.10.*",
              "status": "unaffected",
              "version": "5.10.216",
              "versionType": "semver"
            },
            {
              "lessThanOrEqual": "5.15.*",
              "status": "unaffected",
              "version": "5.15.158",
              "versionType": "semver"
            },
            {
              "lessThanOrEqual": "6.1.*",
              "status": "unaffected",
              "version": "6.1.90",
              "versionType": "semver"
            },
            {
              "lessThanOrEqual": "6.6.*",
              "status": "unaffected",
              "version": "6.6.30",
              "versionType": "semver"
            },
            {
              "lessThanOrEqual": "6.8.*",
              "status": "unaffected",
              "version": "6.8.9",
              "versionType": "semver"
            },
            {
              "lessThanOrEqual": "*",
              "status": "unaffected",
              "version": "6.9",
              "versionType": "original_commit_for_fix"
            }
          ]
        }
      ],
      "cpeApplicability": [
        {
          "nodes": [
            {
              "cpeMatch": [
                {
                  "criteria": "cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*",
                  "versionEndExcluding": "5.4.275",
                  "versionStartIncluding": "5.1",
                  "vulnerable": true
                },
                {
                  "criteria": "cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*",
                  "versionEndExcluding": "5.10.216",
                  "versionStartIncluding": "5.1",
                  "vulnerable": true
                },
                {
                  "criteria": "cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*",
                  "versionEndExcluding": "5.15.158",
                  "versionStartIncluding": "5.1",
                  "vulnerable": true
                },
                {
                  "criteria": "cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*",
                  "versionEndExcluding": "6.1.90",
                  "versionStartIncluding": "5.1",
                  "vulnerable": true
                },
                {
                  "criteria": "cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*",
                  "versionEndExcluding": "6.6.30",
                  "versionStartIncluding": "5.1",
                  "vulnerable": true
                },
                {
                  "criteria": "cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*",
                  "versionEndExcluding": "6.8.9",
                  "versionStartIncluding": "5.1",
                  "vulnerable": true
                },
                {
                  "criteria": "cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*",
                  "versionEndExcluding": "6.9",
                  "versionStartIncluding": "5.1",
                  "vulnerable": true
                }
              ],
              "negate": false,
              "operator": "OR"
            }
          ]
        }
      ],
      "descriptions": [
        {
          "lang": "en",
          "value": "In the Linux kernel, the following vulnerability has been resolved:\n\nmlxsw: spectrum_acl_tcam: Fix possible use-after-free during activity update\n\nThe rule activity update delayed work periodically traverses the list of\nconfigured rules and queries their activity from the device.\n\nAs part of this task it accesses the entry pointed by \u0027ventry-\u003eentry\u0027,\nbut this entry can be changed concurrently by the rehash delayed work,\nleading to a use-after-free [1].\n\nFix by closing the race and perform the activity query under the\n\u0027vregion-\u003elock\u0027 mutex.\n\n[1]\nBUG: KASAN: slab-use-after-free in mlxsw_sp_acl_tcam_flower_rule_activity_get+0x121/0x140\nRead of size 8 at addr ffff8881054ed808 by task kworker/0:18/181\n\nCPU: 0 PID: 181 Comm: kworker/0:18 Not tainted 6.9.0-rc2-custom-00781-gd5ab772d32f7 #2\nHardware name: Mellanox Technologies Ltd. MSN3700/VMOD0005, BIOS 5.11 01/06/2019\nWorkqueue: mlxsw_core mlxsw_sp_acl_rule_activity_update_work\nCall Trace:\n \u003cTASK\u003e\n dump_stack_lvl+0xc6/0x120\n print_report+0xce/0x670\n kasan_report+0xd7/0x110\n mlxsw_sp_acl_tcam_flower_rule_activity_get+0x121/0x140\n mlxsw_sp_acl_rule_activity_update_work+0x219/0x400\n process_one_work+0x8eb/0x19b0\n worker_thread+0x6c9/0xf70\n kthread+0x2c9/0x3b0\n ret_from_fork+0x4d/0x80\n ret_from_fork_asm+0x1a/0x30\n \u003c/TASK\u003e\n\nAllocated by task 1039:\n kasan_save_stack+0x33/0x60\n kasan_save_track+0x14/0x30\n __kasan_kmalloc+0x8f/0xa0\n __kmalloc+0x19c/0x360\n mlxsw_sp_acl_tcam_entry_create+0x7b/0x1f0\n mlxsw_sp_acl_tcam_vchunk_migrate_all+0x30d/0xb50\n mlxsw_sp_acl_tcam_vregion_rehash_work+0x157/0x1300\n process_one_work+0x8eb/0x19b0\n worker_thread+0x6c9/0xf70\n kthread+0x2c9/0x3b0\n ret_from_fork+0x4d/0x80\n ret_from_fork_asm+0x1a/0x30\n\nFreed by task 1039:\n kasan_save_stack+0x33/0x60\n kasan_save_track+0x14/0x30\n kasan_save_free_info+0x3b/0x60\n poison_slab_object+0x102/0x170\n __kasan_slab_free+0x14/0x30\n kfree+0xc1/0x290\n mlxsw_sp_acl_tcam_vchunk_migrate_all+0x3d7/0xb50\n mlxsw_sp_acl_tcam_vregion_rehash_work+0x157/0x1300\n process_one_work+0x8eb/0x19b0\n worker_thread+0x6c9/0xf70\n kthread+0x2c9/0x3b0\n ret_from_fork+0x4d/0x80\n ret_from_fork_asm+0x1a/0x30"
        }
      ],
      "metrics": [
        {
          "cvssV3_1": {
            "baseScore": 7.8,
            "baseSeverity": "HIGH",
            "vectorString": "CVSS:3.1/AV:L/AC:L/PR:L/UI:N/S:U/C:H/I:H/A:H",
            "version": "3.1"
          },
          "scenarios": [
            {
              "lang": "en",
              "value": "AV:L - The vulnerable state is set up by installing tc flower filters on an mlxsw switch port via rtnetlink (RTM_NEWTFILTER), a local syscall interface; remote traffic only toggles the hardware activity bit and cannot influence the `ventry-\u003eentry` lifetime. No network-facing parser or protocol handler is on the path.\nAC:L - The attacker controls both sides of the race \u2014 rule add/delete churn resets the rehash context and keeps `mlxsw_sp_acl_tcam_ventry_migrate()` continuously freeing entries (credit budget of 100 forces immediate reschedule), while the unlocked activity walker re-scans every rule once per second with a slow per-rule firmware query, giving a wide window that repeats indefinitely. The bug reproduced in real deployments, and the rehash interval is additionally attacker-tunable via the `acl_region_rehash_interval` devlink param.\nPR:L - Installing offloaded flower rules requires CAP_NET_ADMIN in the netns owning the mlxsw netdev, which per kernel CNA convention is scored as low privilege; mlxsw ports are routinely delegated into network namespaces in containerized switch OSes, where a non-root user holding CAP_NET_ADMIN in that namespace can install the filters.\nUI:N - The attacker triggers everything themselves by configuring tc flower rules; the two racing kernel delayed works then fire automatically on their own timers with no victim action required.\nS:U - The use-after-free corrupts kernel heap memory and is exploited within the kernel\u0027s own security authority; no VM, IOMMU, or sandbox boundary is crossed.\nC:H - A use-after-free on a general kmalloc-cache object that is pointer-chased (`entry-\u003echunk-\u003eregion-\u003epriv`, `entry-\u003eact_block`) lets an attacker who reclaims the slab redirect reads to arbitrary kernel addresses, yielding an arbitrary-read primitive and disclosure of kernel memory and pointers.\nI:H - The freed object feeds `mlxsw_afa_block_activity_get()`, which performs an indirect call via `block-\u003eafa-\u003eops-\u003ekvdl_set_activity_get` \u2014 three pointer levels all sourced from the freed allocation \u2014 so heap spraying the reclaimed slab gives control-flow hijack and hence arbitrary kernel modification.\nA:H - Even unweaponized, the use-after-free dereferences stale pointers from a kernel workqueue context, producing an oops/panic (as captured in the KASAN report) and taking down the switch\u0027s control plane."
            }
          ]
        }
      ],
      "providerMetadata": {
        "dateUpdated": "2026-08-05T11:30:19.765Z",
        "orgId": "416baaa9-dc9f-4396-8d5f-8c081fb06d67",
        "shortName": "Linux"
      },
      "references": [
        {
          "url": "https://git.kernel.org/stable/c/1b73f6e4ea770410a937a8db98f77e52594d23a0"
        },
        {
          "url": "https://git.kernel.org/stable/c/e24d2487424779c02760ff50cd9021b8676e19ef"
        },
        {
          "url": "https://git.kernel.org/stable/c/c17976b42d546ee118ca300db559630ee96fb758"
        },
        {
          "url": "https://git.kernel.org/stable/c/b996e8699da810e4c915841d6aaef761007f933a"
        },
        {
          "url": "https://git.kernel.org/stable/c/feabdac2057e863d0e140a2adf3d232eb4882db4"
        },
        {
          "url": "https://git.kernel.org/stable/c/b183b915beef818a25e3154d719ca015a1ae0770"
        },
        {
          "url": "https://git.kernel.org/stable/c/79b5b4b18bc85b19d3a518483f9abbbe6d7b3ba4"
        }
      ],
      "title": "mlxsw: spectrum_acl_tcam: Fix possible use-after-free during activity update",
      "x_generator": {
        "engine": "bippy-1.2.0"
      }
    }
  },
  "cveMetadata": {
    "assignerOrgId": "416baaa9-dc9f-4396-8d5f-8c081fb06d67",
    "assignerShortName": "Linux",
    "cveId": "CVE-2024-35855",
    "datePublished": "2024-05-17T14:47:31.436Z",
    "dateReserved": "2024-05-17T13:50:33.106Z",
    "dateUpdated": "2026-08-05T11:30:19.765Z",
    "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/1b73f6e4ea770410a937a8db98f77e52594d23a0\", \"tags\": [\"x_transferred\"]}, {\"url\": \"https://git.kernel.org/stable/c/e24d2487424779c02760ff50cd9021b8676e19ef\", \"tags\": [\"x_transferred\"]}, {\"url\": \"https://git.kernel.org/stable/c/c17976b42d546ee118ca300db559630ee96fb758\", \"tags\": [\"x_transferred\"]}, {\"url\": \"https://git.kernel.org/stable/c/b996e8699da810e4c915841d6aaef761007f933a\", \"tags\": [\"x_transferred\"]}, {\"url\": \"https://git.kernel.org/stable/c/feabdac2057e863d0e140a2adf3d232eb4882db4\", \"tags\": [\"x_transferred\"]}, {\"url\": \"https://git.kernel.org/stable/c/b183b915beef818a25e3154d719ca015a1ae0770\", \"tags\": [\"x_transferred\"]}, {\"url\": \"https://git.kernel.org/stable/c/79b5b4b18bc85b19d3a518483f9abbbe6d7b3ba4\", \"tags\": [\"x_transferred\"]}, {\"url\": \"https://lists.debian.org/debian-lts-announce/2024/06/msg00017.html\", \"tags\": [\"x_transferred\"]}], \"providerMetadata\": {\"orgId\": \"af854a3a-2127-422b-91ae-364da2661108\", \"shortName\": \"CVE\", \"dateUpdated\": \"2024-08-02T03:21:48.376Z\"}}, {\"metrics\": [{\"other\": {\"type\": \"ssvc\", \"content\": {\"id\": \"CVE-2024-35855\", \"role\": \"CISA Coordinator\", \"options\": [{\"Exploitation\": \"none\"}, {\"Automatable\": \"no\"}, {\"Technical Impact\": \"partial\"}], \"version\": \"2.0.3\", \"timestamp\": \"2024-05-17T16:58:00.643012Z\"}}}], \"providerMetadata\": {\"orgId\": \"134c704f-9b21-4f2e-91b3-4a467353bcc0\", \"shortName\": \"CISA-ADP\", \"dateUpdated\": \"2024-05-23T19:01:24.571Z\"}, \"title\": \"CISA ADP Vulnrichment\"}], \"cna\": {\"title\": \"mlxsw: spectrum_acl_tcam: Fix possible use-after-free during activity update\", \"metrics\": [{\"cvssV3_1\": {\"version\": \"3.1\", \"baseScore\": 7.8, \"baseSeverity\": \"HIGH\", \"vectorString\": \"CVSS:3.1/AV:L/AC:L/PR:L/UI:N/S:U/C:H/I:H/A:H\"}, \"scenarios\": [{\"lang\": \"en\", \"value\": \"AV:L - The vulnerable state is set up by installing tc flower filters on an mlxsw switch port via rtnetlink (RTM_NEWTFILTER), a local syscall interface; remote traffic only toggles the hardware activity bit and cannot influence the `ventry-\u003eentry` lifetime. No network-facing parser or protocol handler is on the path.\\nAC:L - The attacker controls both sides of the race \\u2014 rule add/delete churn resets the rehash context and keeps `mlxsw_sp_acl_tcam_ventry_migrate()` continuously freeing entries (credit budget of 100 forces immediate reschedule), while the unlocked activity walker re-scans every rule once per second with a slow per-rule firmware query, giving a wide window that repeats indefinitely. The bug reproduced in real deployments, and the rehash interval is additionally attacker-tunable via the `acl_region_rehash_interval` devlink param.\\nPR:L - Installing offloaded flower rules requires CAP_NET_ADMIN in the netns owning the mlxsw netdev, which per kernel CNA convention is scored as low privilege; mlxsw ports are routinely delegated into network namespaces in containerized switch OSes, where a non-root user holding CAP_NET_ADMIN in that namespace can install the filters.\\nUI:N - The attacker triggers everything themselves by configuring tc flower rules; the two racing kernel delayed works then fire automatically on their own timers with no victim action required.\\nS:U - The use-after-free corrupts kernel heap memory and is exploited within the kernel\u0027s own security authority; no VM, IOMMU, or sandbox boundary is crossed.\\nC:H - A use-after-free on a general kmalloc-cache object that is pointer-chased (`entry-\u003echunk-\u003eregion-\u003epriv`, `entry-\u003eact_block`) lets an attacker who reclaims the slab redirect reads to arbitrary kernel addresses, yielding an arbitrary-read primitive and disclosure of kernel memory and pointers.\\nI:H - The freed object feeds `mlxsw_afa_block_activity_get()`, which performs an indirect call via `block-\u003eafa-\u003eops-\u003ekvdl_set_activity_get` \\u2014 three pointer levels all sourced from the freed allocation \\u2014 so heap spraying the reclaimed slab gives control-flow hijack and hence arbitrary kernel modification.\\nA:H - Even unweaponized, the use-after-free dereferences stale pointers from a kernel workqueue context, producing an oops/panic (as captured in the KASAN report) and taking down the switch\u0027s control plane.\"}]}], \"affected\": [{\"repo\": \"https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git\", \"vendor\": \"Linux\", \"product\": \"Linux\", \"versions\": [{\"status\": \"affected\", \"version\": \"2bffc5322fd8679e879cd6370881ee50cf141ada\", \"lessThan\": \"1b73f6e4ea770410a937a8db98f77e52594d23a0\", \"versionType\": \"git\"}, {\"status\": \"affected\", \"version\": \"2bffc5322fd8679e879cd6370881ee50cf141ada\", \"lessThan\": \"e24d2487424779c02760ff50cd9021b8676e19ef\", \"versionType\": \"git\"}, {\"status\": \"affected\", \"version\": \"2bffc5322fd8679e879cd6370881ee50cf141ada\", \"lessThan\": \"c17976b42d546ee118ca300db559630ee96fb758\", \"versionType\": \"git\"}, {\"status\": \"affected\", \"version\": \"2bffc5322fd8679e879cd6370881ee50cf141ada\", \"lessThan\": \"b996e8699da810e4c915841d6aaef761007f933a\", \"versionType\": \"git\"}, {\"status\": \"affected\", \"version\": \"2bffc5322fd8679e879cd6370881ee50cf141ada\", \"lessThan\": \"feabdac2057e863d0e140a2adf3d232eb4882db4\", \"versionType\": \"git\"}, {\"status\": \"affected\", \"version\": \"2bffc5322fd8679e879cd6370881ee50cf141ada\", \"lessThan\": \"b183b915beef818a25e3154d719ca015a1ae0770\", \"versionType\": \"git\"}, {\"status\": \"affected\", \"version\": \"2bffc5322fd8679e879cd6370881ee50cf141ada\", \"lessThan\": \"79b5b4b18bc85b19d3a518483f9abbbe6d7b3ba4\", \"versionType\": \"git\"}], \"programFiles\": [\"drivers/net/ethernet/mellanox/mlxsw/spectrum_acl_tcam.c\"], \"defaultStatus\": \"unaffected\"}, {\"repo\": \"https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git\", \"vendor\": \"Linux\", \"product\": \"Linux\", \"versions\": [{\"status\": \"affected\", \"version\": \"5.1\"}, {\"status\": \"unaffected\", \"version\": \"0\", \"lessThan\": \"5.1\", \"versionType\": \"semver\"}, {\"status\": \"unaffected\", \"version\": \"5.4.275\", \"versionType\": \"semver\", \"lessThanOrEqual\": \"5.4.*\"}, {\"status\": \"unaffected\", \"version\": \"5.10.216\", \"versionType\": \"semver\", \"lessThanOrEqual\": \"5.10.*\"}, {\"status\": \"unaffected\", \"version\": \"5.15.158\", \"versionType\": \"semver\", \"lessThanOrEqual\": \"5.15.*\"}, {\"status\": \"unaffected\", \"version\": \"6.1.90\", \"versionType\": \"semver\", \"lessThanOrEqual\": \"6.1.*\"}, {\"status\": \"unaffected\", \"version\": \"6.6.30\", \"versionType\": \"semver\", \"lessThanOrEqual\": \"6.6.*\"}, {\"status\": \"unaffected\", \"version\": \"6.8.9\", \"versionType\": \"semver\", \"lessThanOrEqual\": \"6.8.*\"}, {\"status\": \"unaffected\", \"version\": \"6.9\", \"versionType\": \"original_commit_for_fix\", \"lessThanOrEqual\": \"*\"}], \"programFiles\": [\"drivers/net/ethernet/mellanox/mlxsw/spectrum_acl_tcam.c\"], \"defaultStatus\": \"affected\"}], \"references\": [{\"url\": \"https://git.kernel.org/stable/c/1b73f6e4ea770410a937a8db98f77e52594d23a0\"}, {\"url\": \"https://git.kernel.org/stable/c/e24d2487424779c02760ff50cd9021b8676e19ef\"}, {\"url\": \"https://git.kernel.org/stable/c/c17976b42d546ee118ca300db559630ee96fb758\"}, {\"url\": \"https://git.kernel.org/stable/c/b996e8699da810e4c915841d6aaef761007f933a\"}, {\"url\": \"https://git.kernel.org/stable/c/feabdac2057e863d0e140a2adf3d232eb4882db4\"}, {\"url\": \"https://git.kernel.org/stable/c/b183b915beef818a25e3154d719ca015a1ae0770\"}, {\"url\": \"https://git.kernel.org/stable/c/79b5b4b18bc85b19d3a518483f9abbbe6d7b3ba4\"}], \"x_generator\": {\"engine\": \"bippy-1.2.0\"}, \"descriptions\": [{\"lang\": \"en\", \"value\": \"In the Linux kernel, the following vulnerability has been resolved:\\n\\nmlxsw: spectrum_acl_tcam: Fix possible use-after-free during activity update\\n\\nThe rule activity update delayed work periodically traverses the list of\\nconfigured rules and queries their activity from the device.\\n\\nAs part of this task it accesses the entry pointed by \u0027ventry-\u003eentry\u0027,\\nbut this entry can be changed concurrently by the rehash delayed work,\\nleading to a use-after-free [1].\\n\\nFix by closing the race and perform the activity query under the\\n\u0027vregion-\u003elock\u0027 mutex.\\n\\n[1]\\nBUG: KASAN: slab-use-after-free in mlxsw_sp_acl_tcam_flower_rule_activity_get+0x121/0x140\\nRead of size 8 at addr ffff8881054ed808 by task kworker/0:18/181\\n\\nCPU: 0 PID: 181 Comm: kworker/0:18 Not tainted 6.9.0-rc2-custom-00781-gd5ab772d32f7 #2\\nHardware name: Mellanox Technologies Ltd. MSN3700/VMOD0005, BIOS 5.11 01/06/2019\\nWorkqueue: mlxsw_core mlxsw_sp_acl_rule_activity_update_work\\nCall Trace:\\n \u003cTASK\u003e\\n dump_stack_lvl+0xc6/0x120\\n print_report+0xce/0x670\\n kasan_report+0xd7/0x110\\n mlxsw_sp_acl_tcam_flower_rule_activity_get+0x121/0x140\\n mlxsw_sp_acl_rule_activity_update_work+0x219/0x400\\n process_one_work+0x8eb/0x19b0\\n worker_thread+0x6c9/0xf70\\n kthread+0x2c9/0x3b0\\n ret_from_fork+0x4d/0x80\\n ret_from_fork_asm+0x1a/0x30\\n \u003c/TASK\u003e\\n\\nAllocated by task 1039:\\n kasan_save_stack+0x33/0x60\\n kasan_save_track+0x14/0x30\\n __kasan_kmalloc+0x8f/0xa0\\n __kmalloc+0x19c/0x360\\n mlxsw_sp_acl_tcam_entry_create+0x7b/0x1f0\\n mlxsw_sp_acl_tcam_vchunk_migrate_all+0x30d/0xb50\\n mlxsw_sp_acl_tcam_vregion_rehash_work+0x157/0x1300\\n process_one_work+0x8eb/0x19b0\\n worker_thread+0x6c9/0xf70\\n kthread+0x2c9/0x3b0\\n ret_from_fork+0x4d/0x80\\n ret_from_fork_asm+0x1a/0x30\\n\\nFreed by task 1039:\\n kasan_save_stack+0x33/0x60\\n kasan_save_track+0x14/0x30\\n kasan_save_free_info+0x3b/0x60\\n poison_slab_object+0x102/0x170\\n __kasan_slab_free+0x14/0x30\\n kfree+0xc1/0x290\\n mlxsw_sp_acl_tcam_vchunk_migrate_all+0x3d7/0xb50\\n mlxsw_sp_acl_tcam_vregion_rehash_work+0x157/0x1300\\n process_one_work+0x8eb/0x19b0\\n worker_thread+0x6c9/0xf70\\n kthread+0x2c9/0x3b0\\n ret_from_fork+0x4d/0x80\\n ret_from_fork_asm+0x1a/0x30\"}], \"cpeApplicability\": [{\"nodes\": [{\"negate\": false, \"cpeMatch\": [{\"criteria\": \"cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*\", \"vulnerable\": true, \"versionEndExcluding\": \"5.4.275\", \"versionStartIncluding\": \"5.1\"}, {\"criteria\": \"cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*\", \"vulnerable\": true, \"versionEndExcluding\": \"5.10.216\", \"versionStartIncluding\": \"5.1\"}, {\"criteria\": \"cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*\", \"vulnerable\": true, \"versionEndExcluding\": \"5.15.158\", \"versionStartIncluding\": \"5.1\"}, {\"criteria\": \"cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*\", \"vulnerable\": true, \"versionEndExcluding\": \"6.1.90\", \"versionStartIncluding\": \"5.1\"}, {\"criteria\": \"cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*\", \"vulnerable\": true, \"versionEndExcluding\": \"6.6.30\", \"versionStartIncluding\": \"5.1\"}, {\"criteria\": \"cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*\", \"vulnerable\": true, \"versionEndExcluding\": \"6.8.9\", \"versionStartIncluding\": \"5.1\"}, {\"criteria\": \"cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*\", \"vulnerable\": true, \"versionEndExcluding\": \"6.9\", \"versionStartIncluding\": \"5.1\"}], \"operator\": \"OR\"}]}], \"providerMetadata\": {\"orgId\": \"416baaa9-dc9f-4396-8d5f-8c081fb06d67\", \"shortName\": \"Linux\", \"dateUpdated\": \"2026-08-05T11:30:19.765Z\"}}}",
      "cveMetadata": "{\"cveId\": \"CVE-2024-35855\", \"state\": \"PUBLISHED\", \"dateUpdated\": \"2026-08-05T11:30:19.765Z\", \"dateReserved\": \"2024-05-17T13:50:33.106Z\", \"assignerOrgId\": \"416baaa9-dc9f-4396-8d5f-8c081fb06d67\", \"datePublished\": \"2024-05-17T14:47:31.436Z\", \"assignerShortName\": \"Linux\"}",
      "dataType": "CVE_RECORD",
      "dataVersion": "5.2"
    }
  }
}


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…