CVE-2022-49870
capabilities: fix undefined behavior in bit shift for CAP_TO_MASK
Description
In the Linux kernel, the following vulnerability has been resolved: capabilities: fix undefined behavior in bit shift for CAP_TO_MASK Shifting signed 32-bit value by 31 bits is undefined, so changing significant bit to unsigned. The UBSAN warning calltrace like below: UBSAN: shift-out-of-bounds in security/commoncap.c:1252:2 left shift of 1 by 31 places cannot be represented in type 'int' Call Trace: <TASK> dump_stack_lvl+0x7d/0xa5 dump_stack+0x15/0x1b ubsan_epilogue+0xe/0x4e __ubsan_handle_shift_out_of_bounds+0x1e7/0x20c cap_task_prctl+0x561/0x6f0 security_task_prctl+0x5a/0xb0 __x64_sys_prctl+0x61/0x8f0 do_syscall_64+0x58/0x80 entry_SYSCALL_64_after_hwframe+0x63/0xcd </TASK>
INFO
Published Date :
May 1, 2025, 3:16 p.m.
Last Modified :
Nov. 10, 2025, 9:04 p.m.
Remotely Exploit :
No
Source :
416baaa9-dc9f-4396-8d5f-8c081fb06d67
CVSS Scores
| Score | Version | Severity | Vector | Exploitability Score | Impact Score | Source |
|---|---|---|---|---|---|---|
| CVSS 3.1 | HIGH | [email protected] |
Solution
- Update the Linux kernel to a version that includes the fix.
- Apply the specific patch addressing the bit shift issue.
- Recompile the kernel with the corrected code.
References to Advisories, Solutions, and Tools
Here, you will find a curated list of external links that provide in-depth
information, practical solutions, and valuable tools related to
CVE-2022-49870.
CWE - Common Weakness Enumeration
While CVE identifies
specific instances of vulnerabilities, CWE categorizes the common flaws or
weaknesses that can lead to vulnerabilities. CVE-2022-49870 is
associated with the following CWEs:
Common Attack Pattern Enumeration and Classification (CAPEC)
Common Attack Pattern Enumeration and Classification
(CAPEC)
stores attack patterns, which are descriptions of the common attributes and
approaches employed by adversaries to exploit the CVE-2022-49870
weaknesses.
We scan GitHub repositories to detect new proof-of-concept exploits. Following list is a collection of public exploits and proof-of-concepts, which have been published on GitHub (sorted by the most recently updated).
Results are limited to the first 15 repositories due to potential performance issues.
The following list is the news that have been mention
CVE-2022-49870 vulnerability anywhere in the article.
The following table lists the changes that have been made to the
CVE-2022-49870 vulnerability over time.
Vulnerability history details can be useful for understanding the evolution of a vulnerability, and for identifying the most recent changes that may impact the vulnerability's severity, exploitability, or other characteristics.
-
Initial Analysis by [email protected]
Nov. 10, 2025
Action Type Old Value New Value Added CVSS V3.1 AV:L/AC:L/PR:L/UI:N/S:U/C:H/I:N/A:H Added CWE CWE-125 Added CPE Configuration OR *cpe:2.3:o:linux:linux_kernel:6.1:rc2:*:*:*:*:*:* *cpe:2.3:o:linux:linux_kernel:6.1:rc1:*:*:*:*:*:* *cpe:2.3:o:linux:linux_kernel:6.1:rc3:*:*:*:*:*:* *cpe:2.3:o:linux:linux_kernel:6.1:rc4:*:*:*:*:*:* *cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:* versions from (including) 4.20 up to (excluding) 5.4.225 *cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:* versions from (including) 4.15 up to (excluding) 4.19.267 *cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:* versions from (including) 2.6.25 up to (excluding) 4.9.334 *cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:* versions from (including) 4.10 up to (excluding) 4.14.300 *cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:* versions from (including) 5.5 up to (excluding) 5.10.155 *cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:* versions from (including) 5.11 up to (excluding) 5.15.79 *cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:* versions from (including) 5.16 up to (excluding) 6.0.9 Added Reference Type kernel.org: https://git.kernel.org/stable/c/151dc8087b5609e53b069c068e3f3ee100efa586 Types: Patch Added Reference Type kernel.org: https://git.kernel.org/stable/c/27bdb134c043ff32c459d98f16550d0ffa0b3c34 Types: Patch Added Reference Type kernel.org: https://git.kernel.org/stable/c/46653972e3ea64f79e7f8ae3aa41a4d3fdb70a13 Types: Patch Added Reference Type kernel.org: https://git.kernel.org/stable/c/5661f111a1616ac105ec8cec81bff99b60f847ac Types: Patch Added Reference Type kernel.org: https://git.kernel.org/stable/c/5b79fa628e2ab789e629a83cd211ef9b4c1a593e Types: Patch Added Reference Type kernel.org: https://git.kernel.org/stable/c/65b0bc7a0690861812ade523d19f82688ab819dc Types: Patch Added Reference Type kernel.org: https://git.kernel.org/stable/c/dbaab08c8677d598244d21afb7818e44e1c5d826 Types: Patch Added Reference Type kernel.org: https://git.kernel.org/stable/c/fcbd2b336834bd24e1d9454ad5737856470c10d7 Types: Patch -
New CVE Received by 416baaa9-dc9f-4396-8d5f-8c081fb06d67
May. 01, 2025
Action Type Old Value New Value Added Description In the Linux kernel, the following vulnerability has been resolved: capabilities: fix undefined behavior in bit shift for CAP_TO_MASK Shifting signed 32-bit value by 31 bits is undefined, so changing significant bit to unsigned. The UBSAN warning calltrace like below: UBSAN: shift-out-of-bounds in security/commoncap.c:1252:2 left shift of 1 by 31 places cannot be represented in type 'int' Call Trace: <TASK> dump_stack_lvl+0x7d/0xa5 dump_stack+0x15/0x1b ubsan_epilogue+0xe/0x4e __ubsan_handle_shift_out_of_bounds+0x1e7/0x20c cap_task_prctl+0x561/0x6f0 security_task_prctl+0x5a/0xb0 __x64_sys_prctl+0x61/0x8f0 do_syscall_64+0x58/0x80 entry_SYSCALL_64_after_hwframe+0x63/0xcd </TASK> Added Reference https://git.kernel.org/stable/c/151dc8087b5609e53b069c068e3f3ee100efa586 Added Reference https://git.kernel.org/stable/c/27bdb134c043ff32c459d98f16550d0ffa0b3c34 Added Reference https://git.kernel.org/stable/c/46653972e3ea64f79e7f8ae3aa41a4d3fdb70a13 Added Reference https://git.kernel.org/stable/c/5661f111a1616ac105ec8cec81bff99b60f847ac Added Reference https://git.kernel.org/stable/c/5b79fa628e2ab789e629a83cd211ef9b4c1a593e Added Reference https://git.kernel.org/stable/c/65b0bc7a0690861812ade523d19f82688ab819dc Added Reference https://git.kernel.org/stable/c/dbaab08c8677d598244d21afb7818e44e1c5d826 Added Reference https://git.kernel.org/stable/c/fcbd2b336834bd24e1d9454ad5737856470c10d7