CVE & CISA-KEV Catalog

CVE-2021-47069

HIGH
7.8
CVSS v3
NVD

Description

In the Linux kernel, the following vulnerability has been resolved: ipc/mqueue, msg, sem: avoid relying on a stack reference past its expiry do_mq_timedreceive calls wq_sleep with a stack local address. The sender (do_mq_timedsend) uses this address to later call pipelined_send. This leads to a very hard to trigger race where a do_mq_timedreceive call might return and leave do_mq_timedsend to rely on an invalid address, causing the following crash: RIP: 0010:wake_q_add_safe+0x13/0x60 Call Trace: __x64_sys_mq_timedsend+0x2a9/0x490 do_syscall_64+0x80/0x680 entry_SYSCALL_64_after_hwframe+0x44/0xa9 RIP: 0033:0x7f5928e40343 The race occurs as: 1. do_mq_timedreceive calls wq_sleep with the address of `struct ext_wait_queue` on function stack (aliased as `ewq_addr` here) - it holds a valid `struct ext_wait_queue *` as long as the stack has not been overwritten. 2. `ewq_addr` gets added to info->e_wait_q[RECV].list in wq_add, and do_mq_timedsend receives it via wq_get_first_waiter(info, RECV) to call __pipelined_op. 3. Sender calls __pipelined_op::smp_store_release(&this->state, STATE_READY). Here is where the race window begins. (`this` is `ewq_addr`.) 4. If the receiver wakes up now in do_mq_timedreceive::wq_sleep, it will see `state == STATE_READY` and break. 5. do_mq_timedreceive returns, and `ewq_addr` is no longer guaranteed to be a `struct ext_wait_queue *` since it was on do_mq_timedreceive's stack. (Although the address may not get overwritten until another function happens to touch it, which means it can persist around for an indefinite time.) 6. do_mq_timedsend::__pipelined_op() still believes `ewq_addr` is a `struct ext_wait_queue *`, and uses it to find a task_struct to pass to the wake_q_add_safe call. In the lucky case where nothing has overwritten `ewq_addr` yet, `ewq_addr->task` is the right task_struct. In the unlucky case, __pipelined_op::wake_q_add_safe gets handed a bogus address as the receiver's task_struct causing the crash. do_mq_timedsend::__pipelined_op() should not dereference `this` after setting STATE_READY, as the receiver counterpart is now free to return. Change __pipelined_op to call wake_q_add_safe on the receiver's task_struct returned by get_task_struct, instead of dereferencing `this` which sits on the receiver's stack. As Manfred pointed out, the race potentially also exists in ipc/msg.c::expunge_all and ipc/sem.c::wake_up_sem_queue_prepare. Fix those in the same way.

How to fix

