Skip to main content

CVE-2021-47163: Vulnerability in Linux Linux

High
VulnerabilityCVE-2021-47163cvecve-2021-47163
Published: Mon Mar 25 2024 (03/25/2024, 09:16:16 UTC)
Source: CVE
Vendor/Project: Linux
Product: Linux

Description

In the Linux kernel, the following vulnerability has been resolved: tipc: wait and exit until all work queues are done On some host, a crash could be triggered simply by repeating these commands several times: # modprobe tipc # tipc bearer enable media udp name UDP1 localip 127.0.0.1 # rmmod tipc [] BUG: unable to handle kernel paging request at ffffffffc096bb00 [] Workqueue: events 0xffffffffc096bb00 [] Call Trace: [] ? process_one_work+0x1a7/0x360 [] ? worker_thread+0x30/0x390 [] ? create_worker+0x1a0/0x1a0 [] ? kthread+0x116/0x130 [] ? kthread_flush_work_fn+0x10/0x10 [] ? ret_from_fork+0x35/0x40 When removing the TIPC module, the UDP tunnel sock will be delayed to release in a work queue as sock_release() can't be done in rtnl_lock(). If the work queue is schedule to run after the TIPC module is removed, kernel will crash as the work queue function cleanup_beareri() code no longer exists when trying to invoke it. To fix it, this patch introduce a member wq_count in tipc_net to track the numbers of work queues in schedule, and wait and exit until all work queues are done in tipc_exit_net().

AI-Powered Analysis

AILast updated: 06/26/2025, 18:36:13 UTC

Technical Analysis

CVE-2021-47163 is a vulnerability identified in the Linux kernel's Transparent Inter-Process Communication (TIPC) module. The flaw arises from improper handling of work queues during the removal of the TIPC kernel module. Specifically, when the TIPC module is removed (rmmod tipc), the UDP tunnel socket associated with it is delayed in release because sock_release() cannot be executed while holding the rtnl_lock(). This delay causes the work queue function cleanup_beareri() to be scheduled after the module has been unloaded, leading to a kernel crash due to a use-after-free or invalid function pointer dereference. The crash is triggered by repeated execution of commands that load the TIPC module, enable the UDP bearer, and then remove the module. The root cause is that the work queue function code no longer exists when the work queue attempts to run, causing a kernel paging fault. The fix introduced involves adding a wq_count member to tipc_net to track the number of scheduled work queues and ensuring that the module exit function (tipc_exit_net()) waits until all work queues have completed before allowing the module to be fully removed. This prevents the kernel from invoking non-existent code and crashing. No known exploits are reported in the wild, and the vulnerability affects Linux kernel versions prior to the patch. The vulnerability is a denial-of-service (DoS) type, causing kernel crashes and potential system instability.

Potential Impact

For European organizations, the primary impact of CVE-2021-47163 is the risk of denial-of-service conditions on Linux systems utilizing the TIPC module, particularly those that employ UDP bearers for inter-process or inter-node communication. Systems affected may experience kernel panics and crashes, leading to service interruptions, potential data loss, and operational downtime. This can be critical for infrastructure providers, telecom operators, and enterprises relying on Linux-based servers for critical applications. Although no remote code execution or privilege escalation is indicated, repeated exploitation could disrupt services and impact availability. Organizations running containerized environments or cloud platforms with Linux kernels that include TIPC support may also be vulnerable. Given the kernel-level nature of the crash, recovery typically requires a system reboot, which could affect high-availability environments. The absence of known exploits reduces immediate risk, but the vulnerability should be addressed promptly to prevent potential exploitation or accidental triggering in production environments.

Mitigation Recommendations

1. Apply the latest Linux kernel patches that address CVE-2021-47163 as soon as they become available from your Linux distribution vendor. This is the definitive fix preventing the kernel crash. 2. If patching is not immediately possible, consider disabling the TIPC module (modprobe -r tipc) and avoid loading it unless absolutely necessary. 3. Review and audit any scripts or automation that load and unload the TIPC module or configure UDP bearers to ensure they do not repeatedly trigger the vulnerable sequence. 4. Implement kernel crash monitoring and alerting to detect any unexpected panics related to TIPC module usage. 5. For critical systems, schedule maintenance windows to apply patches and reboot systems to clear any unstable states caused by this vulnerability. 6. Engage with Linux distribution security advisories and subscribe to relevant mailing lists to stay informed about updates and backported fixes. 7. For environments using custom or embedded Linux kernels, coordinate with vendors or maintainers to integrate the patch promptly. 8. Consider isolating or limiting access to systems that require TIPC functionality to reduce exposure.

Need more detailed analysis?Get Pro

Technical Details

Data Version
5.1
Assigner Short Name
Linux
Date Reserved
2024-03-25T09:12:14.109Z
Cisa Enriched
true
Cvss Version
null
State
PUBLISHED

Threat ID: 682d9835c4522896dcbe9f09

Added to database: 5/21/2025, 9:09:09 AM

Last enriched: 6/26/2025, 6:36:13 PM

Last updated: 8/14/2025, 8:55:27 AM

Views: 20

Actions

PRO

Updates to AI analysis are available only with a Pro account. Contact root@offseq.com for access.

Please log in to the Console to use AI analysis features.

Need enhanced features?

Contact root@offseq.com for Pro access with improved analysis and higher rate limits.

Latest Threats