CVE Vulnerabilities

CVE-2018-9138

Uncontrolled Recursion

Published: Mar 30, 2018 | Modified: Apr 21, 2020
CVSS 3.x
5.5
MEDIUM
Source:
NVD
CVSS:3.0/AV:L/AC:L/PR:N/UI:R/S:U/C:N/I:N/A:H
CVSS 2.x
4.3 MEDIUM
AV:N/AC:M/Au:N/C:N/I:N/A:P
RedHat/V2
RedHat/V3
3.3 LOW
CVSS:3.0/AV:L/AC:L/PR:L/UI:N/S:U/C:N/I:N/A:L
Ubuntu
LOW

An issue was discovered in cplus-dem.c in GNU libiberty, as distributed in GNU Binutils 2.29 and 2.30. Stack Exhaustion occurs in the C++ demangling functions provided by libiberty, and there are recursive stack frames: demangle_nested_args, demangle_args, do_arg, and do_type.

Weakness

The product does not properly control the amount of recursion that takes place, consuming excessive resources, such as allocated memory or the program stack.

Affected Software

Name Vendor Start Version End Version
Binutils Gnu 2.29 (including) 2.29 (including)
Binutils Gnu 2.30 (including) 2.30 (including)
Binutils Ubuntu artful *
Binutils Ubuntu bionic *
Binutils Ubuntu cosmic *
Binutils Ubuntu esm-infra-legacy/trusty *
Binutils Ubuntu esm-infra/xenial *
Binutils Ubuntu precise/esm *
Binutils Ubuntu trusty *
Binutils Ubuntu trusty/esm *
Binutils Ubuntu upstream *
Binutils Ubuntu xenial *
Libiberty Ubuntu artful *
Libiberty Ubuntu bionic *
Libiberty Ubuntu cosmic *
Libiberty Ubuntu disco *
Libiberty Ubuntu trusty *
Libiberty Ubuntu upstream *
Libiberty Ubuntu xenial *

Potential Mitigations

References