cbcvebase.
CVE-2022-2588
published 2024-01-08

CVE-2022-2588: It was discovered that the cls_route filter implementation in the Linux kernel would not remove an old filter from the hashtable before freeing it if its…

PriorityP343high7.8CVSS 3.1
AVLACLPRLUINSUCHIHAH
EPSS
5.87%
92.4th percentile
It was discovered that the cls_route filter implementation in the Linux kernel would not remove an old filter from the hashtable before freeing it if its handle had the value 0.

Affected

29 ranges· showing 25
VendorProductVersion rangeFixed in
canonicalubuntu_linux
canonicalubuntu_linux
canonicalubuntu_linux
canonicalubuntu_linux
canonicalubuntu_linux
debianlinux< linux 5.18.16-1 (bookworm)linux 5.18.16-1 (bookworm)
linuxlinux_kernel< 4.9.3264.9.326
linuxlinux_kernel>= 0 < 5.10.136-15.10.136-1
linuxlinux_kernel>= 0 < 5.18.16-15.18.16-1
linuxlinux_kernel>= 0 < 5.18.16-15.18.16-1
linuxlinux_kernel>= 0 < 5.18.16-15.18.16-1
linuxlinux_kernel>= 0 < 4.15.0-191.2024.15.0-191.202
linuxlinux_kernel>= 0 < 5.4.0-124.1405.4.0-124.140
linuxlinux_kernel>= 0 < 5.15.0-46.495.15.0-46.49
linuxlinux_kernel>= 0 < 4.4.0-231.2654.4.0-231.265
linuxlinux_kernel>= 0 < 4.15.0-191.2024.15.0-191.202
linuxlinux_kernel>= 0 < 5.4.0-124.1405.4.0-124.140
linuxlinux_kernel>= 0 < 5.15.0-46.495.15.0-46.49
linuxlinux_kernel>= 4.10 < 4.14.2914.14.291
linuxlinux_kernel>= 4.15 < 4.19.2564.19.256
linuxlinux_kernel>= 4.20 < 5.4.2115.4.211
linuxlinux_kernel>= 5.11 < 5.15.615.15.61
linuxlinux_kernel>= 5.16 < 5.18.185.18.18
linuxlinux_kernel>= 5.19 < 5.19.25.19.2
linuxlinux_kernel>= 5.5 < 5.10.1375.10.137

Detection & IOCsextracted from sources · hover to see the quote

  • CVE-2022-2588 exploitation requires the CAP_NET_ADMIN capability; monitor for processes or containers with this capability attempting to manipulate cls_route filters, especially in privileged containers.
  • The vulnerable code path is route4_change in net/sched/cls_route.c; monitor kernel audit logs or eBPF tracepoints on this function for unexpected double-free or use-after-free patterns.
  • The vulnerability is triggered when a cls_route filter handle has the value 0, causing the old filter not to be removed from the hashtable before being freed; monitor for network scheduler (tc/cls_route) operations involving handle value 0.
  • CVE-2022-2588 is exploited as part of the DirtyCred technique, which swaps unprivileged kernel credentials with privileged ones; monitor for unexpected privilege escalation following network scheduler operations.
  • ·Exploitation requires a local user with CAP_NET_ADMIN; attack surface is reduced if this capability is dropped from containers and non-root workloads are enforced.
  • ·Red Hat notes no mitigation is available that meets their criteria for ease of use, deployment, and stability for this CVE.
  • ·Docker default seccomp profiles can reduce attack surface for related DirtyCred-exploited CVEs (e.g., CVE-2021-4154 blocks unshare/fsconfig), but no specific seccomp block is documented for CVE-2022-2588 in the sources.

CVSS provenance

nvdv3.17.8HIGHCVSS:3.1/AV:L/AC:L/PR:L/UI:N/S:U/C:H/I:H/A:H
osv7.8HIGH
vendor_msrc7.8HIGH
vendor_ubuntu7.8HIGH
vendor_debian5.3MEDIUM
vendor_redhat5.3MEDIUM
Stop checking back — get the weekly exploitation signal.

Every Monday: what got weaponized or added to CISA KEV in the last seven days — each CVE cross-linked to its PoC, Nuclei template, and detection rule. Free, one email a week, unsubscribe in one click.