Buffer overflow in libuv - CVE-2020-8252

 

Buffer overflow in libuv - CVE-2020-8252

Published: September 18, 2020 / Updated: October 2, 2020


Vulnerability identifier: #VU47248
CSH Severity: High
CVSS v4: 9.3 [CVSS:4.0/AV:N/AC:L/AT:N/PR:N/UI:N/VC:H/VI:H/VA:H/SC:N/SI:N/SA:N]
CVE-ID: CVE-2020-8252
CWE-ID: CWE-120
Exploitation vector: Remote access
Exploit availability: No public exploit available

Vulnerability details

The vulnerability allows a remote non-authenticated attacker to execute arbitrary code.

The vulnerability exists due to incorrect validation of realpath in libuv. The library incorrectly determines the buffer size, which can result in a buffer overflow if the resolved path is longer than 256 bytes. A remote attacker can pass an overly long path to the application that is using the library, trigger memory corruption and execute arbitrary code on the system.


Affected software

libuv
Gentoo Linux
Red Hat Enterprise Linux for x86_64
Red Hat Enterprise Linux for Power, little endian
Red Hat Enterprise Linux for ARM 64
Red Hat Enterprise Linux for IBM z Systems
Red Hat Enterprise Linux for x86_64 - Extended Update Support
Red Hat Enterprise Linux for IBM z Systems - Extended Update Support
Red Hat Enterprise Linux for Power, little endian - Extended Update Support
Red Hat Enterprise Linux for ARM 64 - Extended Update Support
Red Hat Enterprise Linux Server - TUS
Opensuse
openEuler
Ubuntu
Fedora
MicroSCADA X SYS600
MicroSCADA Pro SYS600
Gateway Station (GWS)
FACTS Control Platform (FCP)
libuv (Alpine package)
Red Hat Enterprise Linux Server for Power LE - Update Services for SAP Solutions
Red Hat Enterprise Linux Server for x86_64 - Update Services for SAP Solutions
nodejs (Alpine package)
rh-nodejs12-nodejs (Red Hat package)
libuv1 (Ubuntu package)
libuv-debuginfo
libuv-devel
libuv
libuv-help
libuv-debugsource
rh-nodejs10-nodejs (Red Hat package)
nodejs (Red Hat package)
nodejs
IBM Cloud Transformation Advisor
Node.js
Adobe Reader

How to mitigate CVE-2020-8252

Install update from vendor's website.

libuv - update to 1.39.0
MicroSCADA X SYS600 - update to 10.3
MicroSCADA Pro SYS600 - update to 10.3
libuv (Alpine package) - update to 1.38.1-r0
Node.js - addressed in versions 10.22.1, 12.18.4, 14.9.0
nodejs (Alpine package) - update to 12.18.4-r0
rh-nodejs12-nodejs (Red Hat package) - update to 12.18.4-3.el7
libuv1 (Ubuntu package) - update to 1.34.2-1ubuntu1.1
libuv-debuginfo - update to 1.38.1-2
libuv-devel - update to 1.38.1-2
libuv - update to 1.38.1-2
libuv-help - update to 1.38.1-2
libuv-debugsource - update to 1.38.1-2
rh-nodejs10-nodejs (Red Hat package) - update to 10.23.1-2.el7
nodejs (Red Hat package) - update to 12.18.4-2.module+el8.2.0+8361+192e434e
nodejs - addressed in versions 12.19.0-1.fc31, 14.15.1-1.fc33, 14-3220201203015508.43bbeeef, 14-3320201203015508.601d93de

External References

Related Security Bulletins