GHSA-9q2p-fj49-vpxj
In marshmallow library the schema "only" option treats an empty list as implying no "only" option
Packages
| Ecosystem | Package | Affected | Fixed in |
|---|---|---|---|
| PyPI | marshmallow | < 2.15.1 | 2.15.1 |
| PyPI | marshmallow | >= 3.0a0, < 3.0.0b9 | 3.0.0b9 |
Details
As written in the advisory (Markdown source, shown as plain text).
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").
References
External links from the advisory. They lead to third-party sites.
- https://nvd.nist.gov/vuln/detail/CVE-2018-17175
- https://github.com/marshmallow-code/marshmallow/issues/772
- https://github.com/marshmallow-code/marshmallow/pull/777
- https://github.com/marshmallow-code/marshmallow/pull/782
- https://github.com/marshmallow-code
- https://github.com/pypa/advisory-database/tree/main/vulns/marshmallow/PYSEC-2018-67.yaml