CVE-2022-49567: Vulnerability in Linux Linux
In the Linux kernel, the following vulnerability has been resolved: mm/mempolicy: fix uninit-value in mpol_rebind_policy() mpol_set_nodemask()(mm/mempolicy.c) does not set up nodemask when pol->mode is MPOL_LOCAL. Check pol->mode before access pol->w.cpuset_mems_allowed in mpol_rebind_policy()(mm/mempolicy.c). BUG: KMSAN: uninit-value in mpol_rebind_policy mm/mempolicy.c:352 [inline] BUG: KMSAN: uninit-value in mpol_rebind_task+0x2ac/0x2c0 mm/mempolicy.c:368 mpol_rebind_policy mm/mempolicy.c:352 [inline] mpol_rebind_task+0x2ac/0x2c0 mm/mempolicy.c:368 cpuset_change_task_nodemask kernel/cgroup/cpuset.c:1711 [inline] cpuset_attach+0x787/0x15e0 kernel/cgroup/cpuset.c:2278 cgroup_migrate_execute+0x1023/0x1d20 kernel/cgroup/cgroup.c:2515 cgroup_migrate kernel/cgroup/cgroup.c:2771 [inline] cgroup_attach_task+0x540/0x8b0 kernel/cgroup/cgroup.c:2804 __cgroup1_procs_write+0x5cc/0x7a0 kernel/cgroup/cgroup-v1.c:520 cgroup1_tasks_write+0x94/0xb0 kernel/cgroup/cgroup-v1.c:539 cgroup_file_write+0x4c2/0x9e0 kernel/cgroup/cgroup.c:3852 kernfs_fop_write_iter+0x66a/0x9f0 fs/kernfs/file.c:296 call_write_iter include/linux/fs.h:2162 [inline] new_sync_write fs/read_write.c:503 [inline] vfs_write+0x1318/0x2030 fs/read_write.c:590 ksys_write+0x28b/0x510 fs/read_write.c:643 __do_sys_write fs/read_write.c:655 [inline] __se_sys_write fs/read_write.c:652 [inline] __x64_sys_write+0xdb/0x120 fs/read_write.c:652 do_syscall_x64 arch/x86/entry/common.c:51 [inline] do_syscall_64+0x54/0xd0 arch/x86/entry/common.c:82 entry_SYSCALL_64_after_hwframe+0x44/0xae Uninit was created at: slab_post_alloc_hook mm/slab.h:524 [inline] slab_alloc_node mm/slub.c:3251 [inline] slab_alloc mm/slub.c:3259 [inline] kmem_cache_alloc+0x902/0x11c0 mm/slub.c:3264 mpol_new mm/mempolicy.c:293 [inline] do_set_mempolicy+0x421/0xb70 mm/mempolicy.c:853 kernel_set_mempolicy mm/mempolicy.c:1504 [inline] __do_sys_set_mempolicy mm/mempolicy.c:1510 [inline] __se_sys_set_mempolicy+0x44c/0xb60 mm/mempolicy.c:1507 __x64_sys_set_mempolicy+0xd8/0x110 mm/mempolicy.c:1507 do_syscall_x64 arch/x86/entry/common.c:51 [inline] do_syscall_64+0x54/0xd0 arch/x86/entry/common.c:82 entry_SYSCALL_64_after_hwframe+0x44/0xae KMSAN: uninit-value in mpol_rebind_task (2) https://syzkaller.appspot.com/bug?id=d6eb90f952c2a5de9ea718a1b873c55cb13b59dc This patch seems to fix below bug too. KMSAN: uninit-value in mpol_rebind_mm (2) https://syzkaller.appspot.com/bug?id=f2fecd0d7013f54ec4162f60743a2b28df40926b The uninit-value is pol->w.cpuset_mems_allowed in mpol_rebind_policy(). When syzkaller reproducer runs to the beginning of mpol_new(), mpol_new() mm/mempolicy.c do_mbind() mm/mempolicy.c kernel_mbind() mm/mempolicy.c `mode` is 1(MPOL_PREFERRED), nodes_empty(*nodes) is `true` and `flags` is 0. Then mode = MPOL_LOCAL; ... policy->mode = mode; policy->flags = flags; will be executed. So in mpol_set_nodemask(), mpol_set_nodemask() mm/mempolicy.c do_mbind() kernel_mbind() pol->mode is 4 (MPOL_LOCAL), that `nodemask` in `pol` is not initialized, which will be accessed in mpol_rebind_policy().
AI Analysis
Technical Summary
CVE-2022-49567 is a vulnerability identified in the Linux kernel's memory policy management subsystem, specifically within the mm/mempolicy.c source file. The flaw arises due to an uninitialized value usage in the function mpol_rebind_policy(), which is responsible for rebinding memory policies. The root cause is that when the memory policy mode is set to MPOL_LOCAL, the nodemask field within the policy structure is not properly initialized by mpol_set_nodemask(). This leads to the access of uninitialized memory in subsequent calls, such as mpol_rebind_policy() and mpol_rebind_task(). The issue was detected by Kernel Memory Sanitizer (KMSAN), which flagged uninitialized value usage in multiple related functions. The vulnerability is triggered during operations involving memory binding and policy setting, such as do_mbind() and kernel_mbind(), where the policy mode transitions to MPOL_LOCAL but the nodemask remains unset. This can cause undefined behavior in kernel memory management, potentially leading to system instability or crashes. Although no direct exploit in the wild has been reported, the flaw represents a kernel-level memory management bug that could be leveraged for denial of service or, in some scenarios, privilege escalation if combined with other vulnerabilities. The vulnerability affects Linux kernel versions identified by the commit hash 1da177e4c3f41524e886b7f1b8a0c1fc7321cac2 and similar. The patch addresses the issue by ensuring that the nodemask is properly initialized when the policy mode is MPOL_LOCAL, preventing uninitialized memory access. Given the kernel-level nature of this bug, it impacts all Linux distributions using affected kernel versions, particularly those that utilize memory policy features and cgroup memory management. The vulnerability is technical and requires kernel-level understanding to exploit or mitigate.
Potential Impact
For European organizations, the impact of CVE-2022-49567 can be significant, especially for those relying heavily on Linux-based infrastructure, including servers, cloud environments, and embedded systems. The vulnerability could lead to kernel crashes or system instability, resulting in denial of service conditions. In critical environments such as financial institutions, healthcare, telecommunications, and government agencies, such disruptions can cause operational downtime, data unavailability, and potential loss of trust. Although no known exploits exist currently, the presence of uninitialized memory usage in kernel code can be a stepping stone for attackers to develop more sophisticated exploits, potentially leading to privilege escalation or arbitrary code execution. This risk is heightened in multi-tenant cloud environments common in Europe, where isolation between tenants depends on robust kernel memory management. Additionally, the vulnerability affects cgroup memory policies, which are widely used for resource control in containerized environments (e.g., Docker, Kubernetes). This could impact container orchestration platforms used by European enterprises, leading to container crashes or compromised isolation. The vulnerability's exploitation could also affect embedded Linux devices used in critical infrastructure, industrial control systems, or IoT deployments across Europe, potentially causing service interruptions or safety risks. Overall, the threat poses a medium to high risk depending on the deployment context and the presence of mitigating controls.
Mitigation Recommendations
European organizations should implement the following specific mitigation steps: 1) Immediately identify and inventory all Linux systems running affected kernel versions, focusing on servers, cloud instances, and embedded devices. 2) Apply the official Linux kernel patches that fix CVE-2022-49567 as soon as they become available from trusted sources or distribution vendors. 3) For environments where immediate patching is not feasible, consider temporarily disabling or restricting the use of memory policy features and cgroup memory management that invoke mpol_rebind_policy() functions, if operationally possible. 4) Enhance monitoring for kernel crashes, memory errors, and unusual system behavior that could indicate exploitation attempts. 5) In containerized environments, enforce strict resource limits and isolate containers to minimize impact if a container is affected. 6) Conduct thorough testing of kernel updates in staging environments to ensure stability before production deployment. 7) Collaborate with Linux distribution vendors and security communities to stay informed about updates and potential exploit developments. 8) For embedded and IoT devices, coordinate with device manufacturers to obtain patched firmware or kernel updates. 9) Implement defense-in-depth strategies such as kernel hardening, SELinux/AppArmor policies, and system call filtering to reduce attack surface. 10) Educate system administrators and security teams about this vulnerability to ensure timely response and remediation.
Affected Countries
Germany, France, United Kingdom, Netherlands, Sweden, Finland, Italy, Spain, Poland, Belgium
CVE-2022-49567: Vulnerability in Linux Linux
Description
In the Linux kernel, the following vulnerability has been resolved: mm/mempolicy: fix uninit-value in mpol_rebind_policy() mpol_set_nodemask()(mm/mempolicy.c) does not set up nodemask when pol->mode is MPOL_LOCAL. Check pol->mode before access pol->w.cpuset_mems_allowed in mpol_rebind_policy()(mm/mempolicy.c). BUG: KMSAN: uninit-value in mpol_rebind_policy mm/mempolicy.c:352 [inline] BUG: KMSAN: uninit-value in mpol_rebind_task+0x2ac/0x2c0 mm/mempolicy.c:368 mpol_rebind_policy mm/mempolicy.c:352 [inline] mpol_rebind_task+0x2ac/0x2c0 mm/mempolicy.c:368 cpuset_change_task_nodemask kernel/cgroup/cpuset.c:1711 [inline] cpuset_attach+0x787/0x15e0 kernel/cgroup/cpuset.c:2278 cgroup_migrate_execute+0x1023/0x1d20 kernel/cgroup/cgroup.c:2515 cgroup_migrate kernel/cgroup/cgroup.c:2771 [inline] cgroup_attach_task+0x540/0x8b0 kernel/cgroup/cgroup.c:2804 __cgroup1_procs_write+0x5cc/0x7a0 kernel/cgroup/cgroup-v1.c:520 cgroup1_tasks_write+0x94/0xb0 kernel/cgroup/cgroup-v1.c:539 cgroup_file_write+0x4c2/0x9e0 kernel/cgroup/cgroup.c:3852 kernfs_fop_write_iter+0x66a/0x9f0 fs/kernfs/file.c:296 call_write_iter include/linux/fs.h:2162 [inline] new_sync_write fs/read_write.c:503 [inline] vfs_write+0x1318/0x2030 fs/read_write.c:590 ksys_write+0x28b/0x510 fs/read_write.c:643 __do_sys_write fs/read_write.c:655 [inline] __se_sys_write fs/read_write.c:652 [inline] __x64_sys_write+0xdb/0x120 fs/read_write.c:652 do_syscall_x64 arch/x86/entry/common.c:51 [inline] do_syscall_64+0x54/0xd0 arch/x86/entry/common.c:82 entry_SYSCALL_64_after_hwframe+0x44/0xae Uninit was created at: slab_post_alloc_hook mm/slab.h:524 [inline] slab_alloc_node mm/slub.c:3251 [inline] slab_alloc mm/slub.c:3259 [inline] kmem_cache_alloc+0x902/0x11c0 mm/slub.c:3264 mpol_new mm/mempolicy.c:293 [inline] do_set_mempolicy+0x421/0xb70 mm/mempolicy.c:853 kernel_set_mempolicy mm/mempolicy.c:1504 [inline] __do_sys_set_mempolicy mm/mempolicy.c:1510 [inline] __se_sys_set_mempolicy+0x44c/0xb60 mm/mempolicy.c:1507 __x64_sys_set_mempolicy+0xd8/0x110 mm/mempolicy.c:1507 do_syscall_x64 arch/x86/entry/common.c:51 [inline] do_syscall_64+0x54/0xd0 arch/x86/entry/common.c:82 entry_SYSCALL_64_after_hwframe+0x44/0xae KMSAN: uninit-value in mpol_rebind_task (2) https://syzkaller.appspot.com/bug?id=d6eb90f952c2a5de9ea718a1b873c55cb13b59dc This patch seems to fix below bug too. KMSAN: uninit-value in mpol_rebind_mm (2) https://syzkaller.appspot.com/bug?id=f2fecd0d7013f54ec4162f60743a2b28df40926b The uninit-value is pol->w.cpuset_mems_allowed in mpol_rebind_policy(). When syzkaller reproducer runs to the beginning of mpol_new(), mpol_new() mm/mempolicy.c do_mbind() mm/mempolicy.c kernel_mbind() mm/mempolicy.c `mode` is 1(MPOL_PREFERRED), nodes_empty(*nodes) is `true` and `flags` is 0. Then mode = MPOL_LOCAL; ... policy->mode = mode; policy->flags = flags; will be executed. So in mpol_set_nodemask(), mpol_set_nodemask() mm/mempolicy.c do_mbind() kernel_mbind() pol->mode is 4 (MPOL_LOCAL), that `nodemask` in `pol` is not initialized, which will be accessed in mpol_rebind_policy().
AI-Powered Analysis
Technical Analysis
CVE-2022-49567 is a vulnerability identified in the Linux kernel's memory policy management subsystem, specifically within the mm/mempolicy.c source file. The flaw arises due to an uninitialized value usage in the function mpol_rebind_policy(), which is responsible for rebinding memory policies. The root cause is that when the memory policy mode is set to MPOL_LOCAL, the nodemask field within the policy structure is not properly initialized by mpol_set_nodemask(). This leads to the access of uninitialized memory in subsequent calls, such as mpol_rebind_policy() and mpol_rebind_task(). The issue was detected by Kernel Memory Sanitizer (KMSAN), which flagged uninitialized value usage in multiple related functions. The vulnerability is triggered during operations involving memory binding and policy setting, such as do_mbind() and kernel_mbind(), where the policy mode transitions to MPOL_LOCAL but the nodemask remains unset. This can cause undefined behavior in kernel memory management, potentially leading to system instability or crashes. Although no direct exploit in the wild has been reported, the flaw represents a kernel-level memory management bug that could be leveraged for denial of service or, in some scenarios, privilege escalation if combined with other vulnerabilities. The vulnerability affects Linux kernel versions identified by the commit hash 1da177e4c3f41524e886b7f1b8a0c1fc7321cac2 and similar. The patch addresses the issue by ensuring that the nodemask is properly initialized when the policy mode is MPOL_LOCAL, preventing uninitialized memory access. Given the kernel-level nature of this bug, it impacts all Linux distributions using affected kernel versions, particularly those that utilize memory policy features and cgroup memory management. The vulnerability is technical and requires kernel-level understanding to exploit or mitigate.
Potential Impact
For European organizations, the impact of CVE-2022-49567 can be significant, especially for those relying heavily on Linux-based infrastructure, including servers, cloud environments, and embedded systems. The vulnerability could lead to kernel crashes or system instability, resulting in denial of service conditions. In critical environments such as financial institutions, healthcare, telecommunications, and government agencies, such disruptions can cause operational downtime, data unavailability, and potential loss of trust. Although no known exploits exist currently, the presence of uninitialized memory usage in kernel code can be a stepping stone for attackers to develop more sophisticated exploits, potentially leading to privilege escalation or arbitrary code execution. This risk is heightened in multi-tenant cloud environments common in Europe, where isolation between tenants depends on robust kernel memory management. Additionally, the vulnerability affects cgroup memory policies, which are widely used for resource control in containerized environments (e.g., Docker, Kubernetes). This could impact container orchestration platforms used by European enterprises, leading to container crashes or compromised isolation. The vulnerability's exploitation could also affect embedded Linux devices used in critical infrastructure, industrial control systems, or IoT deployments across Europe, potentially causing service interruptions or safety risks. Overall, the threat poses a medium to high risk depending on the deployment context and the presence of mitigating controls.
Mitigation Recommendations
European organizations should implement the following specific mitigation steps: 1) Immediately identify and inventory all Linux systems running affected kernel versions, focusing on servers, cloud instances, and embedded devices. 2) Apply the official Linux kernel patches that fix CVE-2022-49567 as soon as they become available from trusted sources or distribution vendors. 3) For environments where immediate patching is not feasible, consider temporarily disabling or restricting the use of memory policy features and cgroup memory management that invoke mpol_rebind_policy() functions, if operationally possible. 4) Enhance monitoring for kernel crashes, memory errors, and unusual system behavior that could indicate exploitation attempts. 5) In containerized environments, enforce strict resource limits and isolate containers to minimize impact if a container is affected. 6) Conduct thorough testing of kernel updates in staging environments to ensure stability before production deployment. 7) Collaborate with Linux distribution vendors and security communities to stay informed about updates and potential exploit developments. 8) For embedded and IoT devices, coordinate with device manufacturers to obtain patched firmware or kernel updates. 9) Implement defense-in-depth strategies such as kernel hardening, SELinux/AppArmor policies, and system call filtering to reduce attack surface. 10) Educate system administrators and security teams about this vulnerability to ensure timely response and remediation.
For access to advanced analysis and higher rate limits, contact root@offseq.com
Technical Details
- Data Version
- 5.1
- Assigner Short Name
- Linux
- Date Reserved
- 2025-02-26T02:21:30.410Z
- Cisa Enriched
- false
- Cvss Version
- null
- State
- PUBLISHED
Threat ID: 682d982bc4522896dcbe4490
Added to database: 5/21/2025, 9:08:59 AM
Last enriched: 6/29/2025, 10:27:39 PM
Last updated: 7/27/2025, 10:19:40 PM
Views: 12
Related Threats
CVE-2025-8395
UnknownCVE-2025-54233: Out-of-bounds Read (CWE-125) in Adobe Adobe Framemaker
MediumCVE-2025-54232: Use After Free (CWE-416) in Adobe Adobe Framemaker
HighCVE-2025-54231: Use After Free (CWE-416) in Adobe Adobe Framemaker
HighCVE-2025-54230: Use After Free (CWE-416) in Adobe Adobe Framemaker
HighActions
Updates to AI analysis are available only with a Pro account. Contact root@offseq.com for access.
External Links
Need enhanced features?
Contact root@offseq.com for Pro access with improved analysis and higher rate limits.