CVE-2023-53029 Vulnerability Analysis & Exploit Details

CVE-2023-53029
Vulnerability Scoring

5.5
/10
Significant Risk

Security assessments indicate that CVE-2023-53029 presents a notable risk, potentially requiring prompt mitigation.

Attack Complexity Details

  • Attack Complexity: Low
    Exploits can be performed without significant complexity or special conditions.
  • Attack Vector: Local
    Vulnerability requires local system access.
  • Privileges Required: Low
    Some privileges are necessary to exploit the vulnerability.
  • Scope: Unchanged
    Exploit remains within the originally vulnerable component.
  • User Interaction: None
    No user interaction is necessary for exploitation.

CVE-2023-53029 Details

Status: Analyzed

Last updated: 🕡 31 Oct 2025, 18:56 UTC
Originally published on: 🕔 27 Mar 2025, 17:15 UTC

Time between publication and last update: 218 days

CVSS Release: version 3

CVSS3 Source

nvd@nist.gov

CVSS3 Type

Primary

CVSS3 Vector

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

CVE-2023-53029 Vulnerability Summary

CVE-2023-53029: In the Linux kernel, the following vulnerability has been resolved: octeontx2-pf: Fix the use of GFP_KERNEL in atomic context on rt The commit 4af1b64f80fb ("octeontx2-pf: Fix lmtst ID used in aura free") uses the get/put_cpu() to protect the usage of percpu pointer in ->aura_freeptr() callback, but it also unnecessarily disable the preemption for the blockable memory allocation. The commit 87b93b678e95 ("octeontx2-pf: Avoid use of GFP_KERNEL in atomic context") tried to fix these sleep inside atomic warnings. But it only fix the one for the non-rt kernel. For the rt kernel, we still get the similar warnings like below. BUG: sleeping function called from invalid context at kernel/locking/spinlock_rt.c:46 in_atomic(): 1, irqs_disabled(): 0, non_block: 0, pid: 1, name: swapper/0 preempt_count: 1, expected: 0 RCU nest depth: 0, expected: 0 3 locks held by swapper/0/1: #0: ffff800009fc5fe8 (rtnl_mutex){+.+.}-{3:3}, at: rtnl_lock+0x24/0x30 #1: ffff000100c276c0 (&mbox->lock){+.+.}-{3:3}, at: otx2_init_hw_resources+0x8c/0x3a4 #2: ffffffbfef6537e0 (&cpu_rcache->lock){+.+.}-{2:2}, at: alloc_iova_fast+0x1ac/0x2ac Preemption disabled at: [<ffff800008b1908c>] otx2_rq_aura_pool_init+0x14c/0x284 CPU: 20 PID: 1 Comm: swapper/0 Tainted: G W 6.2.0-rc3-rt1-yocto-preempt-rt #1 Hardware name: Marvell OcteonTX CN96XX board (DT) Call trace: dump_backtrace.part.0+0xe8/0xf4 show_stack+0x20/0x30 dump_stack_lvl+0x9c/0xd8 dump_stack+0x18/0x34 __might_resched+0x188/0x224 rt_spin_lock+0x64/0x110 alloc_iova_fast+0x1ac/0x2ac iommu_dma_alloc_iova+0xd4/0x110 __iommu_dma_map+0x80/0x144 iommu_dma_map_page+0xe8/0x260 dma_map_page_attrs+0xb4/0xc0 __otx2_alloc_rbuf+0x90/0x150 otx2_rq_aura_pool_init+0x1c8/0x284 otx2_init_hw_resources+0xe4/0x3a4 otx2_open+0xf0/0x610 __dev_open+0x104/0x224 __dev_change_flags+0x1e4/0x274 dev_change_flags+0x2c/0x7c ic_open_devs+0x124/0x2f8 ip_auto_config+0x180/0x42c do_one_initcall+0x90/0x4dc do_basic_setup+0x10c/0x14c kernel_init_freeable+0x10c/0x13c kernel_init+0x2c/0x140 ret_from_fork+0x10/0x20 Of course, we can shuffle the get/put_cpu() to only wrap the invocation of ->aura_freeptr() as what commit 87b93b678e95 does. But there are only two ->aura_freeptr() callbacks, otx2_aura_freeptr() and cn10k_aura_freeptr(). There is no usage of perpcu variable in the otx2_aura_freeptr() at all, so the get/put_cpu() seems redundant to it. We can move the get/put_cpu() into the corresponding callback which really has the percpu variable usage and avoid the sprinkling of get/put_cpu() in several places.

