CVE-2020-15271 Shell Command Execution in lookatme
Attackers can execute arbitrary shell commands by tricking users into rendering malicious markdown with the lookatme library.
- Exploited in the wild
- Not known
- Login needed
- Not needed
- Attackable
- Over the internet
- Victim action needed
- A user has to click or open something
- Fix
- Available
What is CVE-2020-15271?
CVE-2020-15271 is a critical command injection vulnerability in d0c-s4vage lookatme, published on 26 Oct 2020. An attacker can exploit it over the internet without logging in, and only if a user opens a file or follows a link.
Official description
In lookatme (python/pypi package) versions prior to 2.3.0, the package automatically loaded the built-in "terminal" and "file_loader" extensions. Users that use lookatme to render untrusted markdown may have malicious shell commands automatically run on their system. This is fixed in version 2.3.0. As a workaround, the `lookatme/contrib/terminal.py` and `lookatme/contrib/file_loader.py` files may be manually deleted. Additionally, it is always recommended to be aware of what is being rendered with lookatme.
Weakness: CWE-78
Which versions are affected by CVE-2020-15271?
3 open source packages ship an affected version, including lookatme. It affects 1 product.
| Package | Affected | Fixed in |
|---|---|---|
lookatme PyPI | All versions | 2.3.0 |
lookatme PyPI | All versions | 2.3.0 |
lookatme PyPI | All versions | 2.3.0 |
Products include Lookatme Project Lookatme.
How do I fix CVE-2020-15271?
Upgrade lookatme to 2.3.0 or later.
Upgrade, and pass arguments to programs as a list instead of through a shell. More about Command injection.
Is CVE-2020-15271 being exploited?
There is no known exploitation of CVE-2020-15271 in the wild and no public exploit code.
Sources
Also known as DEBIAN-CVE-2020-15271, GHSA-c84h-w6cr-5v8q, PYSEC-2020-61.