Remediation Available
linuxDebian
Fixed in:5.10.40-1CVE-2021-47069
Fixed in:5.10.40-1CVE-2021-47069
Fixed in:5.10.40-1CVE-2021-47069
Fixed in:5.10.40-1CVE-2021-47069
bpftoolRocky
Fixed in:0:4.18.0-553.8.1.el8_10RHSA-2024:4211
Fixed in:0:4.18.0-372.119.1.el8_6RHSA-2024:5692
Fixed in:0:4.18.0-477.70.1.el8_8RHSA-2024:6206
Fixed in:0:4.18.0-372.119.1.el8_6RHSA-2024:5692
Fixed in:0:4.18.0-372.119.1.el8_6RHSA-2024:5692
Fixed in:0:4.18.0-477.70.1.el8_8RHSA-2024:6206
Fixed in:0:4.18.0-372.119.1.el8_6RHSA-2024:5692
Fixed in:0:4.18.0-477.70.1.el8_8RHSA-2024:6206
bpftoolRed Hat / RHEL
Fixed in:0:4.18.0-372.119.1.el8_6RHSA-2024:5692
Fixed in:0:4.18.0-553.8.1.el8_10RHSA-2024:4211
Fixed in:0:4.18.0-553.8.1.el8_10RHSA-2024:4211
Fixed in:0:4.18.0-553.8.1.el8_10RHSA-2024:4211
Fixed in:0:4.18.0-372.119.1.el8_6RHSA-2024:5692
Fixed in:0:4.18.0-477.70.1.el8_8RHSA-2024:6206
Fixed in:0:4.18.0-372.119.1.el8_6RHSA-2024:5692
Fixed in:0:4.18.0-477.70.1.el8_8RHSA-2024:6206
bpftool-debuginfoRed Hat / RHEL
Fixed in:0:4.18.0-553.8.1.el8_10RHSA-2024:4211
Fixed in:0:4.18.0-477.70.1.el8_8RHSA-2024:6206
Fixed in:0:4.18.0-553.8.1.el8_10RHSA-2024:4211
Fixed in:0:4.18.0-477.70.1.el8_8RHSA-2024:6206
Fixed in:0:4.18.0-372.119.1.el8_6RHSA-2024:5692
Fixed in:0:4.18.0-553.8.1.el8_10RHSA-2024:4211
Fixed in:0:4.18.0-372.119.1.el8_6RHSA-2024:5692
Fixed in:0:4.18.0-372.119.1.el8_6RHSA-2024:5692
bpftool-debuginfoRocky
Fixed in:0:4.18.0-372.119.1.el8_6RHSA-2024:5692
Fixed in:0:4.18.0-477.70.1.el8_8RHSA-2024:6206
Fixed in:0:4.18.0-372.119.1.el8_6RHSA-2024:5692
Fixed in:0:4.18.0-372.119.1.el8_6RHSA-2024:5692
Fixed in:0:4.18.0-477.70.1.el8_8RHSA-2024:6206
Fixed in:0:4.18.0-553.8.1.el8_10RHSA-2024:4211
Fixed in:0:4.18.0-553.8.1.el8_10RHSA-2024:4211
Fixed in:0:4.18.0-553.8.1.el8_10RHSA-2024:4211
kernelRocky
Fixed in:0:4.18.0-553.8.1.el8_10RHSA-2024:4211
Fixed in:0:4.18.0-553.8.1.el8_10RHSA-2024:4211
Fixed in:0:4.18.0-477.70.1.el8_8RHSA-2024:6206
Fixed in:0:4.18.0-477.70.1.el8_8RHSA-2024:6206
Fixed in:0:4.18.0-477.70.1.el8_8RHSA-2024:6206
Fixed in:0:4.18.0-477.70.1.el8_8RHSA-2024:6206
Fixed in:0:4.18.0-477.70.1.el8_8RHSA-2024:6206
Fixed in:0:4.18.0-372.119.1.el8_6RHSA-2024:5692
kernelRed Hat / RHEL
Fixed in:0:4.18.0-553.8.1.el8_10RHSA-2024:4211
Fixed in:0:4.18.0-477.70.1.el8_8RHSA-2024:6206
Fixed in:0:4.18.0-477.70.1.el8_8RHSA-2024:6206
Fixed in:0:4.18.0-477.70.1.el8_8RHSA-2024:6206
Fixed in:0:4.18.0-477.70.1.el8_8RHSA-2024:6206
Fixed in:0:4.18.0-477.70.1.el8_8RHSA-2024:6206
Fixed in:0:4.18.0-553.8.1.el8_10RHSA-2024:4211
Fixed in:0:4.18.0-553.8.1.el8_10RHSA-2024:4211
kernel-abi-stablelistsRocky
Fixed in:0:4.18.0-553.8.1.el8_10RHSA-2024:4211
Fixed in:0:4.18.0-477.70.1.el8_8RHSA-2024:6206
Fixed in:0:4.18.0-372.119.1.el8_6RHSA-2024:5692
kernel-abi-stablelistsRed Hat / RHEL
Fixed in:0:4.18.0-372.119.1.el8_6RHSA-2024:5692
Fixed in:0:4.18.0-553.8.1.el8_10RHSA-2024:4211
Fixed in:0:4.18.0-477.70.1.el8_8RHSA-2024:6206
kernel-coreRed Hat / RHEL
Fixed in:0:4.18.0-477.70.1.el8_8RHSA-2024:6206
Fixed in:0:4.18.0-372.119.1.el8_6RHSA-2024:5692
Fixed in:0:4.18.0-553.8.1.el8_10RHSA-2024:4211
Fixed in:0:4.18.0-553.8.1.el8_10RHSA-2024:4211
Fixed in:0:4.18.0-372.119.1.el8_6RHSA-2024:5692
Fixed in:0:4.18.0-553.8.1.el8_10RHSA-2024:4211
Fixed in:0:4.18.0-372.119.1.el8_6RHSA-2024:5692
Fixed in:0:4.18.0-553.8.1.el8_10RHSA-2024:4211
kernel-coreRocky
Fixed in:0:4.18.0-477.70.1.el8_8RHSA-2024:6206
Fixed in:0:4.18.0-553.8.1.el8_10RHSA-2024:4211
Fixed in:0:4.18.0-553.8.1.el8_10RHSA-2024:4211
Fixed in:0:4.18.0-553.8.1.el8_10RHSA-2024:4211
Fixed in:0:4.18.0-477.70.1.el8_8RHSA-2024:6206
Fixed in:0:4.18.0-372.119.1.el8_6RHSA-2024:5692
Fixed in:0:4.18.0-372.119.1.el8_6RHSA-2024:5692
Fixed in:0:4.18.0-477.70.1.el8_8RHSA-2024:6206
kernel-cross-headersRocky
Fixed in:0:4.18.0-553.8.1.el8_10RHSA-2024:4211
Fixed in:0:4.18.0-553.8.1.el8_10RHSA-2024:4211
Fixed in:0:4.18.0-553.8.1.el8_10RHSA-2024:4211
Fixed in:0:4.18.0-553.8.1.el8_10RHSA-2024:4211
kernel-cross-headersRed Hat / RHEL
Fixed in:0:4.18.0-553.8.1.el8_10RHSA-2024:4211
Fixed in:0:4.18.0-553.8.1.el8_10RHSA-2024:4211
Fixed in:0:4.18.0-553.8.1.el8_10RHSA-2024:4211
Fixed in:0:4.18.0-553.8.1.el8_10RHSA-2024:4211
kernel-debugRed Hat / RHEL
Fixed in:0:4.18.0-372.119.1.el8_6RHSA-2024:5692
Fixed in:0:4.18.0-553.8.1.el8_10RHSA-2024:4211
Fixed in:0:4.18.0-553.8.1.el8_10RHSA-2024:4211
Fixed in:0:4.18.0-477.70.1.el8_8RHSA-2024:6206
Fixed in:0:4.18.0-477.70.1.el8_8RHSA-2024:6206
Fixed in:0:4.18.0-477.70.1.el8_8RHSA-2024:6206
Fixed in:0:4.18.0-477.70.1.el8_8RHSA-2024:6206
Fixed in:0:4.18.0-553.8.1.el8_10RHSA-2024:4211
kernel-debugRocky
Fixed in:0:4.18.0-553.8.1.el8_10RHSA-2024:4211
Fixed in:0:4.18.0-477.70.1.el8_8RHSA-2024:6206
Fixed in:0:4.18.0-477.70.1.el8_8RHSA-2024:6206
Fixed in:0:4.18.0-477.70.1.el8_8RHSA-2024:6206
Fixed in:0:4.18.0-553.8.1.el8_10RHSA-2024:4211
Fixed in:0:4.18.0-372.119.1.el8_6RHSA-2024:5692
Fixed in:0:4.18.0-372.119.1.el8_6RHSA-2024:5692
Fixed in:0:4.18.0-477.70.1.el8_8RHSA-2024:6206
kernel-debug-coreRocky
Fixed in:0:4.18.0-372.119.1.el8_6RHSA-2024:5692
Fixed in:0:4.18.0-553.8.1.el8_10RHSA-2024:4211
Fixed in:0:4.18.0-477.70.1.el8_8RHSA-2024:6206
Fixed in:0:4.18.0-372.119.1.el8_6RHSA-2024:5692
Fixed in:0:4.18.0-477.70.1.el8_8RHSA-2024:6206
Fixed in:0:4.18.0-477.70.1.el8_8RHSA-2024:6206
Fixed in:0:4.18.0-477.70.1.el8_8RHSA-2024:6206
Fixed in:0:4.18.0-372.119.1.el8_6RHSA-2024:5692
kernel-debug-coreRed Hat / RHEL
Fixed in:0:4.18.0-553.8.1.el8_10RHSA-2024:4211
Fixed in:0:4.18.0-372.119.1.el8_6RHSA-2024:5692
Fixed in:0:4.18.0-553.8.1.el8_10RHSA-2024:4211
Fixed in:0:4.18.0-553.8.1.el8_10RHSA-2024:4211
Fixed in:0:4.18.0-477.70.1.el8_8RHSA-2024:6206
Fixed in:0:4.18.0-372.119.1.el8_6RHSA-2024:5692
Fixed in:0:4.18.0-477.70.1.el8_8RHSA-2024:6206
Fixed in:0:4.18.0-553.8.1.el8_10RHSA-2024:4211
kernel-debug-debuginfoRocky
Fixed in:0:4.18.0-477.70.1.el8_8RHSA-2024:6206
Fixed in:0:4.18.0-553.8.1.el8_10RHSA-2024:4211
Fixed in:0:4.18.0-553.8.1.el8_10RHSA-2024:4211
Fixed in:0:4.18.0-553.8.1.el8_10RHSA-2024:4211
Fixed in:0:4.18.0-553.8.1.el8_10RHSA-2024:4211
Fixed in:0:4.18.0-372.119.1.el8_6RHSA-2024:5692
Fixed in:0:4.18.0-372.119.1.el8_6RHSA-2024:5692
Fixed in:0:4.18.0-372.119.1.el8_6RHSA-2024:5692
kernel-debug-debuginfoRed Hat / RHEL
Fixed in:0:4.18.0-553.8.1.el8_10RHSA-2024:4211
Fixed in:0:4.18.0-372.119.1.el8_6RHSA-2024:5692
Fixed in:0:4.18.0-372.119.1.el8_6RHSA-2024:5692
Fixed in:0:4.18.0-372.119.1.el8_6RHSA-2024:5692
Fixed in:0:4.18.0-372.119.1.el8_6RHSA-2024:5692
Fixed in:0:4.18.0-553.8.1.el8_10RHSA-2024:4211
Fixed in:0:4.18.0-477.70.1.el8_8RHSA-2024:6206
Fixed in:0:4.18.0-553.8.1.el8_10RHSA-2024:4211
kernel-debug-develRocky
Fixed in:0:4.18.0-553.8.1.el8_10RHSA-2024:4211
Fixed in:0:4.18.0-372.119.1.el8_6RHSA-2024:5692
Fixed in:0:4.18.0-372.119.1.el8_6RHSA-2024:5692
Fixed in:0:4.18.0-553.8.1.el8_10RHSA-2024:4211
Fixed in:0:4.18.0-372.119.1.el8_6RHSA-2024:5692
Fixed in:0:4.18.0-553.8.1.el8_10RHSA-2024:4211
Fixed in:0:4.18.0-553.8.1.el8_10RHSA-2024:4211
Fixed in:0:4.18.0-372.119.1.el8_6RHSA-2024:5692
kernel-debug-develRed Hat / RHEL
Fixed in:0:4.18.0-477.70.1.el8_8RHSA-2024:6206
Fixed in:0:4.18.0-477.70.1.el8_8RHSA-2024:6206
Fixed in:0:4.18.0-553.8.1.el8_10RHSA-2024:4211
Fixed in:0:4.18.0-477.70.1.el8_8RHSA-2024:6206
Fixed in:0:4.18.0-477.70.1.el8_8RHSA-2024:6206
Fixed in:0:4.18.0-372.119.1.el8_6RHSA-2024:5692
Fixed in:0:4.18.0-553.8.1.el8_10RHSA-2024:4211
Fixed in:0:4.18.0-372.119.1.el8_6RHSA-2024:5692
kernel-debug-modulesRed Hat / RHEL
Fixed in:0:4.18.0-477.70.1.el8_8RHSA-2024:6206
Fixed in:0:4.18.0-372.119.1.el8_6RHSA-2024:5692
Fixed in:0:4.18.0-477.70.1.el8_8RHSA-2024:6206
Fixed in:0:4.18.0-553.8.1.el8_10RHSA-2024:4211
Fixed in:0:4.18.0-372.119.1.el8_6RHSA-2024:5692
Fixed in:0:4.18.0-477.70.1.el8_8RHSA-2024:6206
Fixed in:0:4.18.0-477.70.1.el8_8RHSA-2024:6206
Fixed in:0:4.18.0-553.8.1.el8_10RHSA-2024:4211
kernel-debug-modulesRocky
Fixed in:0:4.18.0-553.8.1.el8_10RHSA-2024:4211
Fixed in:0:4.18.0-553.8.1.el8_10RHSA-2024:4211
Fixed in:0:4.18.0-372.119.1.el8_6RHSA-2024:5692
Fixed in:0:4.18.0-477.70.1.el8_8RHSA-2024:6206
Fixed in:0:4.18.0-477.70.1.el8_8RHSA-2024:6206
Fixed in:0:4.18.0-477.70.1.el8_8RHSA-2024:6206
Fixed in:0:4.18.0-372.119.1.el8_6RHSA-2024:5692
Fixed in:0:4.18.0-372.119.1.el8_6RHSA-2024:5692
kernel-debug-modules-extraRed Hat / RHEL
Fixed in:0:4.18.0-477.70.1.el8_8RHSA-2024:6206
Fixed in:0:4.18.0-553.8.1.el8_10RHSA-2024:4211
Fixed in:0:4.18.0-477.70.1.el8_8RHSA-2024:6206
Fixed in:0:4.18.0-372.119.1.el8_6RHSA-2024:5692
Fixed in:0:4.18.0-477.70.1.el8_8RHSA-2024:6206
Fixed in:0:4.18.0-553.8.1.el8_10RHSA-2024:4211
Fixed in:0:4.18.0-553.8.1.el8_10RHSA-2024:4211
Fixed in:0:4.18.0-372.119.1.el8_6RHSA-2024:5692
kernel-debug-modules-extraRocky
Fixed in:0:4.18.0-372.119.1.el8_6RHSA-2024:5692
Fixed in:0:4.18.0-372.119.1.el8_6RHSA-2024:5692
Fixed in:0:4.18.0-553.8.1.el8_10RHSA-2024:4211
Fixed in:0:4.18.0-372.119.1.el8_6RHSA-2024:5692
Fixed in:0:4.18.0-477.70.1.el8_8RHSA-2024:6206
Fixed in:0:4.18.0-477.70.1.el8_8RHSA-2024:6206
Fixed in:0:4.18.0-553.8.1.el8_10RHSA-2024:4211
Fixed in:0:4.18.0-477.70.1.el8_8RHSA-2024:6206
kernel-debuginfoRocky
Fixed in:0:4.18.0-553.8.1.el8_10RHSA-2024:4211
Fixed in:0:4.18.0-477.70.1.el8_8RHSA-2024:6206
Fixed in:0:4.18.0-372.119.1.el8_6RHSA-2024:5692
Fixed in:0:4.18.0-553.8.1.el8_10RHSA-2024:4211
Fixed in:0:4.18.0-372.119.1.el8_6RHSA-2024:5692
Fixed in:0:4.18.0-372.119.1.el8_6RHSA-2024:5692
Fixed in:0:4.18.0-553.8.1.el8_10RHSA-2024:4211
Fixed in:0:4.18.0-372.119.1.el8_6RHSA-2024:5692
kernel-debuginfoRed Hat / RHEL
Fixed in:0:4.18.0-553.8.1.el8_10RHSA-2024:4211
Fixed in:0:4.18.0-372.119.1.el8_6RHSA-2024:5692
Fixed in:0:4.18.0-553.8.1.el8_10RHSA-2024:4211
Fixed in:0:4.18.0-553.8.1.el8_10RHSA-2024:4211
Fixed in:0:4.18.0-477.70.1.el8_8RHSA-2024:6206
Fixed in:0:4.18.0-477.70.1.el8_8RHSA-2024:6206
Fixed in:0:4.18.0-372.119.1.el8_6RHSA-2024:5692
Fixed in:0:4.18.0-372.119.1.el8_6RHSA-2024:5692
kernel-debuginfo-common-aarch64Red Hat / RHEL
Fixed in:0:4.18.0-553.8.1.el8_10RHSA-2024:4211
Fixed in:0:4.18.0-477.70.1.el8_8RHSA-2024:6206
Fixed in:0:4.18.0-372.119.1.el8_6RHSA-2024:5692
kernel-debuginfo-common-aarch64Rocky
Fixed in:0:4.18.0-477.70.1.el8_8RHSA-2024:6206
Fixed in:0:4.18.0-372.119.1.el8_6RHSA-2024:5692
Fixed in:0:4.18.0-553.8.1.el8_10RHSA-2024:4211
kernel-debuginfo-common-ppc64leRed Hat / RHEL
Fixed in:0:4.18.0-372.119.1.el8_6RHSA-2024:5692
Fixed in:0:4.18.0-477.70.1.el8_8RHSA-2024:6206
Fixed in:0:4.18.0-553.8.1.el8_10RHSA-2024:4211

