CVE-2022-36114 Vulnerability Analysis & Exploit Details

CVE-2022-36114
Vulnerability Scoring

4.8
/10
Medium Risk

The vulnerability CVE-2022-36114 could compromise system integrity but typically requires user interaction to be exploited.

Attack Complexity Details

  • Attack Complexity: High
    Exploits require significant effort and special conditions.
  • Attack Vector: Network
    Vulnerability is exploitable over a network without physical access.
  • Privileges Required: Low
    Some privileges are necessary to exploit the vulnerability.
  • Scope: Unchanged
    Exploit remains within the originally vulnerable component.
  • User Interaction: Required
    User interaction is necessary for successful exploitation.

CVE-2022-36114 Details

Status: Modified

Last updated: 🕖 21 Nov 2024, 07:12 UTC
Originally published on: 🕕 14 Sep 2022, 18:15 UTC

Time between publication and last update: 798 days

CVSS Release: version 3

CVSS3 Source

security-advisories@github.com

CVSS3 Type

Secondary

CVSS3 Vector

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

CVE-2022-36114 Vulnerability Summary

CVE-2022-36114: Cargo is a package manager for the rust programming language. It was discovered that Cargo did not limit the amount of data extracted from compressed archives. An attacker could upload to an alternate registry a specially crafted package that extracts way more data than its size (also known as a "zip bomb"), exhausting the disk space on the machine using Cargo to download the package. Note that by design Cargo allows code execution at build time, due to build scripts and procedural macros. The vulnerabilities in this advisory allow performing a subset of the possible damage in a harder to track down way. Your dependencies must still be trusted if you want to be protected from attacks, as it's possible to perform the same attacks with build scripts and procedural macros. The vulnerability is present in all versions of Cargo. Rust 1.64, to be released on September 22nd, will include a fix for it. Since the vulnerability is just a more limited way to accomplish what a malicious build scripts or procedural macros can do, we decided not to publish Rust point releases backporting the security fix. Patch files are available for Rust 1.63.0 are available in the wg-security-response repository for people building their own toolchain. We recommend users of alternate registries to excercise care in which package they download, by only including trusted dependencies in their projects. Please note that even with these vulnerabilities fixed, by design Cargo allows arbitrary code execution at build time thanks to build scripts and procedural macros: a malicious dependency will be able to cause damage regardless of these vulnerabilities. crates.io implemented server-side checks to reject these kinds of packages years ago, and there are no packages on crates.io exploiting these vulnerabilities. crates.io users still need to excercise care in choosing their dependencies though, as the same concerns about build scripts and procedural macros apply here.

Assessing the Risk of CVE-2022-36114

Access Complexity Graph

The exploitability of CVE-2022-36114 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-2022-36114

This vulnerability, CVE-2022-36114, requires a high level of attack complexity and low privileges, making it difficult but not impossible to exploit. Organizations should ensure robust security configurations to mitigate 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-2022-36114, 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-2022-36114, showing how Confidentiality, Integrity, and Availability might be affected if the vulnerability is exploited. Higher values usually signal greater potential damage.

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

Exploit Prediction Scoring System (EPSS)

The EPSS score estimates the probability that this vulnerability will be exploited in the near future.

EPSS Score: 0.088% (probability of exploit)

EPSS Percentile: 39.97% (lower percentile = lower relative risk)
This vulnerability is less risky than approximately 60.03% of others.

CVE-2022-36114 References

External References

CWE Common Weakness Enumeration

CWE-400

CAPEC Common Attack Pattern Enumeration and Classification

  • XML Ping of the Death CAPEC-147 An attacker initiates a resource depletion attack where a large number of small XML messages are delivered at a sufficiently rapid rate to cause a denial of service or crash of the target. Transactions such as repetitive SOAP transactions can deplete resources faster than a simple flooding attack because of the additional resources used by the SOAP protocol and the resources necessary to process SOAP messages. The transactions used are immaterial as long as they cause resource utilization on the target. In other words, this is a normal flooding attack augmented by using messages that will require extra processing on the target.
  • Sustained Client Engagement CAPEC-227 An adversary attempts to deny legitimate users access to a resource by continually engaging a specific resource in an attempt to keep the resource tied up as long as possible. The adversary's primary goal is not to crash or flood the target, which would alert defenders; rather it is to repeatedly perform actions or abuse algorithmic flaws such that a given resource is tied up and not available to a legitimate user. By carefully crafting a requests that keep the resource engaged through what is seemingly benign requests, legitimate users are limited or completely denied access to the resource.
  • Regular Expression Exponential Blowup CAPEC-492 An adversary may execute an attack on a program that uses a poor Regular Expression(Regex) implementation by choosing input that results in an extreme situation for the Regex. A typical extreme situation operates at exponential time compared to the input size. This is due to most implementations using a Nondeterministic Finite Automaton(NFA) state machine to be built by the Regex algorithm since NFA allows backtracking and thus more complex regular expressions.

