Skip to main content

CVE-2022-36043: CWE-415: Double Free in rizinorg rizin

Medium
VulnerabilityCVE-2022-36043cvecve-2022-36043cwe-415-double-free
Published: Tue Sep 06 2022 (09/06/2022, 00:00:00 UTC)
Source: CVE
Vendor/Project: rizinorg
Product: rizin

Description

Rizin is a UNIX-like reverse engineering framework and command-line toolset. Versions 0.4.0 and prior are vulnerable to a double free in bobj.c:rz_bin_reloc_storage_free() when freeing relocations generated from qnx binary plugin. A user opening a malicious qnx binary could be affected by this vulnerability, allowing an attacker to execute code on the user's machine. Commit number a3d50c1ea185f3f642f2d8180715f82d98840784 contains a patch for this issue.

AI-Powered Analysis

AILast updated: 06/22/2025, 23:06:11 UTC

Technical Analysis

CVE-2022-36043 is a vulnerability identified in the rizin reverse engineering framework, specifically affecting versions 0.4.0 and earlier. Rizin is a UNIX-like toolset used primarily for reverse engineering tasks, including binary analysis and debugging. The vulnerability is a double free issue (CWE-415) located in the source file bobj.c within the function rz_bin_reloc_storage_free(). This function is responsible for freeing memory allocated for relocation entries generated by the QNX binary plugin. When a user opens a specially crafted malicious QNX binary file, the double free flaw can be triggered, leading to undefined behavior such as memory corruption. This memory corruption can be exploited by an attacker to execute arbitrary code on the victim's machine. The vulnerability arises because the same memory is freed twice, which can corrupt the heap metadata and potentially allow control over the program’s execution flow. The issue was addressed in a patch committed under the identifier a3d50c1ea185f3f642f2d8180715f82d98840784. No known exploits have been reported in the wild to date, but the nature of the vulnerability means it could be leveraged in targeted attacks against users of vulnerable rizin versions. Since rizin is a specialized tool primarily used by security researchers, malware analysts, and reverse engineers, the attack surface is limited to those environments where rizin is installed and used to analyze QNX binaries. The vulnerability requires the user to open a malicious QNX binary file, so user interaction is necessary. The attack does not require authentication but depends on the victim voluntarily loading the crafted file into the tool. The vulnerability impacts the confidentiality, integrity, and availability of the affected system due to the potential for arbitrary code execution.

Potential Impact

For European organizations, the impact of CVE-2022-36043 is primarily relevant to entities involved in software security research, malware analysis, and embedded systems development, especially those working with QNX-based systems. QNX is widely used in embedded environments such as automotive, industrial control, and IoT devices. Organizations using rizin for reverse engineering QNX binaries could be at risk of compromise if an attacker delivers a malicious QNX binary to an analyst or engineer. Successful exploitation could lead to unauthorized code execution on the analyst’s workstation, potentially allowing attackers to pivot into internal networks or exfiltrate sensitive information. While the overall risk is moderate due to the specialized nature of the tool and the requirement for user interaction, the vulnerability could be leveraged in targeted attacks against critical infrastructure sectors or research institutions. The potential for supply chain attacks exists if malicious QNX binaries are distributed through compromised sources. Additionally, since rizin is open-source and used globally, European cybersecurity teams should be aware of this vulnerability to prevent lateral movement or espionage attempts within their environments.

Mitigation Recommendations

1. Upgrade rizin to a version later than 0.4.0 where the patch for CVE-2022-36043 has been applied. If an official patched release is not available, apply the patch from commit a3d50c1ea185f3f642f2d8180715f82d98840784 manually. 2. Implement strict file validation and sandboxing when opening QNX binaries in rizin to limit the impact of potential exploitation. Use containerization or virtual machines to isolate the reverse engineering environment from critical infrastructure. 3. Educate users and analysts to avoid opening untrusted or unauthenticated QNX binaries, especially those received from external or unknown sources. 4. Monitor and log usage of rizin, focusing on file inputs and any abnormal behavior indicative of exploitation attempts. 5. Employ endpoint detection and response (EDR) solutions to detect anomalous process behavior or memory corruption patterns associated with double free exploitation. 6. Coordinate with software supply chain teams to verify the integrity of QNX binaries used internally, reducing the risk of malicious payloads. 7. For organizations developing or analyzing QNX-based embedded systems, consider alternative reverse engineering tools with a more robust security track record until rizin is fully patched and verified.

Need more detailed analysis?Get Pro

Technical Details

Data Version
5.1
Assigner Short Name
GitHub_M
Date Reserved
2022-07-15T00:00:00.000Z
Cisa Enriched
true

Threat ID: 682d9844c4522896dcbf3c64

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

Last enriched: 6/22/2025, 11:06:11 PM

Last updated: 7/27/2025, 12:15:53 AM

Views: 12

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