Assessing the Risk of CVE-2023-53029

Access Complexity Graph

The exploitability of CVE-2023-53029 depends on two key factors: attack complexity (the level of effort required to execute an exploit) and privileges required (the access level an attacker needs).

Exploitability Analysis for CVE-2023-53029

CVE-2023-53029 presents an accessible attack vector with minimal effort required. Restricting access controls and implementing security updates are critical to reducing exploitation risks.

Understanding AC and PR

A lower complexity and fewer privilege requirements make exploitation easier. Security teams should evaluate these aspects to determine the urgency of mitigation strategies, such as patch management and access control policies.

Attack Complexity (AC) measures the difficulty in executing an exploit. A high AC means that specific conditions must be met, making an attack more challenging, while a low AC means the vulnerability can be exploited with minimal effort.

Privileges Required (PR) determine the level of system access necessary for an attack. Vulnerabilities requiring no privileges are more accessible to attackers, whereas high privilege requirements limit exploitation to authorized users with elevated access.

CVSS Score Breakdown Chart

Above is the CVSS Sub-score Breakdown for CVE-2023-53029, illustrating how Base, Impact, and Exploitability factors combine to form the overall severity rating. A higher sub-score typically indicates a more severe or easier-to-exploit vulnerability.

CIA Impact Analysis

Below is the Impact Analysis for CVE-2023-53029, showing how Confidentiality, Integrity, and Availability might be affected if the vulnerability is exploited. Higher values usually signal greater potential damage.

  • Confidentiality: None
    CVE-2023-53029 has no significant impact on data confidentiality.
  • Integrity: None
    CVE-2023-53029 poses no threat to data integrity.
  • Availability: High
    CVE-2023-53029 can disrupt system operations, potentially causing complete denial of service (DoS).

CVE-2023-53029 References

External References

CWE Common Weakness Enumeration

CWE-667

CAPEC Common Attack Pattern Enumeration and Classification

  • Forced Deadlock CAPEC-25 The adversary triggers and exploits a deadlock condition in the target software to cause a denial of service. A deadlock can occur when two or more competing actions are waiting for each other to finish, and thus neither ever does. Deadlock conditions can be difficult to detect.
  • Leveraging Race Conditions CAPEC-26 The adversary targets a race condition occurring when multiple processes access and manipulate the same resource concurrently, and the outcome of the execution depends on the particular order in which the access takes place. The adversary can leverage a race condition by "running the race", modifying the resource and modifying the normal execution flow. For instance, a race condition can occur while accessing a file: the adversary can trick the system by replacing the original file with their version and cause the system to read the malicious file.
  • Leveraging Race Conditions via Symbolic Links CAPEC-27 This attack leverages the use of symbolic links (Symlinks) in order to write to sensitive files. An attacker can create a Symlink link to a target file not otherwise accessible to them. When the privileged program tries to create a temporary file with the same name as the Symlink link, it will actually write to the target file pointed to by the attackers' Symlink link. If the attacker can insert malicious content in the temporary file they will be writing to the sensitive file by using the Symlink. The race occurs because the system checks if the temporary file exists, then creates the file. The attacker would typically create the Symlink during the interval between the check and the creation of the temporary file.

