CVE-2021-47369: Vulnerability in Linux Linux
In the Linux kernel, the following vulnerability has been resolved: s390/qeth: fix NULL deref in qeth_clear_working_pool_list() When qeth_set_online() calls qeth_clear_working_pool_list() to roll back after an error exit from qeth_hardsetup_card(), we are at risk of accessing card->qdio.in_q before it was allocated by qeth_alloc_qdio_queues() via qeth_mpc_initialize(). qeth_clear_working_pool_list() then dereferences NULL, and by writing to queue->bufs[i].pool_entry scribbles all over the CPU's lowcore. Resulting in a crash when those lowcore areas are used next (eg. on the next machine-check interrupt). Such a scenario would typically happen when the device is first set online and its queues aren't allocated yet. An early IO error or certain misconfigs (eg. mismatched transport mode, bad portno) then cause us to error out from qeth_hardsetup_card() with card->qdio.in_q still being NULL. Fix it by checking the pointer for NULL before accessing it. Note that we also have (rare) paths inside qeth_mpc_initialize() where a configuration change can cause us to free the existing queues, expecting that subsequent code will allocate them again. If we then error out before that re-allocation happens, the same bug occurs. Root-caused-by: Heiko Carstens <hca@linux.ibm.com>
AI Analysis
Technical Summary
CVE-2021-47369 is a medium severity vulnerability in the Linux kernel affecting the s390 architecture's qeth network driver. The flaw arises from a NULL pointer dereference in the function qeth_clear_working_pool_list(). Specifically, when the qeth_set_online() function attempts to roll back after an error during qeth_hardsetup_card(), it may access the card->qdio.in_q pointer before it has been allocated by qeth_alloc_qdio_queues() via qeth_mpc_initialize(). This results in qeth_clear_working_pool_list() dereferencing a NULL pointer and subsequently writing to queue->bufs[i].pool_entry, which corrupts the CPU's lowcore memory area. The lowcore is a critical CPU data structure on s390 systems, and corruption leads to system crashes, particularly when the CPU next uses the lowcore during machine-check interrupts. The vulnerability typically manifests when the device is first brought online but its queues are not yet allocated, and an early IO error or misconfiguration (such as mismatched transport mode or incorrect port number) causes an error exit from qeth_hardsetup_card() with card->qdio.in_q still NULL. Additionally, rare code paths in qeth_mpc_initialize() where configuration changes free existing queues without reallocation can also trigger this bug if an error occurs before reallocation. The fix involves adding a NULL pointer check before accessing card->qdio.in_q to prevent dereferencing NULL. This vulnerability is specific to the s390 architecture's qeth driver in Linux kernel versions prior to the patch. It does not affect confidentiality or integrity but causes availability impact due to system crashes. Exploitation requires local privileges with low complexity and no user interaction. No known exploits are currently reported in the wild.
Potential Impact
For European organizations running Linux on IBM Z mainframe systems (s390 architecture), this vulnerability poses a risk of system crashes leading to denial of service. Such systems are often used in critical infrastructure, financial services, and large enterprises for high-reliability workloads. An unexpected crash could disrupt business operations, cause downtime, and potentially impact service level agreements. Although the vulnerability does not expose data confidentiality or integrity, the availability impact can be significant, especially in environments requiring high uptime. The requirement for local privileges limits remote exploitation, but insider threats or compromised accounts could trigger the issue. Organizations relying on s390 Linux systems with qeth network devices should prioritize patching to maintain operational stability. Given the niche architecture, the impact is limited to organizations using IBM Z mainframes, which are more common in large enterprises and government sectors in Europe.
Mitigation Recommendations
1. Apply the official Linux kernel patches that address CVE-2021-47369 as soon as possible to ensure the NULL pointer dereference is fixed. 2. For environments where immediate patching is not feasible, consider disabling or avoiding bringing qeth network devices online until a patch is applied, especially if misconfigurations or IO errors are suspected. 3. Implement strict configuration management and validation to prevent misconfigurations such as mismatched transport modes or incorrect port numbers that can trigger the error paths. 4. Monitor system logs and kernel messages for early IO errors or qeth driver errors that may indicate attempts to trigger this vulnerability. 5. Limit local user privileges to trusted personnel only, reducing the risk of exploitation by unauthorized users. 6. Conduct thorough testing in staging environments before deploying patches to production to avoid unintended disruptions. 7. Maintain up-to-date backups and disaster recovery plans to mitigate the impact of potential system crashes.
Affected Countries
Germany, United Kingdom, France, Netherlands, Italy, Spain, Switzerland, Belgium
CVE-2021-47369: Vulnerability in Linux Linux
Description
In the Linux kernel, the following vulnerability has been resolved: s390/qeth: fix NULL deref in qeth_clear_working_pool_list() When qeth_set_online() calls qeth_clear_working_pool_list() to roll back after an error exit from qeth_hardsetup_card(), we are at risk of accessing card->qdio.in_q before it was allocated by qeth_alloc_qdio_queues() via qeth_mpc_initialize(). qeth_clear_working_pool_list() then dereferences NULL, and by writing to queue->bufs[i].pool_entry scribbles all over the CPU's lowcore. Resulting in a crash when those lowcore areas are used next (eg. on the next machine-check interrupt). Such a scenario would typically happen when the device is first set online and its queues aren't allocated yet. An early IO error or certain misconfigs (eg. mismatched transport mode, bad portno) then cause us to error out from qeth_hardsetup_card() with card->qdio.in_q still being NULL. Fix it by checking the pointer for NULL before accessing it. Note that we also have (rare) paths inside qeth_mpc_initialize() where a configuration change can cause us to free the existing queues, expecting that subsequent code will allocate them again. If we then error out before that re-allocation happens, the same bug occurs. Root-caused-by: Heiko Carstens <hca@linux.ibm.com>
AI-Powered Analysis
Technical Analysis
CVE-2021-47369 is a medium severity vulnerability in the Linux kernel affecting the s390 architecture's qeth network driver. The flaw arises from a NULL pointer dereference in the function qeth_clear_working_pool_list(). Specifically, when the qeth_set_online() function attempts to roll back after an error during qeth_hardsetup_card(), it may access the card->qdio.in_q pointer before it has been allocated by qeth_alloc_qdio_queues() via qeth_mpc_initialize(). This results in qeth_clear_working_pool_list() dereferencing a NULL pointer and subsequently writing to queue->bufs[i].pool_entry, which corrupts the CPU's lowcore memory area. The lowcore is a critical CPU data structure on s390 systems, and corruption leads to system crashes, particularly when the CPU next uses the lowcore during machine-check interrupts. The vulnerability typically manifests when the device is first brought online but its queues are not yet allocated, and an early IO error or misconfiguration (such as mismatched transport mode or incorrect port number) causes an error exit from qeth_hardsetup_card() with card->qdio.in_q still NULL. Additionally, rare code paths in qeth_mpc_initialize() where configuration changes free existing queues without reallocation can also trigger this bug if an error occurs before reallocation. The fix involves adding a NULL pointer check before accessing card->qdio.in_q to prevent dereferencing NULL. This vulnerability is specific to the s390 architecture's qeth driver in Linux kernel versions prior to the patch. It does not affect confidentiality or integrity but causes availability impact due to system crashes. Exploitation requires local privileges with low complexity and no user interaction. No known exploits are currently reported in the wild.
Potential Impact
For European organizations running Linux on IBM Z mainframe systems (s390 architecture), this vulnerability poses a risk of system crashes leading to denial of service. Such systems are often used in critical infrastructure, financial services, and large enterprises for high-reliability workloads. An unexpected crash could disrupt business operations, cause downtime, and potentially impact service level agreements. Although the vulnerability does not expose data confidentiality or integrity, the availability impact can be significant, especially in environments requiring high uptime. The requirement for local privileges limits remote exploitation, but insider threats or compromised accounts could trigger the issue. Organizations relying on s390 Linux systems with qeth network devices should prioritize patching to maintain operational stability. Given the niche architecture, the impact is limited to organizations using IBM Z mainframes, which are more common in large enterprises and government sectors in Europe.
Mitigation Recommendations
1. Apply the official Linux kernel patches that address CVE-2021-47369 as soon as possible to ensure the NULL pointer dereference is fixed. 2. For environments where immediate patching is not feasible, consider disabling or avoiding bringing qeth network devices online until a patch is applied, especially if misconfigurations or IO errors are suspected. 3. Implement strict configuration management and validation to prevent misconfigurations such as mismatched transport modes or incorrect port numbers that can trigger the error paths. 4. Monitor system logs and kernel messages for early IO errors or qeth driver errors that may indicate attempts to trigger this vulnerability. 5. Limit local user privileges to trusted personnel only, reducing the risk of exploitation by unauthorized users. 6. Conduct thorough testing in staging environments before deploying patches to production to avoid unintended disruptions. 7. Maintain up-to-date backups and disaster recovery plans to mitigate the impact of potential system crashes.
Affected Countries
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
- 2024-05-21T14:58:30.810Z
- Cisa Enriched
- true
- Cvss Version
- 3.1
- State
- PUBLISHED
Threat ID: 682d9819c4522896dcbd8e17
Added to database: 5/21/2025, 9:08:41 AM
Last enriched: 7/5/2025, 9:55:35 AM
Last updated: 7/29/2025, 9:33:22 AM
Views: 10
Related Threats
CVE-2025-9002: SQL Injection in Surbowl dormitory-management-php
MediumCVE-2025-9001: Stack-based Buffer Overflow in LemonOS
MediumCVE-2025-8867: CWE-79 Improper Neutralization of Input During Web Page Generation ('Cross-site Scripting') in iqonicdesign Graphina – Elementor Charts and Graphs
MediumCVE-2025-8680: CWE-918 Server-Side Request Forgery (SSRF) in bplugins B Slider- Gutenberg Slider Block for WP
MediumCVE-2025-8676: CWE-200 Exposure of Sensitive Information to an Unauthorized Actor in bplugins B Slider- Gutenberg Slider Block for WP
MediumActions
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.