CVE Vulnerabilities

CVE-2018-18700

Loop with Unreachable Exit Condition ('Infinite Loop')

Published: Oct 29, 2018 | Modified: Oct 15, 2026
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
4.3 LOW
CVSS:3.0/AV:N/AC:L/PR:N/UI:R/S:U/C:N/I:N/A:L
Ubuntu
LOW

An issue was discovered in cp-demangle.c in GNU libiberty, as distributed in GNU Binutils 2.31. There is a stack consumption vulnerability resulting from infinite recursion in the functions d_name(), d_encoding(), and d_local_name() in cp-demangle.c. Remote attackers could leverage this vulnerability to cause a denial-of-service via an ELF file, as demonstrated by nm.

Weakness

The product contains an iteration or loop with an exit condition that cannot be reached, i.e., an infinite loop.

Affected Software

NameVendorStart VersionEnd Version
BinutilsGnu2.31 (including)2.31 (including)
BinutilsUbuntubionic*
BinutilsUbuntucosmic*
BinutilsUbuntuesm-infra-legacy/trusty*
BinutilsUbuntuesm-infra-legacy/xenial*
BinutilsUbuntuesm-infra/bionic*
BinutilsUbuntuesm-infra/xenial*
BinutilsUbuntuprecise/esm*
BinutilsUbuntutrusty*
BinutilsUbuntutrusty/esm*
BinutilsUbuntuxenial*
LibibertyUbuntuartful*
LibibertyUbuntubionic*
LibibertyUbuntucosmic*
LibibertyUbuntudisco*
LibibertyUbuntuesm-infra-legacy/xenial*
LibibertyUbuntuesm-infra/bionic*
LibibertyUbuntuesm-infra/xenial*
LibibertyUbuntutrusty*
LibibertyUbuntuupstream*
LibibertyUbuntuxenial*

References