CVE-2020-15271 Shell Command Execution in lookatme

Critical 9.3 Published Updated

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.

PackageAffectedFixed in
lookatme PyPIAll versions2.3.0
lookatme PyPIAll versions2.3.0
lookatme PyPIAll versions2.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.

Is CVE-2020-15271 in your software?

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

Check your SBOMs for free