]> git.ipfire.org Git - thirdparty/Python/cpython.git/commit
[3.7] bpo-42103: Improve validation of Plist files. (GH-22882) (#23117)
authorSerhiy Storchaka <storchaka@gmail.com>
Tue, 10 Nov 2020 19:54:15 +0000 (21:54 +0200)
committerGitHub <noreply@github.com>
Tue, 10 Nov 2020 19:54:15 +0000 (14:54 -0500)
commit225e3659556616ad70186e7efc02baeebfeb5ec4
tree5e3caa9f0fe900f6dd9a9b72a7869264aa77238f
parentdd2804790dfa116d20e37bc6b4463c07586da76c
[3.7] bpo-42103: Improve validation of Plist files. (GH-22882) (#23117)

* Prevent some possible DoS attacks via providing invalid Plist files
  with extremely large number of objects or collection sizes.
* Raise InvalidFileException for too large bytes and string size instead of returning garbage.
* Raise InvalidFileException instead of ValueError for specific invalid datetime (NaN).
* Raise InvalidFileException instead of TypeError for non-hashable dict keys.
* Add more tests for invalid Plist files..
(cherry picked from commit 34637a0ce21e7261b952fbd9d006474cc29b681f)

Co-authored-by: Serhiy Storchaka <storchaka@gmail.com>
Lib/plistlib.py
Lib/test/test_plistlib.py
Misc/NEWS.d/next/Library/2020-10-23-19-20-14.bpo-42103.C5obK2.rst [new file with mode: 0644]
Misc/NEWS.d/next/Security/2020-10-23-19-19-30.bpo-42103.cILT66.rst [new file with mode: 0644]