CVE-2020-5204 Buffer overflow vulnerability in uftpd

Medium 6.5 Published Updated

A buffer overflow in uFTPD allows attackers to execute arbitrary code or cause denial of service via crafted PORT commands.

Exploited in the wild
Not known
Login needed
Any signed-in user
Attackable
Over the internet
Victim action needed
A user has to click or open something
Fix
Available

What is CVE-2020-5204?

CVE-2020-5204 is a medium-severity memory corruption vulnerability in troglobit uftpd, published on 6 Jan 2020. Any signed-in user can exploit it over the network, and only if a user opens a file or follows a link.

Official description

In uftpd before 2.11, there is a buffer overflow vulnerability in handle_PORT in ftpcmd.c that is caused by a buffer that is 16 bytes large being filled via sprintf() with user input based on the format specifier string %d.%d.%d.%d. The 16 byte size is correct for valid IPv4 addresses (len('255.255.255.255') == 16), but the format specifier %d allows more than 3 digits. This has been fixed in version 2.11

Weakness: CWE-120, CWE-121

Which versions are affected by CVE-2020-5204?

It affects 1 product.

Linux distribution packages (1)
uftpd openSUSE:Leap 15.1All versions2.11-lp151.2.3.1

Products include Troglobit Uftpd.

How do I fix CVE-2020-5204?

Upgrade to a fixed version.

Upgrade to the fixed version. Memory-safe languages, compiler hardening and fuzzing prevent most new cases. More about Memory corruption.

Is CVE-2020-5204 being exploited?

There is no known exploitation of CVE-2020-5204 in the wild and no public exploit code.

Sources

Also known as GHSA-4g9j-24m6-cjw4, GHSA-wrpr-xw7q-9wvq, openSUSE-SU-2020:0069-1.

Is CVE-2020-5204 in your software?

Upload an SBOM and sbomify checks it against every vulnerability here, every day.

Check your SBOMs for free