Vulnerable Configurations

  • cpe:2.3:a:rust-lang:cargo:0.1.0:*:*:*:*:rust:*:*
    cpe:2.3:a:rust-lang:cargo:0.1.0:*:*:*:*:rust:*:*
  • cpe:2.3:a:rust-lang:cargo:0.2.0:*:*:*:*:rust:*:*
    cpe:2.3:a:rust-lang:cargo:0.2.0:*:*:*:*:rust:*:*
  • cpe:2.3:a:rust-lang:cargo:0.3.0:*:*:*:*:rust:*:*
    cpe:2.3:a:rust-lang:cargo:0.3.0:*:*:*:*:rust:*:*
  • cpe:2.3:a:rust-lang:cargo:0.4.0:*:*:*:*:rust:*:*
    cpe:2.3:a:rust-lang:cargo:0.4.0:*:*:*:*:rust:*:*
  • cpe:2.3:a:rust-lang:cargo:0.5.0:*:*:*:*:rust:*:*
    cpe:2.3:a:rust-lang:cargo:0.5.0:*:*:*:*:rust:*:*
  • cpe:2.3:a:rust-lang:cargo:0.6.0:*:*:*:*:rust:*:*
    cpe:2.3:a:rust-lang:cargo:0.6.0:*:*:*:*:rust:*:*
  • cpe:2.3:a:rust-lang:cargo:0.6.1:*:*:*:*:rust:*:*
    cpe:2.3:a:rust-lang:cargo:0.6.1:*:*:*:*:rust:*:*
  • cpe:2.3:a:rust-lang:cargo:0.6.5:*:*:*:*:rust:*:*
    cpe:2.3:a:rust-lang:cargo:0.6.5:*:*:*:*:rust:*:*
  • cpe:2.3:a:rust-lang:cargo:0.7.0:*:*:*:*:rust:*:*
    cpe:2.3:a:rust-lang:cargo:0.7.0:*:*:*:*:rust:*:*
  • cpe:2.3:a:rust-lang:cargo:0.8.0:*:*:*:*:rust:*:*
    cpe:2.3:a:rust-lang:cargo:0.8.0:*:*:*:*:rust:*:*
  • cpe:2.3:a:rust-lang:cargo:0.9.0:*:*:*:*:rust:*:*
    cpe:2.3:a:rust-lang:cargo:0.9.0:*:*:*:*:rust:*:*
  • cpe:2.3:a:rust-lang:cargo:0.10.0:*:*:*:*:rust:*:*
    cpe:2.3:a:rust-lang:cargo:0.10.0:*:*:*:*:rust:*:*
  • cpe:2.3:a:rust-lang:cargo:0.11.0:*:*:*:*:rust:*:*
    cpe:2.3:a:rust-lang:cargo:0.11.0:*:*:*:*:rust:*:*
  • cpe:2.3:a:rust-lang:cargo:0.12.0:*:*:*:*:rust:*:*
    cpe:2.3:a:rust-lang:cargo:0.12.0:*:*:*:*:rust:*:*
  • cpe:2.3:a:rust-lang:cargo:0.13.0:*:*:*:*:rust:*:*
    cpe:2.3:a:rust-lang:cargo:0.13.0:*:*:*:*:rust:*:*
  • cpe:2.3:a:rust-lang:cargo:0.14.0:*:*:*:*:rust:*:*
    cpe:2.3:a:rust-lang:cargo:0.14.0:*:*:*:*:rust:*:*
  • cpe:2.3:a:rust-lang:cargo:0.15.0:*:*:*:*:rust:*:*
    cpe:2.3:a:rust-lang:cargo:0.15.0:*:*:*:*:rust:*:*
  • cpe:2.3:a:rust-lang:cargo:0.16.0:*:*:*:*:rust:*:*
    cpe:2.3:a:rust-lang:cargo:0.16.0:*:*:*:*:rust:*:*
  • cpe:2.3:a:rust-lang:cargo:0.17.0:*:*:*:*:rust:*:*
    cpe:2.3:a:rust-lang:cargo:0.17.0:*:*:*:*:rust:*:*
  • cpe:2.3:a:rust-lang:cargo:0.18.0:*:*:*:*:rust:*:*
    cpe:2.3:a:rust-lang:cargo:0.18.0:*:*:*:*:rust:*:*
  • cpe:2.3:a:rust-lang:cargo:0.19.0:*:*:*:*:rust:*:*
    cpe:2.3:a:rust-lang:cargo:0.19.0:*:*:*:*:rust:*:*
  • cpe:2.3:a:rust-lang:cargo:0.20.0:*:*:*:*:rust:*:*
    cpe:2.3:a:rust-lang:cargo:0.20.0:*:*:*:*:rust:*:*
  • cpe:2.3:a:rust-lang:cargo:0.21.0:*:*:*:*:rust:*:*
    cpe:2.3:a:rust-lang:cargo:0.21.0:*:*:*:*:rust:*:*
  • cpe:2.3:a:rust-lang:cargo:0.21.1:*:*:*:*:rust:*:*
    cpe:2.3:a:rust-lang:cargo:0.21.1:*:*:*:*:rust:*:*
  • cpe:2.3:a:rust-lang:cargo:0.22.0:*:*:*:*:rust:*:*
    cpe:2.3:a:rust-lang:cargo:0.22.0:*:*:*:*:rust:*:*
  • cpe:2.3:a:rust-lang:cargo:0.23.0:*:*:*:*:rust:*:*
    cpe:2.3:a:rust-lang:cargo:0.23.0:*:*:*:*:rust:*:*
  • cpe:2.3:a:rust-lang:cargo:0.24.0:*:*:*:*:rust:*:*
    cpe:2.3:a:rust-lang:cargo:0.24.0:*:*:*:*:rust:*:*
  • cpe:2.3:a:rust-lang:cargo:0.25.0:*:*:*:*:rust:*:*
    cpe:2.3:a:rust-lang:cargo:0.25.0:*:*:*:*:rust:*:*
  • cpe:2.3:a:rust-lang:cargo:0.26.0:*:*:*:*:rust:*:*
    cpe:2.3:a:rust-lang:cargo:0.26.0:*:*:*:*:rust:*:*
  • cpe:2.3:a:rust-lang:cargo:0.27.0:*:*:*:*:rust:*:*
    cpe:2.3:a:rust-lang:cargo:0.27.0:*:*:*:*:rust:*:*
  • cpe:2.3:a:rust-lang:cargo:0.28.0:*:*:*:*:rust:*:*
    cpe:2.3:a:rust-lang:cargo:0.28.0:*:*:*:*:rust:*:*
  • cpe:2.3:a:rust-lang:cargo:0.29.0:*:*:*:*:rust:*:*
    cpe:2.3:a:rust-lang:cargo:0.29.0:*:*:*:*:rust:*:*
  • cpe:2.3:a:rust-lang:cargo:0.30.0:*:*:*:*:rust:*:*
    cpe:2.3:a:rust-lang:cargo:0.30.0:*:*:*:*:rust:*:*
  • cpe:2.3:a:rust-lang:cargo:0.31.0:*:*:*:*:rust:*:*
    cpe:2.3:a:rust-lang:cargo:0.31.0:*:*:*:*:rust:*:*
  • cpe:2.3:a:rust-lang:cargo:0.31.1:*:*:*:*:rust:*:*
    cpe:2.3:a:rust-lang:cargo:0.31.1:*:*:*:*:rust:*:*
  • cpe:2.3:a:rust-lang:cargo:0.32.0:*:*:*:*:rust:*:*
    cpe:2.3:a:rust-lang:cargo:0.32.0:*:*:*:*:rust:*:*
  • cpe:2.3:a:rust-lang:cargo:0.33.0:*:*:*:*:rust:*:*
    cpe:2.3:a:rust-lang:cargo:0.33.0:*:*:*:*:rust:*:*
  • cpe:2.3:a:rust-lang:cargo:0.34.0:*:*:*:*:rust:*:*
    cpe:2.3:a:rust-lang:cargo:0.34.0:*:*:*:*:rust:*:*
  • cpe:2.3:a:rust-lang:cargo:0.35.0:*:*:*:*:rust:*:*
    cpe:2.3:a:rust-lang:cargo:0.35.0:*:*:*:*:rust:*:*
  • cpe:2.3:a:rust-lang:cargo:0.36.0:*:*:*:*:rust:*:*
    cpe:2.3:a:rust-lang:cargo:0.36.0:*:*:*:*:rust:*:*
  • cpe:2.3:a:rust-lang:cargo:0.37.0:*:*:*:*:rust:*:*
    cpe:2.3:a:rust-lang:cargo:0.37.0:*:*:*:*:rust:*:*
  • cpe:2.3:a:rust-lang:cargo:0.38.0:*:*:*:*:rust:*:*
    cpe:2.3:a:rust-lang:cargo:0.38.0:*:*:*:*:rust:*:*
  • cpe:2.3:a:rust-lang:cargo:0.39.0:*:*:*:*:rust:*:*
    cpe:2.3:a:rust-lang:cargo:0.39.0:*:*:*:*:rust:*:*
  • cpe:2.3:a:rust-lang:cargo:0.40.0:*:*:*:*:rust:*:*
    cpe:2.3:a:rust-lang:cargo:0.40.0:*:*:*:*:rust:*:*
  • cpe:2.3:a:rust-lang:cargo:0.41.0:*:*:*:*:rust:*:*
    cpe:2.3:a:rust-lang:cargo:0.41.0:*:*:*:*:rust:*:*
  • cpe:2.3:a:rust-lang:cargo:0.42.0:*:*:*:*:rust:*:*
    cpe:2.3:a:rust-lang:cargo:0.42.0:*:*:*:*:rust:*:*
  • cpe:2.3:a:rust-lang:cargo:0.43.0:*:*:*:*:rust:*:*
    cpe:2.3:a:rust-lang:cargo:0.43.0:*:*:*:*:rust:*:*
  • cpe:2.3:a:rust-lang:cargo:0.43.1:*:*:*:*:rust:*:*
    cpe:2.3:a:rust-lang:cargo:0.43.1:*:*:*:*:rust:*:*
  • cpe:2.3:a:rust-lang:cargo:0.44.0:*:*:*:*:rust:*:*
    cpe:2.3:a:rust-lang:cargo:0.44.0:*:*:*:*:rust:*:*
  • cpe:2.3:a:rust-lang:cargo:0.44.1:*:*:*:*:rust:*:*
    cpe:2.3:a:rust-lang:cargo:0.44.1:*:*:*:*:rust:*:*
  • cpe:2.3:a:rust-lang:cargo:0.45.0:*:*:*:*:rust:*:*
    cpe:2.3:a:rust-lang:cargo:0.45.0:*:*:*:*:rust:*:*
  • cpe:2.3:a:rust-lang:cargo:0.46.0:*:*:*:*:rust:*:*
    cpe:2.3:a:rust-lang:cargo:0.46.0:*:*:*:*:rust:*:*
  • cpe:2.3:a:rust-lang:cargo:0.46.1:*:*:*:*:rust:*:*
    cpe:2.3:a:rust-lang:cargo:0.46.1:*:*:*:*:rust:*:*
  • cpe:2.3:a:rust-lang:cargo:0.47.0:*:*:*:*:rust:*:*
    cpe:2.3:a:rust-lang:cargo:0.47.0:*:*:*:*:rust:*:*
  • cpe:2.3:a:rust-lang:cargo:0.49.0:*:*:*:*:rust:*:*
    cpe:2.3:a:rust-lang:cargo:0.49.0:*:*:*:*:rust:*:*
  • cpe:2.3:a:rust-lang:cargo:0.50.0:*:*:*:*:rust:*:*
    cpe:2.3:a:rust-lang:cargo:0.50.0:*:*:*:*:rust:*:*
  • cpe:2.3:a:rust-lang:cargo:0.50.1:*:*:*:*:rust:*:*
    cpe:2.3:a:rust-lang:cargo:0.50.1:*:*:*:*:rust:*:*
  • cpe:2.3:a:rust-lang:cargo:0.51.0:*:*:*:*:rust:*:*
    cpe:2.3:a:rust-lang:cargo:0.51.0:*:*:*:*:rust:*:*
  • cpe:2.3:a:rust-lang:cargo:0.52.0:*:*:*:*:rust:*:*
    cpe:2.3:a:rust-lang:cargo:0.52.0:*:*:*:*:rust:*:*
  • cpe:2.3:a:rust-lang:cargo:0.53.0:*:*:*:*:rust:*:*
    cpe:2.3:a:rust-lang:cargo:0.53.0:*:*:*:*:rust:*:*
  • cpe:2.3:a:rust-lang:cargo:0.54.0:*:*:*:*:rust:*:*
    cpe:2.3:a:rust-lang:cargo:0.54.0:*:*:*:*:rust:*:*
  • cpe:2.3:a:rust-lang:cargo:0.55.0:*:*:*:*:rust:*:*
    cpe:2.3:a:rust-lang:cargo:0.55.0:*:*:*:*:rust:*:*
  • cpe:2.3:a:rust-lang:cargo:0.56.0:*:*:*:*:rust:*:*
    cpe:2.3:a:rust-lang:cargo:0.56.0:*:*:*:*:rust:*:*
  • cpe:2.3:a:rust-lang:cargo:0.57.0:*:*:*:*:rust:*:*
    cpe:2.3:a:rust-lang:cargo:0.57.0:*:*:*:*:rust:*:*
  • cpe:2.3:a:rust-lang:cargo:0.58:*:*:*:*:rust:*:*
    cpe:2.3:a:rust-lang:cargo:0.58:*:*:*:*:rust:*:*
  • cpe:2.3:a:rust-lang:cargo:0.58.0:*:*:*:*:rust:*:*
    cpe:2.3:a:rust-lang:cargo:0.58.0:*:*:*:*:rust:*:*
  • cpe:2.3:a:rust-lang:cargo:0.59.0:*:*:*:*:rust:*:*
    cpe:2.3:a:rust-lang:cargo:0.59.0:*:*:*:*:rust:*:*
  • cpe:2.3:a:rust-lang:cargo:0.60.0:*:*:*:*:rust:*:*
    cpe:2.3:a:rust-lang:cargo:0.60.0:*:*:*:*:rust:*:*
  • cpe:2.3:a:rust-lang:cargo:0.61.0:*:*:*:*:rust:*:*
    cpe:2.3:a:rust-lang:cargo:0.61.0:*:*:*:*:rust:*:*
  • cpe:2.3:a:rust-lang:cargo:0.61.1:*:*:*:*:rust:*:*
    cpe:2.3:a:rust-lang:cargo:0.61.1:*:*:*:*:rust:*:*
  • cpe:2.3:a:rust-lang:cargo:0.62.0:*:*:*:*:rust:*:*
    cpe:2.3:a:rust-lang:cargo:0.62.0:*:*:*:*:rust:*:*
  • cpe:2.3:a:rust-lang:cargo:0.63.0:*:*:*:*:rust:*:*
    cpe:2.3:a:rust-lang:cargo:0.63.0:*:*:*:*:rust:*:*
  • cpe:2.3:a:rust-lang:cargo:0.63.1:*:*:*:*:rust:*:*
    cpe:2.3:a:rust-lang:cargo:0.63.1:*:*:*:*:rust:*:*
  • cpe:2.3:a:rust-lang:cargo:0.64.0:*:*:*:*:rust:*:*
    cpe:2.3:a:rust-lang:cargo:0.64.0:*:*:*:*:rust:*:*

Protect Your Infrastructure against CVE-2022-36114: 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-26205 – Lua 5.4.7, when the debug library is used, has a out-of-bounds read and segmentation violation in mainpositionTV in ltable.c. NOTE: this is dispute...
  • CVE-2025-26204 – Lua 5.4.7, when the debug library is used, has a out-of-bounds read and segmentation violation in equalkey in ltable.c. NOTE: this is disputed beca...
  • CVE-2025-2129 – A vulnerability was found in Mage AI 0.9.75. It has been classified as problematic. This affects an unknown part. The manipulation leads to insecur...
  • CVE-2025-2127 – A vulnerability was found in JoomlaUX JUX Real Estate 3.4.0 on Joomla. It has been classified as problematic. Affected is an unknown function of th...
  • CVE-2025-2126 – A vulnerability was found in JoomlaUX JUX Real Estate 3.4.0 on Joomla and classified as critical. This issue affects some unknown processing of the...