Remote code execution in GNU libidn2

Published: 2019-10-21 | Updated: 2019-10-30
Severity High
Patch available YES
Number of vulnerabilities 1
CVE ID CVE-2019-18224
CWE ID CWE-122
Exploitation vector Network
Public exploit N/A
Vulnerable software Libidn2 Subscribe
Vendor GNU

Security Advisory

This security advisory describes one high risk vulnerability.

1) Heap-based buffer overflow

Severity: High

CVSSv3: 7.7 [CVSS:3.0/AV:N/AC:L/PR:N/UI:R/S:U/C:H/I:H/A:H/E:U/RL:O/RC:C] [PCI]

CVE-ID: CVE-2019-18224

CWE-ID: CWE-122 - Heap-based Buffer Overflow

Description

The vulnerability allows a remote attacker to execute arbitrary code on the target system.

The vulnerability exists due to a boundary error within the idn2_to_ascii_4i() function in lib/lookup.c when processing domain names. A remote attacker can trick the victim to visit a specially crafted website, trigger heap-based buffer overflow and execute arbitrary code on the target system.

Successful exploitation of this vulnerability may result in complete compromise of vulnerable system.

Mitigation

Install updates from vendor's website.

Vulnerable software versions

Libidn2: 2.0.1, 2.0.2, 2.0.3, 2.0.4, 2.0.5, 2.1.0

CPE External links

https://bugs.chromium.org/p/oss-fuzz/issues/detail?id=12420
https://github.com/libidn/libidn2/commit/e4d1558aa2c1c04a05066ee8600f37603890ba8c
https://github.com/libidn/libidn2/compare/libidn2-2.1.0...libidn2-2.1.1

Q & A

Can this vulnerability be exploited remotely?

Yes. This vulnerability can be exploited by a remote non-authenticated attacker via the Internet.

Is there known malware, which exploits this vulnerability?

No. We are not aware of malware exploiting this vulnerability.