Description
library/glob.html in the Python 2 and 3 documentation before 2016 has potentially misleading information about whether sorting occurs, as demonstrated by irreproducible cancer-research results. NOTE: the effects of this documentation cross application domains, and thus it is likely that security-relevant code elsewhere is affected. This issue is not a Python implementation bug, and there are no reports that NMR researchers were specifically relying on library/glob.html. In other words, because the older documentation stated "finds all the pathnames matching a specified pattern according to the rules used by the Unix shell," one might have incorrectly inferred that the sorting that occurs in a Unix shell also occurred for glob.glob. There is a workaround in newer versions of Willoughby nmr-data_compilation-p2.py and nmr-data_compilation-p3.py, which call sort() directly.
Fixed in Linux distributions
Distributions backport fixes, so the version that fixes this vulnerability differs per release — upgrade to at least the version shown. From the distributions' security trackers and advisories.
Ubuntu
Security tracker ↗| Release | Package | Fixed in | Advisory |
|---|---|---|---|
| Ubuntu 22.04 LTS | python3.10 | 3.10.12-1~22.04.4 | USN-6891-1 |
| Ubuntu 20.04 LTS | python2.7 | 2.7.18-1~20.04.1 | USN-4754-3 |
| Ubuntu 20.04 LTS | python3.8 | 3.8.2-1ubuntu1.2 | USN-6891-1, USN-4428-1 |
| Ubuntu 18.04 LTS | python2.7 | 2.7.17-1~18.04ubuntu1.1 | USN-4428-1 |
| Ubuntu 18.04 LTS | python3.6 | 3.6.9-1~18.04ubuntu1.1 | USN-4428-1 |
| Ubuntu 18.04 LTS | python3.7 | 3.7.5-2~18.04.4 | USN-4754-3 |
| Ubuntu 18.04 LTS | python3.8 | 3.8.0-3~18.04 | USN-4754-3 |
| Ubuntu 16.04 LTS | python2.7 | 2.7.12-1ubuntu0~16.04.12 | USN-4428-1 |
| Ubuntu 16.04 LTS | python3.5 | 3.5.2-2ubuntu0~16.04.11 | USN-4428-1 |
Show 5 more (older releases, extended support, other products)Fewer releases
| Release | Package | Fixed in | Advisory |
|---|---|---|---|
| Ubuntu Pro 22.04 LTS | python2.7 | No fix yet | — |
| Ubuntu Pro 22.04 LTS | python3.11 | 3.11.0~rc1-1~22.04.1~esm1 | USN-6891-1 |
| Ubuntu Pro 20.04 LTS | python3.9 | 3.9.5-3ubuntu0~20.04.1+esm2 | USN-6891-1 |
| Ubuntu Pro 18.04 LTS | python3.6 | 3.6.9-1~18.04ubuntu1.13+esm2 | USN-6891-1 |
| Ubuntu Pro 18.04 LTS | python3.7 | 3.7.5-2ubuntu1~18.04.2+esm3 | USN-6891-1 |
| Ubuntu Pro 18.04 LTS | python3.8 | 3.8.0-3ubuntu1~18.04.2+esm2 | USN-6891-1 |
| Ubuntu Pro 16.04 LTS | python3.5 | 3.5.2-2ubuntu0~16.04.13+esm13 | USN-6891-1 |
| Ubuntu Pro 14.04 LTS | python2.7 | 2.7.6-8ubuntu0.6+esm6 | USN-4428-1 |
| Ubuntu Pro 14.04 LTS | python3.4 | 3.4.3-1ubuntu1~14.04.7+esm7 | USN-4428-1 |
| Ubuntu Pro 14.04 LTS | python3.5 | 3.5.2-2ubuntu0~16.04.4~14.04.1+esm1 | USN-6891-1 |
Advisories 3
- USN-4428-1 python2.7, python3.4, python3.5, python3.6, python3.8 vulnerabilities Ubuntu Security Notices (USN) · Oct 8, 2026
- USN-6891-1 python3.5, python3.6, python3.7, python3.8, python3.9, python3.10, python3.11, python3.12 vulnerabilities Ubuntu Security Notices (USN) · Oct 8, 2026
- USN-4754-3 python2.7, python3.7, python3.8 vulnerabilities Ubuntu Security Notices (USN) · Oct 8, 2026
References
- https://web.archive.org/web/20150906020027/https://docs.python.org/2.7/library/glob.html
- https://web.archive.org/web/20160526201356/https://docs.python.org/2.7/library/glob.html
- https://web.archive.org/web/20150822013622/https://docs.python.org/3/library/glob.html
- https://web.archive.org/web/20160309211341/https://docs.python.org/3/library/glob.html
- https://github.com/bminor/bash/blob/ac50fbac377e32b98d2de396f016ea81e8ee9961/pathexp.c#L380
- https://github.com/bminor/bash/blob/ac50fbac377e32b98d2de396f016ea81e8ee9961/pathexp.c#L405
- https://bugs.python.org/issue33275
- https://twitter.com/LucasCMoore/status/1181615421922824192
- https://pubs.acs.org/doi/suppl/10.1021/acs.orglett.9b03216/suppl_file/ol9b03216_si_002.zip
- https://pubs.acs.org/doi/full/10.1021/acs.orglett.9b03216
- https://www.vice.com/en_us/article/zmjwda/a-code-glitch-may-have-caused-errors-in-more-than-100-published-studies
- https://twitter.com/chris_bloke/status/1181997278136958976
- https://security.netapp.com/advisory/ntap-20191107-0005/
- USN-4428-1 vendor-advisory