CVE-2020-17446 Asyncpg Arbitrary Code Execution Via Access to an Uninitialized Pointer
A malicious PostgreSQL server can trigger arbitrary code execution or crashes in asyncpg clients via a crafted response exploiting an uninitialized pointer.
- Exploited in the wild
- Not known
- Login needed
- Not needed
- Attackable
- Over the internet
- Victim action needed
- Not needed
- Fix
- Available
What is CVE-2020-17446?
CVE-2020-17446 is a critical memory corruption vulnerability in Debian Debian Linux, published on 12 Aug 2020. An attacker can exploit it over the internet without logging in, with no action from the victim.
Official description
asyncpg before 0.21.0 allows a malicious PostgreSQL server to trigger a crash or execute arbitrary code (on a database client) via a crafted server response, because of access to an uninitialized pointer in the array data decoder.
Weakness: CWE-824
Which versions are affected by CVE-2020-17446?
3 open source packages ship an affected version, including asyncpg. It affects 2 products.
| Package | Affected | Fixed in |
|---|---|---|
asyncpg PyPI | All versions | 0.21.0 |
asyncpg PyPI | All versions | 0.21.0 |
asyncpg PyPI | All versions | 0.21.0 |
Linux distribution packages (2)
python-asyncpg openSUSE:Tumbleweed | All versions | 0.29.0-1.3 |
python-asyncpg openSUSE:Tumbleweed | All versions | 0.31.0-1.4 |
Products include Debian Debian Linux, Magic Asyncpg.
How do I fix CVE-2020-17446?
Upgrade asyncpg to 0.21.0 or later.
Upgrade to the fixed version. Memory-safe languages, compiler hardening and fuzzing prevent most new cases. More about Memory corruption.
Is CVE-2020-17446 being exploited?
There is no known exploitation of CVE-2020-17446 in the wild and no public exploit code.
Other vulnerabilities in Debian Debian Linux
Sources
Also known as DEBIAN-CVE-2020-17446, DLA-2363-1, GHSA-2xpj-f5g2-8p7m, PYSEC-2020-24, UBUNTU-CVE-2020-17446, openSUSE-SU-2024:11215-1 and 2 more.