CVE-2022-22817: Arbitrary expression injection in Pillow
(updated )
PIL.ImageMath.eval
in Pillow before 9.0.0 allows evaluation of arbitrary expressions, such as ones that use the Python exec method ImageMath.eval("exec(exit())")
.
While Pillow 9.0.0 restricted top-level builtins available to PIL.ImageMath.eval(), it did not prevent builtins available to lambda expressions. These are now also restricted in 9.0.1.
References
- github.com/advisories/GHSA-8vj2-vxx3-667w
- github.com/pypa/advisory-database/tree/main/vulns/pillow/PYSEC-2022-10.yaml
- github.com/python-pillow/Pillow
- github.com/python-pillow/Pillow/commit/8531b01d6cdf0b70f256f93092caa2a5d91afc11
- lists.debian.org/debian-lts-announce/2022/01/msg00018.html
- lists.debian.org/debian-lts-announce/2024/03/msg00021.html
- nvd.nist.gov/vuln/detail/CVE-2022-22817
- pillow.readthedocs.io/en/stable/releasenotes/9.0.0.html
- pillow.readthedocs.io/en/stable/releasenotes/9.0.1.html
- security.gentoo.org/glsa/202211-10
- www.debian.org/security/2022/dsa-5053
Detect and mitigate CVE-2022-22817 with GitLab Dependency Scanning
Secure your software supply chain by verifying that all open source dependencies used in your projects contain no disclosed vulnerabilities. Learn more about Dependency Scanning →