CVE-2018-17175 In marshmallow library the schema "only" option treats an empty list as implying no "only" option

Medium 5.3 Published Updated

An attacker can expose all schema fields instead of none when the 'only' option is dynamically set to an empty list, leading to information disclosure.

Exploited in the wild
Not known
Login needed
Not needed
Attackable
Over the internet
Victim action needed
Not needed
Fix
Available

What is CVE-2018-17175?

CVE-2018-17175 is a medium-severity vulnerability in n/a, published on 18 Sep 2018. An attacker can exploit it over the internet without logging in, with no action from the victim.

Official description

In the marshmallow library before 2.15.1 and 3.x before 3.0.0b9 for Python, the schema "only" option treats an empty list as implying no "only" option, which allows a request that was intended to expose no fields to instead expose all fields (if the schema is being filtered dynamically using the "only" option, and there is a user role that produces an empty value for "only").

Which versions are affected by CVE-2018-17175?

5 open source packages ship an affected version, including marshmallow. It affects 1 product.

PackageAffectedFixed in
marshmallow PyPIAll versions2.15.1, 3.0.0b9
marshmallow PyPIAll versions2.15.1
marshmallow PyPIAll versions2.15.1
marshmallow PyPIFrom 3.0a03.0.0b9
marshmallow PyPIFrom 3.0a03.0.0b9
Linux distribution packages (2)
python-marshmallow openSUSE:TumbleweedAll versions3.20.2-2.2
python-marshmallow openSUSE:TumbleweedAll versions4.3.0-1.2

Products include Marshmallow Project Marshmallow.

How do I fix CVE-2018-17175?

Upgrade marshmallow to a fixed version for your release line: 2.15.1 or 3.0.0b9.

Is CVE-2018-17175 being exploited?

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

Sources

Also known as DEBIAN-CVE-2018-17175, GHSA-9q2p-fj49-vpxj, MGASA-2019-0065, PYSEC-2018-67, UBUNTU-CVE-2018-17175, openSUSE-SU-2024:11238-1 and 2 more.

Is CVE-2018-17175 in your software?

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

Check your SBOMs for free