-
-
Notifications
You must be signed in to change notification settings - Fork 2.3k
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Backfill release notes with security fix details #7877
Changes from all commits
04f60eb
231e738
95b3138
2b8dfaa
20d451b
a200d71
914db6c
a78fbfe
deca2dd
1f11733
f77273d
92f0889
f61e184
c69dcc1
3aefe92
7b1c39c
4d81ec8
bae0c98
e97722b
7b485c7
69a4e0d
15deb71
ad134c6
ae5f1de
0ea144b
f316fd9
180f37b
b5f7779
45975e4
4438305
5b3dabb
115179e
e7d8774
File filter
Filter by extension
Conversations
Jump to
Diff view
Diff view
There are no files selected for viewing
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -1,6 +1,19 @@ | ||
10.3.0 | ||
------ | ||
|
||
Security | ||
======== | ||
|
||
TODO | ||
^^^^ | ||
|
||
TODO | ||
|
||
:cve:`YYYY-XXXXX`: TODO | ||
^^^^^^^^^^^^^^^^^^^^^^^ | ||
|
||
TODO | ||
|
||
Backwards Incompatible Changes | ||
============================== | ||
|
||
|
@@ -63,14 +76,6 @@ Added PerspectiveTransform | |
that all of the :py:data:`~PIL.Image.Transform` values now have a corresponding | ||
subclass of :py:class:`~PIL.ImageTransform.Transform`. | ||
|
||
Security | ||
======== | ||
|
||
TODO | ||
^^^^ | ||
|
||
TODO | ||
|
||
Other Changes | ||
============= | ||
|
||
|
@@ -85,3 +90,19 @@ Release GIL when fetching WebP frames | |
|
||
Python's Global Interpreter Lock is now released when fetching WebP frames from | ||
the libwebp decoder. | ||
|
||
Added release notes for past releases | ||
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ | ||
|
||
Added release notes for past releases: ``2.6.0``, ``2.5.2``, | ||
``2.3.2``, ``2.3.1``. With these additions we are able to | ||
provide a comprehensive list of all Pillow CVE records from | ||
1995 to 2024 across three noteworthy periods: | ||
|
||
- 1995-2009: No known CVEs | ||
- 2010-2018: :cve:`2014-1932`, :cve:`2014-3589`, :cve:`2016-0740`, :cve:`2016-3076` | ||
- 2019-2024: :cve:`2019-16865`, :cve:`2019-19911`, :cve:`2020-10177`, :cve:`2020-15999`, | ||
Comment on lines
+102
to
+104
There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. These date ranges seem arbitrary and unexplained. Why start in 1995? CVEs began in 1999:
https://www.cve.org/About/History Why start the second range in 2010? The first listed CVE is 2014. There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. 1995-2009: PIL |
||
:cve:`2020-35653`, :cve:`2021-25289`, :cve:`2020-35654`, :cve:`2020-35654`, | ||
:cve:`2021-27921`, :cve:`2021-27922`, :cve:`2021-27923`, :cve:`2021-25287`, | ||
:cve:`2021-25288`, :cve:`2021-34552`, :cve:`2021-23437`, :cve:`2022-22817`, | ||
:cve:`2022-24303`, :cve:`2022-30595`, :cve:`2023-44271`, :cve:`2023-4863` |
hugovk marked this conversation as resolved.
Show resolved
Hide resolved
|
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,26 @@ | ||
2.3.1 | ||
----- | ||
|
||
Security | ||
======== | ||
|
||
These issues reported in | ||
`Debian bug #737059 <https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=737059>`_. | ||
|
||
:cve:`2014-1932`: Fix insecure use of :py:func:`tempfile.mktemp` | ||
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ | ||
|
||
The (1) load_djpeg function in ``JpegImagePlugin.py``, (2) Ghostscript function | ||
in EpsImagePlugin.py, (3) load function in ``IptcImagePlugin.py``, and (4) | ||
``_copy`` function in Image.py in Python Image Library (PIL) 1.1.7 and earlier | ||
and Pillow before 2.3.1 do not properly create temporary files, which allow | ||
local users to overwrite arbitrary files and obtain sensitive information via a | ||
symlink attack on the temporary file. | ||
|
||
:cve:`2014-1933`: Fix insecure use of :py:func:`tempfile.mktemp` | ||
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ | ||
|
||
The (1) ``JpegImagePlugin.py`` and (2) ``EpsImagePlugin.py`` scripts in Python | ||
Image Library (PIL) 1.1.7 and earlier and Pillow before 2.3.1 uses the names of | ||
temporary files on the command line, which makes it easier for local users to | ||
conduct symlink attacks by listing the processes. |
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,14 @@ | ||
2.3.2 | ||
----- | ||
|
||
Security | ||
======== | ||
|
||
:cve:`2014-3589`: Fix DOS attack | ||
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ | ||
|
||
``PIL/IcnsImagePlugin.py`` in Python Imaging Library (PIL) and Pillow before 2.3.2 and | ||
2.5.x before 2.5.2 allows remote attackers to cause a denial of service via a crafted | ||
block size. | ||
|
||
Found and reported by Andrew Drake of dropbox.com |
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,14 @@ | ||
2.5.2 | ||
----- | ||
|
||
Security | ||
======== | ||
|
||
:cve:`2014-3589`: Fix DOS attack | ||
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ | ||
|
||
``PIL/IcnsImagePlugin.py`` in Python Imaging Library (PIL) and Pillow before 2.3.2 and | ||
2.5.x before 2.5.2 allows remote attackers to cause a denial of service via a crafted | ||
block size. | ||
|
||
Found and reported by Andrew Drake of dropbox.com |
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,22 @@ | ||
2.6.0 | ||
----- | ||
|
||
Security | ||
======== | ||
|
||
:cve:`2014-3589`: Fix DOS attack | ||
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ | ||
|
||
``PIL/IcnsImagePlugin.py`` in Python Imaging Library (PIL) and Pillow before 2.3.2 and | ||
2.5.x before 2.5.2 allows remote attackers to cause a denial of service via a crafted | ||
block size. | ||
|
||
Found and reported by Andrew Drake of dropbox.com | ||
aclark4life marked this conversation as resolved.
Show resolved
Hide resolved
|
||
|
||
Other Changes | ||
============= | ||
|
||
Relaxed precision of some tests | ||
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ | ||
|
||
Relaxed imagedraw tests to allow slight errors for x86 vs x64. | ||
Comment on lines
+16
to
+22
There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. Hmm, this was indeed something added to 2.6.0, but it seems insignificant on its own. We rarely mention changes to tests in release notes. Plus there's also all the 2.6.0-rc1 changes not included, and we've not added the non-CVE fixes to the other new files, and the other non-CVE releases are skipped, so I think we could skip this. There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. Fine to remove, yeah |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
There are only 23 CVEs listed here.
But there are 48 listed at #7864, do we not need those extra ones?
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Good catch! I'm not sure, but I do want to track all CVEs from 1995 (dawn of CVEs) to now.