This vulnerability affects an unusually large number of packages. The highest-confidence fixes are shown above; the full list is longer. Check the referenced advisories for complete coverage.

TridentStack Control can deploy fixes like this automatically across your Windows, macOS, and Linux fleet. See how it works

Remediation is compiled from vendor and distribution security advisories. Always confirm against the linked source for your exact version and platform.

CVSS v3 Vector

Exploitability

Attack VectorLocal
Attack ComplexityLow
Privileges RequiredLow
User InteractionNone
ScopeUnchanged

Impact

ConfidentialityHigh
IntegrityHigh
AvailabilityHigh

CVSS:3.1/AV:L/AC:L/PR:L/UI:N/S:U/C:H/I:H/A:H

Exploit Intelligence

0.26%probability of exploitation in 30 days
18thpercentile

Low risk: more likely to be exploited than 18% of all known CVEs.

References

Related Vulnerabilities

Other CWE-672 vulnerabilities, ordered by exploit likelihood. View all

CVESeverityCVSSEPSSExploitedFix
CVE-2024-23638Medium6.560%-Fix
CVE-2020-11027Medium6.114%-Fix
CVE-2019-17638Critical9.411%-Fix
CVE-2009-3547High7.04.9%--
CVE-2019-15691High7.24.7%-Fix
CVE-2020-24030Critical9.82.7%--

