CVE-2022-49697 json
bpf: Fix request_sock leak in sk lookup helpers
published 2025-02-26 20 mo ago modified 2026-06-17 4 mo ago also EUVD-2022-54538
- cvss
- 5.5
- version 3.1, NVD
- cisa kev
- Not listed
- not in CISA's catalog
- epss
- 0.3%
- EPSS 0.3% chance of exploitation in 30 days, percentile 19%
- public exploits
- 0
- none known
Summary
In the Linux kernel, the following vulnerability has been resolved:
bpf: Fix request_sock leak in sk lookup helpers
A customer reported a request_socket leak in a Calico cloud environment. We found that a BPF program was doing a socket lookup with takes a refcnt on the socket and that it was finding the request_socket but returning the parent LISTEN socket via sk_to_full_sk() without decrementing the child request socket 1st, resulting in request_sock slab object leak. This patch retains the existing behaviour of returning full socks to the caller but it also decrements the child request_socket if one is present before doing so to prevent the leak.
Thanks to Curtis Taylor for all the help in diagnosing and testing this. And thanks to Antoine Tenart for the reproducer and patch input.
v2 of this patch contains, refactor as per Daniel Borkmann's suggestions to validate RCU flags on the listen socket so that it balances with bpf_sk_release() and update comments as per Martin KaFai Lau's suggestion. One small change to Daniels suggestion, put "sk = sk2" under "if (sk2 != sk)" to avoid an extra instruction.
Patch / fix
- Linux Linux 5.4.202, 5.10.127, 5.15.51, 5.18.8, 5.19
- linux Debian 14, Debian 13, Debian 12 5.18.14-1
debian advisories DEBIAN-CVE-2022-49697
- linux Ubuntu 20.04 LTS 5.4.0-126.142
- linux Ubuntu 22.04 LTS 5.15.0-48.54
- linux-aws Ubuntu 20.04 LTS 5.4.0-1085.92
- linux-aws Ubuntu 22.04 LTS 5.15.0-1020.24
- linux-gcp Ubuntu 20.04 LTS 5.4.0-1089.97
- linux-gcp Ubuntu 22.04 LTS 5.15.0-1018.24
- linux-gke Ubuntu 22.04 LTS 5.15.0-1016.19
- linux-ibm Ubuntu 20.04 LTS 5.4.0-1033.37
ubuntu advisories UBUNTU-CVE-2022-49697
Ubuntu security data © Canonical Ltd., from https://github.com/canonical/ubuntu-security-notices via OSV; changed: normalised to fixed package versions per release. CC BY-SA 4.0
- kernel RHEL 9 5.14.0-162.6.1.el9_1
- perf RHEL 9 5.14.0-162.6.1.el9_1
- bpftool RHEL 9 5.14.0-162.6.1.el9_1
- kernel-core RHEL 9 5.14.0-162.6.1.el9_1
- kernel-tools RHEL 9 5.14.0-162.6.1.el9_1
- python3-perf RHEL 9 5.14.0-162.6.1.el9_1
- kernel-modules RHEL 9 5.14.0-162.6.1.el9_1
- kernel-zfcpdump RHEL 9 5.14.0-162.6.1.el9_1
red hat advisories RHSA-2022:8267RHSA-2022:7683
- kernel-64kb SLES 15 SP5-LTSS, SLE High Performance Computing 15 SP5-LTSS, SLE High Performance Computing 15 SP5-ESPOS 5.14.21-150500.55.100.1
- kernel-syms SLES for SAP 15 SP5, SLES 15 SP5-LTSS, SLE High Performance Computing 15 SP5-LTSS +1 more 5.14.21-150500.55.100.1
- kernel-source SLES for SAP 15 SP5, SLES 15 SP5-LTSS, SLE Micro 5.5 +2 more 5.14.21-150500.55.100.1
- kernel-default SLES for SAP 15 SP5, SLES 15 SP5-LTSS, SLE Micro 5.5 +3 more 5.14.21-150500.55.100.1
- kernel-obs-build SLES for SAP 15 SP5, SLES 15 SP5-LTSS, SLE High Performance Computing 15 SP5-LTSS +1 more 5.14.21-150500.55.100.1
- kernel-default-base SLES for SAP 15 SP5, SLES 15 SP5-LTSS, SLE Micro 5.5 +2 more 5.14.21-150500.55.100.1.150500.6.47.1
- kernel-rt SLE Micro 5.5 5.14.21-150500.13.91.1
- kernel-source-rt SLE Micro 5.5 5.14.21-150500.13.91.1
suse advisories SUSE-SU-2025:1241-1SUSE-SU-2025:1176-1
- git.kernel.org/stable/c/8ffe2e50e9678c8373027492035f094b130437f1 commit
- git.kernel.org/stable/c/516760f1d2979903eaad5b437256913c5cd98416 commit
- git.kernel.org/stable/c/b03607437ea81b850599f705096b05b85e7a4a71 commit
- git.kernel.org/stable/c/5a62b5ba4c0ce8315b6382cd4ace81b48cd121cd commit
- git.kernel.org/stable/c/3046a827316c0e55fc563b4fb78c93b9ca5c7c37 commit
Vendor advisories
What the vendors themselves say about their products: affected, fixed or not affected, and what to do.
red hat product security vex CVE-2022-49697 updated cvss 5.5
kernel: bpf: Fix request_sock leak in sk lookup helpers
-
Red Hat Enterprise Linux 6 perf, kernel, python-perf, kernel-kdump, kernel-firmware, kernel-bootwrapper, +1 more Red Hat Enterprise Linux 7 perf, kernel, bpftool, kernel-rt, python-perf, kernel-kdump, +8 more Red Hat Enterprise Linux 8 kernel-rt, kernel-rt-kvm, kernel-rt-core, kernel-rt-modules, kernel-rt-debug-kvm, kernel-rt-debug-core, +6 moreaffected: no fix planned “Out of support scope”
-
Red Hat Enterprise Linux 9 kernel-rt, kernel-rt-kvm, kernel-rt-core, kernel-rt-modules, kernel-rt-debug-kvm, kernel-rt-debug-core, +12 moreaffected: no fix available
-
Red Hat CodeReady Linux Builder (v. 8) kernel-debuginfo-common-x86_64 4.18.0-425.3.1.el8, kernel-debuginfo-common-aarch64 4.18.0-425.3.1.el8, kernel-debuginfo-common-ppc64le 4.18.0-425.3.1.el8fixed: vendor fix RHSA-2022:7683
-
Red Hat CodeReady Linux Builder (v. 9) kernel-debuginfo-common-s390x 5.14.0-162.6.1.el9_1, kernel-debuginfo-common-x86_64 5.14.0-162.6.1.el9_1, kernel-debuginfo-common-aarch64 5.14.0-162.6.1.el9_1, kernel-debuginfo-common-ppc64le 5.14.0-162.6.1.el9_1 Red Hat Enterprise Linux AppStream (v. 9) perf 5.14.0-162.6.1.el9_1, kernel-devel-matched 5.14.0-162.6.1.el9_1, kernel-debug-devel-matched 5.14.0-162.6.1.el9_1, kernel-debuginfo-common-s390x 5.14.0-162.6.1.el9_1, kernel-zfcpdump-devel-matched 5.14.0-162.6.1.el9_1, kernel-debuginfo-common-x86_64 5.14.0-162.6.1.el9_1, +2 morefixed: vendor fix RHSA-2022:8267
-
Red Hat Enterprise Linux BaseOS (v. 8) perf 4.18.0-425.3.1.el8, kernel 4.18.0-425.3.1.el8, bpftool 4.18.0-425.3.1.el8, kernel-core 4.18.0-425.3.1.el8, kernel-tools 4.18.0-425.3.1.el8, python3-perf 4.18.0-425.3.1.el8, +15 morefixed: vendor fix RHSA-2022:7683
-
Red Hat Enterprise Linux BaseOS (v. 9) kernel 5.14.0-162.6.1.el9_1, bpftool 5.14.0-162.6.1.el9_1, kernel-core 5.14.0-162.6.1.el9_1, kernel-tools 5.14.0-162.6.1.el9_1, python3-perf 5.14.0-162.6.1.el9_1, kernel-modules 5.14.0-162.6.1.el9_1, +14 morefixed: vendor fix RHSA-2022:8267
-
Red Hat Enterprise Linux 10 kernelnot affected: vulnerable code not present
Red Hat CSAF VEX © Red Hat, Inc., from https://security.access.redhat.com/data/csaf/v2/vex/; changed: reduced to product statuses and remediations. CC BY 4.0 · csaf
Exploit prediction
0.27% chance of exploitation in the next 30 days, higher than 19% of all scored CVEs (FIRST EPSS, 2026-11-08).
CVSS scores
| assigned by | version | score | vector |
|---|---|---|---|
| NVD | 3.1 | 5.5 | CVSS:3.1/AV:L/AC:L/PR:L/UI:N/S:U/C:N/I:N/A:H |
Affected products
- Linux Linux
Classification
- Weakness
-
- CWE-401 Missing Release of Memory after Effective Lifetime
- Technology feeds
References
-
git.kernel.org
/stable/c/8ffe2e50e9678c8373027492035f094b130437f1
patch
-
git.kernel.org
/stable/c/516760f1d2979903eaad5b437256913c5cd98416
patch
-
git.kernel.org
/stable/c/b03607437ea81b850599f705096b05b85e7a4a71
patch
-
git.kernel.org
/stable/c/5a62b5ba4c0ce8315b6382cd4ace81b48cd121cd
patch
-
git.kernel.org
/stable/c/3046a827316c0e55fc563b4fb78c93b9ca5c7c37
patch
Sources
- CVE List CVE-2022-49697
- NVD CVE-2022-49697
Fencer Vulns keeps one entry per vulnerability: the CVE id wins, then GHSA, and records that alias each other are merged, except that two CVEs always keep separate entries. The same data is available as JSON.