ID CVE-2021-32617
Summary Exiv2 is a command-line utility and C++ library for reading, writing, deleting, and modifying the metadata of image files. An inefficient algorithm (quadratic complexity) was found in Exiv2 versions v0.27.3 and earlier. The inefficient algorithm is triggered when Exiv2 is used to write metadata into a crafted image file. An attacker could potentially exploit the vulnerability to cause a denial of service, if they can trick the victim into running Exiv2 on a crafted image file. The bug is fixed in version v0.27.4. Note that this bug is only triggered when _writing_ the metadata, which is a less frequently used Exiv2 operation than _reading_ the metadata. For example, to trigger the bug in the Exiv2 command-line application, you need to add an extra command-line argument such as `rm`.
References
Vulnerable Configurations
  • cpe:2.3:a:exiv2:exiv2:0.3:*:*:*:*:*:*:*
    cpe:2.3:a:exiv2:exiv2:0.3:*:*:*:*:*:*:*
  • cpe:2.3:a:exiv2:exiv2:0.4:*:*:*:*:*:*:*
    cpe:2.3:a:exiv2:exiv2:0.4:*:*:*:*:*:*:*
  • cpe:2.3:a:exiv2:exiv2:0.5:*:*:*:*:*:*:*
    cpe:2.3:a:exiv2:exiv2:0.5:*:*:*:*:*:*:*
  • cpe:2.3:a:exiv2:exiv2:0.6:*:*:*:*:*:*:*
    cpe:2.3:a:exiv2:exiv2:0.6:*:*:*:*:*:*:*
  • cpe:2.3:a:exiv2:exiv2:0.6.1:*:*:*:*:*:*:*
    cpe:2.3:a:exiv2:exiv2:0.6.1:*:*:*:*:*:*:*
  • cpe:2.3:a:exiv2:exiv2:0.6.2:*:*:*:*:*:*:*
    cpe:2.3:a:exiv2:exiv2:0.6.2:*:*:*:*:*:*:*
  • cpe:2.3:a:exiv2:exiv2:0.7:*:*:*:*:*:*:*
    cpe:2.3:a:exiv2:exiv2:0.7:*:*:*:*:*:*:*
  • cpe:2.3:a:exiv2:exiv2:0.8:*:*:*:*:*:*:*
    cpe:2.3:a:exiv2:exiv2:0.8:*:*:*:*:*:*:*
  • cpe:2.3:a:exiv2:exiv2:0.9:*:*:*:*:*:*:*
    cpe:2.3:a:exiv2:exiv2:0.9:*:*:*:*:*:*:*
  • cpe:2.3:a:exiv2:exiv2:0.9.1:*:*:*:*:*:*:*
    cpe:2.3:a:exiv2:exiv2:0.9.1:*:*:*:*:*:*:*
  • cpe:2.3:a:exiv2:exiv2:0.10:*:*:*:*:*:*:*
    cpe:2.3:a:exiv2:exiv2:0.10:*:*:*:*:*:*:*
  • cpe:2.3:a:exiv2:exiv2:0.11:*:*:*:*:*:*:*
    cpe:2.3:a:exiv2:exiv2:0.11:*:*:*:*:*:*:*
  • cpe:2.3:a:exiv2:exiv2:0.12:*:*:*:*:*:*:*
    cpe:2.3:a:exiv2:exiv2:0.12:*:*:*:*:*:*:*
  • cpe:2.3:a:exiv2:exiv2:0.13:*:*:*:*:*:*:*
    cpe:2.3:a:exiv2:exiv2:0.13:*:*:*:*:*:*:*
  • cpe:2.3:a:exiv2:exiv2:0.14:*:*:*:*:*:*:*
    cpe:2.3:a:exiv2:exiv2:0.14:*:*:*:*:*:*:*
  • cpe:2.3:a:exiv2:exiv2:0.15:*:*:*:*:*:*:*
    cpe:2.3:a:exiv2:exiv2:0.15:*:*:*:*:*:*:*
  • cpe:2.3:a:exiv2:exiv2:0.16:-:*:*:*:*:*:*
    cpe:2.3:a:exiv2:exiv2:0.16:-:*:*:*:*:*:*
  • cpe:2.3:a:exiv2:exiv2:0.16:pre1:*:*:*:*:*:*
    cpe:2.3:a:exiv2:exiv2:0.16:pre1:*:*:*:*:*:*
  • cpe:2.3:a:exiv2:exiv2:0.17:*:*:*:*:*:*:*
    cpe:2.3:a:exiv2:exiv2:0.17:*:*:*:*:*:*:*
  • cpe:2.3:a:exiv2:exiv2:0.17.1:*:*:*:*:*:*:*
    cpe:2.3:a:exiv2:exiv2:0.17.1:*:*:*:*:*:*:*
  • cpe:2.3:a:exiv2:exiv2:0.18:-:*:*:*:*:*:*
    cpe:2.3:a:exiv2:exiv2:0.18:-:*:*:*:*:*:*
  • cpe:2.3:a:exiv2:exiv2:0.18:pre1:*:*:*:*:*:*
    cpe:2.3:a:exiv2:exiv2:0.18:pre1:*:*:*:*:*:*
  • cpe:2.3:a:exiv2:exiv2:0.18:pre2:*:*:*:*:*:*
    cpe:2.3:a:exiv2:exiv2:0.18:pre2:*:*:*:*:*:*
  • cpe:2.3:a:exiv2:exiv2:0.18.1:*:*:*:*:*:*:*
    cpe:2.3:a:exiv2:exiv2:0.18.1:*:*:*:*:*:*:*
  • cpe:2.3:a:exiv2:exiv2:0.18.2:*:*:*:*:*:*:*
    cpe:2.3:a:exiv2:exiv2:0.18.2:*:*:*:*:*:*:*
  • cpe:2.3:a:exiv2:exiv2:0.19:*:*:*:*:*:*:*
    cpe:2.3:a:exiv2:exiv2:0.19:*:*:*:*:*:*:*
  • cpe:2.3:a:exiv2:exiv2:0.20:*:*:*:*:*:*:*
    cpe:2.3:a:exiv2:exiv2:0.20:*:*:*:*:*:*:*
  • cpe:2.3:a:exiv2:exiv2:0.21:*:*:*:*:*:*:*
    cpe:2.3:a:exiv2:exiv2:0.21:*:*:*:*:*:*:*
  • cpe:2.3:a:exiv2:exiv2:0.21.1:*:*:*:*:*:*:*
    cpe:2.3:a:exiv2:exiv2:0.21.1:*:*:*:*:*:*:*
  • cpe:2.3:a:exiv2:exiv2:0.22:*:*:*:*:*:*:*
    cpe:2.3:a:exiv2:exiv2:0.22:*:*:*:*:*:*:*
  • cpe:2.3:a:exiv2:exiv2:0.23:*:*:*:*:*:*:*
    cpe:2.3:a:exiv2:exiv2:0.23:*:*:*:*:*:*:*
  • cpe:2.3:a:exiv2:exiv2:0.24:*:*:*:*:*:*:*
    cpe:2.3:a:exiv2:exiv2:0.24:*:*:*:*:*:*:*
  • cpe:2.3:a:exiv2:exiv2:0.25:*:*:*:*:*:*:*
    cpe:2.3:a:exiv2:exiv2:0.25:*:*:*:*:*:*:*
  • cpe:2.3:a:exiv2:exiv2:0.26:*:*:*:*:*:*:*
    cpe:2.3:a:exiv2:exiv2:0.26:*:*:*:*:*:*:*
  • cpe:2.3:a:exiv2:exiv2:0.27:-:*:*:*:*:*:*
    cpe:2.3:a:exiv2:exiv2:0.27:-:*:*:*:*:*:*
  • cpe:2.3:a:exiv2:exiv2:0.27:rc1:*:*:*:*:*:*
    cpe:2.3:a:exiv2:exiv2:0.27:rc1:*:*:*:*:*:*
  • cpe:2.3:a:exiv2:exiv2:0.27:rc2:*:*:*:*:*:*
    cpe:2.3:a:exiv2:exiv2:0.27:rc2:*:*:*:*:*:*
  • cpe:2.3:a:exiv2:exiv2:0.27:rc3:*:*:*:*:*:*
    cpe:2.3:a:exiv2:exiv2:0.27:rc3:*:*:*:*:*:*
  • cpe:2.3:a:exiv2:exiv2:0.27.1:*:*:*:*:*:*:*
    cpe:2.3:a:exiv2:exiv2:0.27.1:*:*:*:*:*:*:*
  • cpe:2.3:a:exiv2:exiv2:0.27.2:*:*:*:*:*:*:*
    cpe:2.3:a:exiv2:exiv2:0.27.2:*:*:*:*:*:*:*
  • cpe:2.3:a:exiv2:exiv2:0.27.3:-:*:*:*:*:*:*
    cpe:2.3:a:exiv2:exiv2:0.27.3:-:*:*:*:*:*:*
  • cpe:2.3:a:exiv2:exiv2:0.27.3:rc1:*:*:*:*:*:*
    cpe:2.3:a:exiv2:exiv2:0.27.3:rc1:*:*:*:*:*:*
  • cpe:2.3:a:exiv2:exiv2:0.27.3:rc2:*:*:*:*:*:*
    cpe:2.3:a:exiv2:exiv2:0.27.3:rc2:*:*:*:*:*:*
