
CVE catalog
CVE-2022-50396
linux: CVE-2022-50396
- Severity
- Medium · CVSS 5.5
CVSS:3.1/AV:L/AC:L/PR:L/UI:N/S:U/C:N/I:N/A:H - Published
- Source
- [NVD] · [CVE record]
- EPSS
- 0.17% · Oct 25, 2026
In the Linux kernel, the following vulnerability has been resolved: net: sched: fix memory leak in tcindex_set_parms Syzkaller reports a memory leak as follows: ==================================== BUG: memory leak unreferenced object 0xffff88810c287f00 (size 256): comm "syz-executor105", pid 3600, jiffies 4294943292 (age 12.990s) 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: [<ffffffff814cf9f0>] kmalloc_trace+0x20/0x90 mm/slab_common.c:1046 [<ffffffff839c9e07>] kmalloc include/linux/slab.h:576 [inline] [<ffffffff839c9e07>] kmalloc_array include/linux/slab.h:627 [inline] [<ffffffff839c9e07>] kcalloc include/linux/slab.h:659 [inline] [<ffffffff839c9e07>] tcf_exts_init include/net/pkt_cls.h:250 [inline] [<ffffffff839c9e07>] tcindex_set_parms+0xa7/0xbe0 net/sched/cls_tcindex.c:342 [<ffffffff839caa1f>] tcindex_change+0xdf/0x120 net/sched/cls_tcindex.c:553 [<ffffffff8394db62>] tc_new_tfilter+0x4f2/0x1100 net/sched/cls_api.c:2147 [<ffffffff8389e91c>] rtnetlink_rcv_msg+0x4dc/0x5d0 net/core/rtnetlink.c:6082 [<ffffffff839eba67>] netlink_rcv_skb+0x87/0x1d0 net/netlink/af_netlink.c:2540 [<ffffffff839eab87>] netlink_unicast_kernel net/netlink/af_netlink.c:1319 [inline] [<ffffffff839eab87>] netlink_unicast+0x397/0x4c0 net/netlink/af_netlink.c:1345 [<ffffffff839eb046>] netlink_sendmsg+0x396/0x710 net/netlink/af_netlink.c:1921 [<ffffffff8383e796>] sock_sendmsg_nosec net/socket.c:714 [inline] [<ffffffff8383e796>] sock_sendmsg+0x56/0x80 net/socket.c:734 [<ffffffff8383eb08>] ____sys_sendmsg+0x178/0x410 net/socket.c:2482 [<ffffffff83843678>] ___sys_sendmsg+0xa8/0x110 net/socket.c:2536 [<ffffffff838439c5>] __sys_sendmmsg+0x105/0x330 net/socket.c:2622 [<ffffffff83843c14>] __do_sys_sendmmsg net/socket.c:2651 [inline] [<ffffffff83843c14>] __se_sys_sendmmsg net/socket.c:2648 [inline] [<ffffffff83843c14>] __x64_sys_sendmmsg+0x24/0x30 net/socket.c:2648 [<ffffffff84605fd5>] do_syscall_x64 arch/x86/entry/common.c:50 [inline] [<ffffffff84605fd5>] do_syscall_64+0x35/0xb0 arch/x86/entry/common.c:80 [<ffffffff84800087>] entry_SYSCALL_64_after_hwframe+0x63/0xcd ==================================== Kernel uses tcindex_change() to change an existing filter properties. Yet the problem is that, during the process of changing, if `old_r` is retrieved from `p->perfect`, then kernel uses tcindex_alloc_perfect_hash() to newly allocate filter results, uses tcindex_filter_result_init() to clear the old filter result, without destroying its tcf_exts structure, which triggers the above memory leak. To be more specific, there are only two source for the `old_r`, according to the tcindex_lookup(). `old_r` is retrieved from `p->perfect`, or `old_r` is retrieved from `p->h`. * If `old_r` is retrieved from `p->perfect`, kernel uses tcindex_alloc_perfect_hash() to newly allocate the filter results. Then `r` is assigned with `cp->perfect + handle`, which is newly allocated. So condition `old_r && old_r != r` is true in this situation, and kernel uses tcindex_filter_result_init() to clear the old filter result, without destroying its tcf_exts structure * If `old_r` is retrieved from `p->h`, then `p->perfect` is NULL according to the tcindex_lookup(). Considering that `cp->h` is directly copied from `p->h` and `p->perfect` is NULL, `r` is assigned with `tcindex_lookup(cp, handle)`, whose value should be the same as `old_r`, so condition `old_r && old_r != r` is false in this situation, kernel ignores using tcindex_filter_result_init() to clear the old filter result. So only when `old_r` is retrieved from `p->perfect` does kernel use tcindex_filter_result_init() to clear the old filter result, which triggers the above memory leak. Considering that there already exists a tc_filter_wq workqueue to destroy the old tcindex_d ---truncated---
Vulnerable and fixed packages
Distribution-reported package versions and fixes. These do not depend on matching against the OpenFactory package catalog.
| Distribution | Package | Release | Version | Status |
|---|---|---|---|---|
| Debian | linux | sid | 7.2.12-1 | fixed |
| Debian | linux | forky | 7.2.12-1 | fixed |
| Debian | linux | trixie | 6.12.107-1 | fixed |
| Debian | linux | trixie-security | 6.12.113-1 | fixed |
| Debian | linux | bookworm | 6.1.176-1 | fixed |
| Debian | linux | bookworm-security | 6.1.190-1 | fixed |
Fixed-version evidence
| Distribution | Package | Type | Release | Fixed version | Urgency | Origin | Bugs |
|---|---|---|---|---|---|---|---|
| Debian | linux | source | sid | 6.1.7-1 | not yet assigned | Not reported | Not reported |
| Debian | linux | source | forky | 6.1.7-1 | not yet assigned | Not reported | Not reported |
| Debian | linux | source | trixie | 6.1.7-1 | not yet assigned | Not reported | Not reported |
| Debian | linux | source | bookworm | 6.1.7-1 | not yet assigned | Not reported | Not reported |
OpenFactory catalog packages
Matching against OpenFactory catalog package versions is in progress.
[Debian 12 (Bookworm)]
- [bpftool]Unknown
Source package: [linux]
Details (6)
7.1.0+6.1.176-1· amd64 · bookwormFixed · Fixed:
6.1.7-1dsa · linux · debian · bookworm
7.1.0+6.1.176-1· arm64 · bookwormFixed · Fixed:
6.1.7-1dsa · linux · debian · bookworm
7.5.0+6.12.95-1~bpo12+1· amd64 · bookworm-backportsFixed · Fixed:
6.1.7-1dsa · linux · debian · bookworm
7.5.0+6.12.95-1~bpo12+1· arm64 · bookworm-backportsFixed · Fixed:
6.1.7-1dsa · linux · debian · bookworm
7.1.0+6.1.180-1· amd64 · bookworm-securityFixed · Fixed:
6.1.7-1dsa · linux · debian · bookworm
7.1.0+6.1.180-1· arm64 · bookworm-securityFixed · Fixed:
6.1.7-1dsa · linux · debian · bookworm
- [hyperv-daemons]Unknown
Source package: [linux]
Details (6)
6.1.176-1· amd64 · bookwormFixed · Fixed:
6.1.7-1dsa · linux · debian · bookworm
6.1.176-1· arm64 · bookwormFixed · Fixed:
6.1.7-1dsa · linux · debian · bookworm
6.12.95-1~bpo12+1· amd64 · bookworm-backportsFixed · Fixed:
6.1.7-1dsa · linux · debian · bookworm
6.12.95-1~bpo12+1· arm64 · bookworm-backportsFixed · Fixed:
6.1.7-1dsa · linux · debian · bookworm
6.1.180-1· amd64 · bookworm-securityFixed · Fixed:
6.1.7-1dsa · linux · debian · bookworm
6.1.180-1· arm64 · bookworm-securityFixed · Fixed:
6.1.7-1dsa · linux · debian · bookworm
- [intel-sdsi]Unknown
Source package: [linux]
Details (1)
6.12.95-1~bpo12+1· amd64 · bookworm-backportsFixed · Fixed:
6.1.7-1dsa · linux · debian · bookworm
- [libcpupower1]Unknown
Source package: [linux]
Details (6)
6.1.176-1· amd64 · bookwormFixed · Fixed:
6.1.7-1dsa · linux · debian · bookworm
6.1.176-1· arm64 · bookwormFixed · Fixed:
6.1.7-1dsa · linux · debian · bookworm
6.12.95-1~bpo12+1· amd64 · bookworm-backportsFixed · Fixed:
6.1.7-1dsa · linux · debian · bookworm
6.12.95-1~bpo12+1· arm64 · bookworm-backportsFixed · Fixed:
6.1.7-1dsa · linux · debian · bookworm
6.1.180-1· amd64 · bookworm-securityFixed · Fixed:
6.1.7-1dsa · linux · debian · bookworm
6.1.180-1· arm64 · bookworm-securityFixed · Fixed:
6.1.7-1dsa · linux · debian · bookworm
- [libcpupower-dev]Unknown
Source package: [linux]
Details (6)
6.1.176-1· amd64 · bookwormFixed · Fixed:
6.1.7-1dsa · linux · debian · bookworm
6.1.176-1· arm64 · bookwormFixed · Fixed:
6.1.7-1dsa · linux · debian · bookworm
6.12.95-1~bpo12+1· amd64 · bookworm-backportsFixed · Fixed:
6.1.7-1dsa · linux · debian · bookworm
6.12.95-1~bpo12+1· arm64 · bookworm-backportsFixed · Fixed:
6.1.7-1dsa · linux · debian · bookworm
6.1.180-1· amd64 · bookworm-securityFixed · Fixed:
6.1.7-1dsa · linux · debian · bookworm
6.1.180-1· arm64 · bookworm-securityFixed · Fixed:
6.1.7-1dsa · linux · debian · bookworm
- [linux-bpf-dev]Unknown
Source package: [linux]
Details (2)
6.12.95-1~bpo12+1· amd64 · bookworm-backportsFixed · Fixed:
6.1.7-1dsa · linux · debian · bookworm
6.12.95-1~bpo12+1· arm64 · bookworm-backportsFixed · Fixed:
6.1.7-1dsa · linux · debian · bookworm
- [linux-compiler-gcc-12-x86]Unknown
Source package: [linux]
Details (2)
6.1.176-1· amd64 · bookwormFixed · Fixed:
6.1.7-1dsa · linux · debian · bookworm
6.1.180-1· amd64 · bookworm-securityFixed · Fixed:
6.1.7-1dsa · linux · debian · bookworm
- [linux-config-6.1]Unknown
Source package: [linux]
Details (4)
6.1.176-1· amd64 · bookwormFixed · Fixed:
6.1.7-1dsa · linux · debian · bookworm
6.1.176-1· arm64 · bookwormFixed · Fixed:
6.1.7-1dsa · linux · debian · bookworm
6.1.180-1· amd64 · bookworm-securityFixed · Fixed:
6.1.7-1dsa · linux · debian · bookworm
6.1.180-1· arm64 · bookworm-securityFixed · Fixed:
6.1.7-1dsa · linux · debian · bookworm
- [linux-cpupower]Unknown
Source package: [linux]
Details (6)
6.1.176-1· amd64 · bookwormFixed · Fixed:
6.1.7-1dsa · linux · debian · bookworm
6.1.176-1· arm64 · bookwormFixed · Fixed:
6.1.7-1dsa · linux · debian · bookworm
6.12.95-1~bpo12+1· amd64 · bookworm-backportsFixed · Fixed:
6.1.7-1dsa · linux · debian · bookworm
6.12.95-1~bpo12+1· arm64 · bookworm-backportsFixed · Fixed:
6.1.7-1dsa · linux · debian · bookworm
6.1.180-1· amd64 · bookworm-securityFixed · Fixed:
6.1.7-1dsa · linux · debian · bookworm
6.1.180-1· arm64 · bookworm-securityFixed · Fixed:
6.1.7-1dsa · linux · debian · bookworm
- [linux-doc]Unknown
Source package: [linux]
Details (32)
6.1.170-3· all · bookwormFixed · Fixed:
6.1.7-1dsa · linux · debian · bookworm
6.1.170-3· all · bookwormFixed · Fixed:
6.1.7-1dsa · linux · debian · bookworm
6.1.176-1· all · bookwormFixed · Fixed:
6.1.7-1dsa · linux · debian · bookworm
6.1.176-1· all · bookwormFixed · Fixed:
6.1.7-1dsa · linux · debian · bookworm
6.12.43-1~bpo12+1· all · bookworm-backportsFixed · Fixed:
6.1.7-1dsa · linux · debian · bookworm
6.12.43-1~bpo12+1· all · bookworm-backportsFixed · Fixed:
6.1.7-1dsa · linux · debian · bookworm
6.12.57-1~bpo12+1· all · bookworm-backportsFixed · Fixed:
6.1.7-1dsa · linux · debian · bookworm
6.12.57-1~bpo12+1· all · bookworm-backportsFixed · Fixed:
6.1.7-1dsa · linux · debian · bookworm
6.12.63-1~bpo12+1· all · bookworm-backportsFixed · Fixed:
6.1.7-1dsa · linux · debian · bookworm
6.12.63-1~bpo12+1· all · bookworm-backportsFixed · Fixed:
6.1.7-1dsa · linux · debian · bookworm
6.12.69-1~bpo12+1· all · bookworm-backportsFixed · Fixed:
6.1.7-1dsa · linux · debian · bookworm
6.12.69-1~bpo12+1· all · bookworm-backportsFixed · Fixed:
6.1.7-1dsa · linux · debian · bookworm
6.12.73-1~bpo12+1· all · bookworm-backportsFixed · Fixed:
6.1.7-1dsa · linux · debian · bookworm
6.12.73-1~bpo12+1· all · bookworm-backportsFixed · Fixed:
6.1.7-1dsa · linux · debian · bookworm
6.12.74-2~bpo12+1· all · bookworm-backportsFixed · Fixed:
6.1.7-1dsa · linux · debian · bookworm
6.12.74-2~bpo12+1· all · bookworm-backportsFixed · Fixed:
6.1.7-1dsa · linux · debian · bookworm
6.12.85-1~bpo12+1· all · bookworm-backportsFixed · Fixed:
6.1.7-1dsa · linux · debian · bookworm
6.12.85-1~bpo12+1· all · bookworm-backportsFixed · Fixed:
6.1.7-1dsa · linux · debian · bookworm
6.12.86-1~bpo12+1· all · bookworm-backportsFixed · Fixed:
6.1.7-1dsa · linux · debian · bookworm
6.12.86-1~bpo12+1· all · bookworm-backportsFixed · Fixed:
6.1.7-1dsa · linux · debian · bookworm
6.12.88-1~bpo12+1· all · bookworm-backportsFixed · Fixed:
6.1.7-1dsa · linux · debian · bookworm
6.12.88-1~bpo12+1· all · bookworm-backportsFixed · Fixed:
6.1.7-1dsa · linux · debian · bookworm
6.12.90-1~bpo12+1· all · bookworm-backportsFixed · Fixed:
6.1.7-1dsa · linux · debian · bookworm
6.12.90-1~bpo12+1· all · bookworm-backportsFixed · Fixed:
6.1.7-1dsa · linux · debian · bookworm
6.12.90-2~bpo12+1· all · bookworm-backportsFixed · Fixed:
6.1.7-1dsa · linux · debian · bookworm
6.12.90-2~bpo12+1· all · bookworm-backportsFixed · Fixed:
6.1.7-1dsa · linux · debian · bookworm
6.12.94-1~bpo12+1· all · bookworm-backportsFixed · Fixed:
6.1.7-1dsa · linux · debian · bookworm
6.12.94-1~bpo12+1· all · bookworm-backportsFixed · Fixed:
6.1.7-1dsa · linux · debian · bookworm
6.12.95-1~bpo12+1· all · bookworm-backportsFixed · Fixed:
6.1.7-1dsa · linux · debian · bookworm
6.12.95-1~bpo12+1· all · bookworm-backportsFixed · Fixed:
6.1.7-1dsa · linux · debian · bookworm
6.1.180-1· all · bookworm-securityFixed · Fixed:
6.1.7-1dsa · linux · debian · bookworm
6.1.180-1· all · bookworm-securityFixed · Fixed:
6.1.7-1dsa · linux · debian · bookworm
- [linux-doc-6.1]Unknown
Source package: [linux]
Details (6)
6.1.170-3· all · bookwormFixed · Fixed:
6.1.7-1dsa · linux · debian · bookworm
6.1.170-3· all · bookwormFixed · Fixed:
6.1.7-1dsa · linux · debian · bookworm
6.1.176-1· all · bookwormFixed · Fixed:
6.1.7-1dsa · linux · debian · bookworm
6.1.176-1· all · bookwormFixed · Fixed:
6.1.7-1dsa · linux · debian · bookworm
6.1.180-1· all · bookworm-securityFixed · Fixed:
6.1.7-1dsa · linux · debian · bookworm
6.1.180-1· all · bookworm-securityFixed · Fixed:
6.1.7-1dsa · linux · debian · bookworm
- [linux-headers-6.1.0-47-amd64]Unknown
Source package: [linux]
Details (1)
6.1.170-3· amd64 · bookwormFixed · Fixed:
6.1.7-1dsa · linux · debian · bookworm
- [linux-headers-6.1.0-47-arm64]Unknown
Source package: [linux]
Details (1)
6.1.170-3· arm64 · bookwormFixed · Fixed:
6.1.7-1dsa · linux · debian · bookworm
- [linux-headers-6.1.0-47-cloud-amd64]Unknown
Source package: [linux]
Details (1)
6.1.170-3· amd64 · bookwormFixed · Fixed:
6.1.7-1dsa · linux · debian · bookworm
- [linux-headers-6.1.0-47-cloud-arm64]Unknown
Source package: [linux]
Details (1)
6.1.170-3· arm64 · bookwormFixed · Fixed:
6.1.7-1dsa · linux · debian · bookworm
- [linux-headers-6.1.0-47-common]Unknown
Source package: [linux]
Details (2)
6.1.170-3· all · bookwormFixed · Fixed:
6.1.7-1dsa · linux · debian · bookworm
6.1.170-3· all · bookwormFixed · Fixed:
6.1.7-1dsa · linux · debian · bookworm
- [linux-headers-6.1.0-47-common-rt]Unknown
Source package: [linux]
Details (2)
6.1.170-3· all · bookwormFixed · Fixed:
6.1.7-1dsa · linux · debian · bookworm
6.1.170-3· all · bookwormFixed · Fixed:
6.1.7-1dsa · linux · debian · bookworm
- [linux-headers-6.1.0-47-rt-amd64]Unknown
Source package: [linux]
Details (1)
6.1.170-3· amd64 · bookwormFixed · Fixed:
6.1.7-1dsa · linux · debian · bookworm
- [linux-headers-6.1.0-47-rt-arm64]Unknown
Source package: [linux]
Details (1)
6.1.170-3· arm64 · bookwormFixed · Fixed:
6.1.7-1dsa · linux · debian · bookworm
- [linux-headers-6.1.0-50-amd64]Unknown
Source package: [linux]
Details (1)
6.1.176-1· amd64 · bookwormFixed · Fixed:
6.1.7-1dsa · linux · debian · bookworm
Observed:
References
- [https://ftp.suse.com/pub/projects/security/csaf/suse-su-2025_03614-1.json]
- [https://security-tracker.debian.org/tracker/CVE-2022-50396]
- [https://security.access.redhat.com/data/csaf/v2/vex/2022/cve-2022-50396.json]
- [https://wid.cert-bund.de/.well-known/csaf/white/2026/wid-sec-w-2026-0349.json]
[CERT-Bund public advisories] · [Debian Security Tracker] · [FIRST EPSS] · [Red Hat security advisories and VEX] · [SUSE security advisories and VEX]