CVE-2021-47603
Severity CVSS v4.0:
Pending analysis
Type:
Unavailable / Other
Publication date:
19/06/2024
Last modified:
31/10/2024
Description
In the Linux kernel, the following vulnerability has been resolved:<br />
<br />
audit: improve robustness of the audit queue handling<br />
<br />
If the audit daemon were ever to get stuck in a stopped state the<br />
kernel&#39;s kauditd_thread() could get blocked attempting to send audit<br />
records to the userspace audit daemon. With the kernel thread<br />
blocked it is possible that the audit queue could grow unbounded as<br />
certain audit record generating events must be exempt from the queue<br />
limits else the system enter a deadlock state.<br />
<br />
This patch resolves this problem by lowering the kernel thread&#39;s<br />
socket sending timeout from MAX_SCHEDULE_TIMEOUT to HZ/10 and tweaks<br />
the kauditd_send_queue() function to better manage the various audit<br />
queues when connection problems occur between the kernel and the<br />
audit daemon. With this patch, the backlog may temporarily grow<br />
beyond the defined limits when the audit daemon is stopped and the<br />
system is under heavy audit pressure, but kauditd_thread() will<br />
continue to make progress and drain the queues as it would for other<br />
connection problems. For example, with the audit daemon put into a<br />
stopped state and the system configured to audit every syscall it<br />
was still possible to shutdown the system without a kernel panic,<br />
deadlock, etc.; granted, the system was slow to shutdown but that is<br />
to be expected given the extreme pressure of recording every syscall.<br />
<br />
The timeout value of HZ/10 was chosen primarily through<br />
experimentation and this developer&#39;s "gut feeling". There is likely<br />
no one perfect value, but as this scenario is limited in scope (root<br />
privileges would be needed to send SIGSTOP to the audit daemon), it<br />
is likely not worth exposing this as a tunable at present. This can<br />
always be done at a later date if it proves necessary.
Impact
Base Score 3.x
4.40
Severity 3.x
MEDIUM
Vulnerable products and versions
| CPE | From | Up to |
|---|---|---|
| cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:* | 4.10.7 (including) | 4.11 (excluding) |
| cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:* | 4.11 (including) | 4.14.259 (excluding) |
| cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:* | 4.15 (including) | 4.19.222 (excluding) |
| cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:* | 4.20 (including) | 5.4.168 (excluding) |
| cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:* | 5.5 (including) | 5.10.88 (excluding) |
| cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:* | 5.11 (including) | 5.15.11 (excluding) |
| cpe:2.3:o:linux:linux_kernel:5.16:rc1:*:*:*:*:*:* | ||
| cpe:2.3:o:linux:linux_kernel:5.16:rc2:*:*:*:*:*:* | ||
| cpe:2.3:o:linux:linux_kernel:5.16:rc3:*:*:*:*:*:* | ||
| cpe:2.3:o:linux:linux_kernel:5.16:rc4:*:*:*:*:*:* | ||
| cpe:2.3:o:linux:linux_kernel:5.16:rc5:*:*:*:*:*:* |
To consult the complete list of CPE names with products and versions, see this page
References to Advisories, Solutions, and Tools
- https://git.kernel.org/stable/c/0d3277eabd542fb662be23696e5ec9f390d688e1
- https://git.kernel.org/stable/c/4cc6badff97f74d0fce65f9784b5df3b64e4250b
- https://git.kernel.org/stable/c/75fdb751f84727d614deea0571a1490c3225d83a
- https://git.kernel.org/stable/c/8389f50ceb854cb437fefb9330d5024ed3c7c1f5
- https://git.kernel.org/stable/c/a5f4d17daf2e6cd7c1d9676b476147f6b4ac53f2
- https://git.kernel.org/stable/c/f4b3ee3c85551d2d343a3ba159304066523f730f



