CVE-2023-50447 Arbitrary Code Execution in Pillow
Attackers can execute arbitrary code via the environment parameter in PIL.ImageMath.eval, requiring an upgrade to Pillow.
- Exploited in the wild
- Not known
- Login needed
- Not needed
- Attackable
- Over the internet
- Victim action needed
- Not needed
- Fix
- Available
What is CVE-2023-50447?
CVE-2023-50447 is a high-severity code injection vulnerability in Debian Debian Linux, published on 19 Jan 2024. An attacker can exploit it over the internet without logging in, with no action from the victim.
Official description
Pillow through 10.1.0 allows PIL.ImageMath.eval Arbitrary Code Execution via the environment parameter, a different vulnerability than CVE-2022-22817 (which was about the expression parameter).
Which versions are affected by CVE-2023-50447?
4 open source packages ship an affected version, including pillow and Pillow. It affects 2 products.
| Package | Affected | Fixed in |
|---|---|---|
pillow Bitnami | All versions | 10.1.1 |
pillow PyPI | All versions | 10.2.0 |
pillow PyPI | All versions | 10.2.0 |
Pillow PyPI | All versions | 10.2.0 |
Linux distribution packages (36)
python3-pillow AlmaLinux:8 | All versions | 5.1.1-18.el8_9.1.alma.1 |
python3-pillow-devel AlmaLinux:8 | All versions | 5.1.1-18.el8_9.1.alma.1 |
python3-pillow-doc AlmaLinux:8 | All versions | 5.1.1-18.el8_9.1.alma.1 |
python3-pillow-tk AlmaLinux:8 | All versions | 5.1.1-18.el8_9.1.alma.1 |
python-pillow Red Hat:enterprise_linux:7::client | All versions | 0:2.0.0-25.gitd1c6db8.el7_9 |
python-pillow-debuginfo Red Hat:enterprise_linux:7::client | All versions | 0:2.0.0-25.gitd1c6db8.el7_9 |
python-pillow-devel Red Hat:enterprise_linux:7::client | All versions | 0:2.0.0-25.gitd1c6db8.el7_9 |
python-pillow-doc Red Hat:enterprise_linux:7::client | All versions | 0:2.0.0-25.gitd1c6db8.el7_9 |
python-pillow-qt Red Hat:enterprise_linux:7::client | All versions | 0:2.0.0-25.gitd1c6db8.el7_9 |
python-pillow-sane Red Hat:enterprise_linux:7::client | All versions | 0:2.0.0-25.gitd1c6db8.el7_9 |
python-pillow-tk Red Hat:enterprise_linux:7::client | All versions | 0:2.0.0-25.gitd1c6db8.el7_9 |
python-pillow Red Hat:enterprise_linux:7::computenode | All versions | 0:2.0.0-25.gitd1c6db8.el7_9 |
python-pillow-debuginfo Red Hat:enterprise_linux:7::computenode | All versions | 0:2.0.0-25.gitd1c6db8.el7_9 |
python-pillow-devel Red Hat:enterprise_linux:7::computenode | All versions | 0:2.0.0-25.gitd1c6db8.el7_9 |
python-pillow-doc Red Hat:enterprise_linux:7::computenode | All versions | 0:2.0.0-25.gitd1c6db8.el7_9 |
python-pillow-qt Red Hat:enterprise_linux:7::computenode | All versions | 0:2.0.0-25.gitd1c6db8.el7_9 |
python-pillow-sane Red Hat:enterprise_linux:7::computenode | All versions | 0:2.0.0-25.gitd1c6db8.el7_9 |
python-pillow-tk Red Hat:enterprise_linux:7::computenode | All versions | 0:2.0.0-25.gitd1c6db8.el7_9 |
python-pillow Red Hat:enterprise_linux:7::server | All versions | 0:2.0.0-25.gitd1c6db8.el7_9 |
python-pillow-debuginfo Red Hat:enterprise_linux:7::server | All versions | 0:2.0.0-25.gitd1c6db8.el7_9 |
python-pillow-devel Red Hat:enterprise_linux:7::server | All versions | 0:2.0.0-25.gitd1c6db8.el7_9 |
python-pillow-doc Red Hat:enterprise_linux:7::server | All versions | 0:2.0.0-25.gitd1c6db8.el7_9 |
python-pillow-qt Red Hat:enterprise_linux:7::server | All versions | 0:2.0.0-25.gitd1c6db8.el7_9 |
python-pillow-sane Red Hat:enterprise_linux:7::server | All versions | 0:2.0.0-25.gitd1c6db8.el7_9 |
python-pillow-tk Red Hat:enterprise_linux:7::server | All versions | 0:2.0.0-25.gitd1c6db8.el7_9 |
python-pillow Red Hat:enterprise_linux:7::workstation | All versions | 0:2.0.0-25.gitd1c6db8.el7_9 |
python-pillow-debuginfo Red Hat:enterprise_linux:7::workstation | All versions | 0:2.0.0-25.gitd1c6db8.el7_9 |
python-pillow-devel Red Hat:enterprise_linux:7::workstation | All versions | 0:2.0.0-25.gitd1c6db8.el7_9 |
python-pillow-doc Red Hat:enterprise_linux:7::workstation | All versions | 0:2.0.0-25.gitd1c6db8.el7_9 |
python-pillow-qt Red Hat:enterprise_linux:7::workstation | All versions | 0:2.0.0-25.gitd1c6db8.el7_9 |
python-pillow-sane Red Hat:enterprise_linux:7::workstation | All versions | 0:2.0.0-25.gitd1c6db8.el7_9 |
python-pillow-tk Red Hat:enterprise_linux:7::workstation | All versions | 0:2.0.0-25.gitd1c6db8.el7_9 |
python-pillow Red Hat:enterprise_linux:8::appstream | All versions | 0:5.1.1-18.el8_9.1 |
python-pillow-debuginfo Red Hat:enterprise_linux:8::appstream | All versions | 0:5.1.1-18.el8_9.1 |
python-pillow-debugsource Red Hat:enterprise_linux:8::appstream | All versions | 0:5.1.1-18.el8_9.1 |
python3-pillow Red Hat:enterprise_linux:8::appstream | All versions | 0:5.1.1-18.el8_9.1 |
Products include Debian Debian Linux, Python Pillow.
How do I fix CVE-2023-50447?
Upgrade pillow to a fixed version for your release line: 10.1.1 or 10.2.0.
Upgrade, and never evaluate templates, expressions or code built from user input. More about Code injection.
Is CVE-2023-50447 being exploited?
There is no known exploitation of CVE-2023-50447 in the wild and no public exploit code.
Other vulnerabilities in Debian Debian Linux
Sources
Also known as ALSA-2024:0893, BIT-pillow-2023-50447, DEBIAN-CVE-2023-50447, DLA-3724-1, GHSA-3f63-hfp8-52jq, MGASA-2024-0018 and 15 more.