CVSS
Base: 4.3 (as of 10-06-2021 - 03:15)
Impact:
Exploitability:
CWE CWE-400
CAPEC
  • XML Entity Expansion
    An attacker submits an XML document to a target application where the XML document uses nested entity expansion to produce an excessively large output XML. XML allows the definition of macro-like structures that can be used to simplify the creation of complex structures. However, this capability can be abused to create excessive demands on a processor's CPU and memory. A small number of nested expansions can result in an exponential growth in demands on memory.
  • Regular Expression Exponential Blowup
    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. The algorithm builds a finite state machine and based on the input transitions through all the states until the end of the input is reached. NFA engines may evaluate each character in the input string multiple times during the backtracking. The algorithm tries each path through the NFA one by one until a match is found; the malicious input is crafted so every path is tried which results in a failure. Exploitation of the Regex results in programs hanging or taking a very long time to complete. These attacks may target various layers of the Internet due to regular expressions being used in validation.
  • XML Ping of the Death
    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.
Access
VectorComplexityAuthentication
NETWORK MEDIUM NONE
Impact
ConfidentialityIntegrityAvailability
NONE NONE PARTIAL
cvss-vector via4 AV:N/AC:M/Au:N/C:N/I:N/A:P
Last major update 10-06-2021 - 03:15
Published 17-05-2021 - 18:15
Last modified 10-06-2021 - 03:15
Back to Top