Vulnerable Configurations

  • cpe:2.3:o:linux:linux_kernel:5.15.87:*:*:*:*:*:*:*
    cpe:2.3:o:linux:linux_kernel:5.15.87:*:*:*:*:*:*:*
  • cpe:2.3:o:linux:linux_kernel:5.15.88:*:*:*:*:*:*:*
    cpe:2.3:o:linux:linux_kernel:5.15.88:*:*:*:*:*:*:*
  • cpe:2.3:o:linux:linux_kernel:5.15.89:*:*:*:*:*:*:*
    cpe:2.3:o:linux:linux_kernel:5.15.89:*:*:*:*:*:*:*
  • cpe:2.3:o:linux:linux_kernel:5.15.90:*:*:*:*:*:*:*
    cpe:2.3:o:linux:linux_kernel:5.15.90:*:*:*:*:*:*:*
  • cpe:2.3:o:linux:linux_kernel:6.0.19:*:*:*:*:*:*:*
    cpe:2.3:o:linux:linux_kernel:6.0.19:*:*:*:*:*:*:*
  • cpe:2.3:o:linux:linux_kernel:6.0:rc1:*:*:*:*:*:*
    cpe:2.3:o:linux:linux_kernel:6.0:rc1:*:*:*:*:*:*
  • cpe:2.3:o:linux:linux_kernel:6.0:rc2:*:*:*:*:*:*
    cpe:2.3:o:linux:linux_kernel:6.0:rc2:*:*:*:*:*:*
  • cpe:2.3:o:linux:linux_kernel:6.0:rc3:*:*:*:*:*:*
    cpe:2.3:o:linux:linux_kernel:6.0:rc3:*:*:*:*:*:*
  • cpe:2.3:o:linux:linux_kernel:6.0:rc4:*:*:*:*:*:*
    cpe:2.3:o:linux:linux_kernel:6.0:rc4:*:*:*:*:*:*
  • cpe:2.3:o:linux:linux_kernel:6.0:rc5:*:*:*:*:*:*
    cpe:2.3:o:linux:linux_kernel:6.0:rc5:*:*:*:*:*:*
  • cpe:2.3:o:linux:linux_kernel:6.0:rc6:*:*:*:*:*:*
    cpe:2.3:o:linux:linux_kernel:6.0:rc6:*:*:*:*:*:*
  • cpe:2.3:o:linux:linux_kernel:6.0:rc7:*:*:*:*:*:*
    cpe:2.3:o:linux:linux_kernel:6.0:rc7:*:*:*:*:*:*
  • cpe:2.3:o:linux:linux_kernel:6.1.5:*:*:*:*:*:*:*
    cpe:2.3:o:linux:linux_kernel:6.1.5:*:*:*:*:*:*:*
  • cpe:2.3:o:linux:linux_kernel:6.1.6:*:*:*:*:*:*:*
    cpe:2.3:o:linux:linux_kernel:6.1.6:*:*:*:*:*:*:*
  • cpe:2.3:o:linux:linux_kernel:6.1.7:*:*:*:*:*:*:*
    cpe:2.3:o:linux:linux_kernel:6.1.7:*:*:*:*:*:*:*
  • cpe:2.3:o:linux:linux_kernel:6.2:rc3:*:*:*:*:*:*
    cpe:2.3:o:linux:linux_kernel:6.2:rc3:*:*:*:*:*:*
  • cpe:2.3:o:linux:linux_kernel:6.2:rc4:*:*:*:*:*:*
    cpe:2.3:o:linux:linux_kernel:6.2:rc4:*:*:*:*:*:*

Protect Your Infrastructure against CVE-2023-53029: Combat Critical CVE Threats

Stay updated with real-time CVE vulnerabilities and take action to secure your systems. Enhance your cybersecurity posture with the latest threat intelligence and mitigation techniques. Develop the skills necessary to defend against CVEs and secure critical infrastructures. Join the top cybersecurity professionals safeguarding today's infrastructures.

Other 5 Recently Published CVEs Vulnerabilities

  • CVE-2025-66026 – REDAXO is a PHP-based CMS. Prior to version 5.20.1, a reflected Cross-Site Scripting (XSS) vulnerability exists in the Mediapool view where the req...
  • CVE-2025-66025 – Caido is a web security auditing toolkit. Prior to version 0.53.0, the Markdown renderer used in Caido’s Findings page improperly handled user-supp...
  • CVE-2025-66022 – FACTION is a PenTesting Report Generation and Collaboration Framework. Prior to version 1.7.1, an extension execution path in Faction’s extension f...
  • CVE-2025-66269 – The RupsMon and USBMate services in UPSilon 2000 run with SYSTEM privileges and contain unquoted service paths. This allows a local attacker to per...
  • CVE-2025-66266 – The RupsMon.exe service executable in UPSilon 2000 has insecure permissions, allowing the 'Everyone' group Full Control. A local attacker can repla...