CVE-2021-28677: Input Validation

Published Apr 1, 2021
·
Updated

A flaw was found in python-pillow. The readline used in EPS has to deal with any combination of \r and \n as line endings. It accidentally used a quadratic method of accumulating lines while looking for a line ending. A malicious EPS file could use this to perform a denial-of-service of Pillow in the open phase, before an image was accepted for opening.

Other sources

An issue was discovered in Pillow before 8.2.0. For EPS data, the readline implementation used in EPSImageFile has to deal with any combination of \r and \n as line endings. It used an accidentally quadratic method of accumulating lines while looking for a line ending. A malicious EPS file could use this to perform a DoS of Pillow in the open phase, before an image was accepted for opening.

The readline used in EPS has to deal with any combination of \r and \n as line endings. It accidentally used a quadratic method of accumulating lines while looking for a line ending. A malicious EPS file could use this to perform a denial-of-service of Pillow in the open phase, before an image was accepted for opening. This dates to the PIL fork.

References: https://pillow.readthedocs.io/en/stable/releasenotes/8.2.0.html#security https://github.com/python-pillow/Pillow/pull/5377

Red Hat

Affected Software

5 affected componentsFixes available
redhat/python-pillow<0:5.1.1-16.el8
0:5.1.1-16.el8
redhat/python-pillow<8.2.0
8.2.0
pip/Pillow<8.2.0
8.2.0
Python Pillow<8.2.0
Fedoraproject Fedora=33

Remediation

Information

To mitigate this feature on Red Hat Quay keep the invoice generation feature disabled, as it is by default.

Event History

Apr 1, 2021
CVE Published
12:00 AM
Jun 2, 2021
CVE Published
via MITRE·03:18 PM
Data Sourced
via MITRE·03:18 PM
Description
Jun 8, 2021
Advisory Published
via GitHub·06:49 PM

Parent advisories

This vulnerability appears in the following advisories.

Free Weekly Intel

Don't miss critical vulnerabilities

Join thousands of security professionals who receive our weekly digest of trending CVEs, zero-days, and exploited vulnerabilities.

No spam. Unsubscribe anytime.

Frequently Asked Questions

1

What is CVE-2021-28677?

CVE-2021-28677 is a vulnerability found in python-pillow, a library used for handling EPS data.

2

What is the severity of CVE-2021-28677?

CVE-2021-28677 has a severity rating of high (7).

3

How does CVE-2021-28677 affect python-pillow?

CVE-2021-28677 affects python-pillow versions 0:5.1.1-16.el8 up to, but excluding, 8.2.0.

4

How can I fix CVE-2021-28677?

To fix CVE-2021-28677, upgrade python-pillow to version 8.2.0 or higher.

5

Where can I find more information about CVE-2021-28677?

You can find more information about CVE-2021-28677 on CVE.org (https://www.cve.org/CVERecord?id=CVE-2021-28677) and NVD (https://nvd.nist.gov/vuln/detail/CVE-2021-28677).

Contact

SecAlerts Pty Ltd.
132 Wickham Terrace
Fortitude Valley,
QLD 4006, Australia
info@secalerts.co
By using SecAlerts services, you agree to our services end-user license agreement. This website is safeguarded by reCAPTCHA and governed by the Google Privacy Policy and Terms of Service. All names, logos, and brands of products are owned by their respective owners, and any usage of these names, logos, and brands for identification purposes only does not imply endorsement. If you possess any content that requires removal, please get in touch with us.
© 2026 SecAlerts Pty Ltd.
ABN: 70 645 966 203, ACN: 645 966 203