Common questions

How do I fix CVE-2021-47069?

Published advisories record a fix for 103 affected products. The "How to fix" section on this page lists the fixed version and source advisory for each one, so apply the entry matching what you actually run.

Is CVE-2021-47069 being actively exploited?

Not that we know of. CVE-2021-47069 is not in the CISA Known Exploited Vulnerabilities catalog. Its EPSS score of 0.26% is the estimated probability that it will be exploited in the next 30 days. That is higher than 18% of all scored CVEs.

How severe is CVE-2021-47069?

CVE-2021-47069 has a CVSS v3 base score of 7.8, rated high. CVSS rates the technical impact if the vulnerability is exploited, not how likely that is, so weigh it alongside the exploit-prediction score when you decide what to patch first.

What does CVE-2021-47069 affect?

Published advisories record a fix for linux (Debian), bpftool (Rocky), bpftool (Red Hat / RHEL), bpftool-debuginfo (Red Hat / RHEL), and 99 more. Only products with a sourced advisory are listed, so treat this as what we can cite rather than a complete inventory.

Embed a live status badge for CVE-2021-47069
CVE-2021-47069 severity badge

Markdown

[![CVE-2021-47069](https://tridentstack.com/cve/badge/CVE-2021-47069.svg)](https://tridentstack.com/cve/CVE-2021-47069)

HTML

<a href="https://tridentstack.com/cve/CVE-2021-47069"><img src="https://tridentstack.com/cve/badge/CVE-2021-47069.svg" alt="CVE-2021-47069"></a>

Find and fix vulnerabilities across your fleet

TridentStack Control continuously scans your Windows, macOS, and Linux fleet for known vulnerabilities, prioritizes them by severity and active exploitation, and patches them automatically.

See how it worksStart freeThis CVE lookup is free and always will be.

This product uses NVD data but is not endorsed or certified by the NVD. EPSS scores courtesy of FIRST.org (https://www.first.org/epss). Source: CISA KEV Catalog. Data as of 2026-08-04.