Skip to content
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

[3.9] bpo-43882 - urllib.parse should sanitize urls containing ASCII newline and tabs. (GH-25595) #25725

Merged
merged 2 commits into from
Apr 29, 2021

Conversation

miss-islington
Copy link
Contributor

@miss-islington miss-islington commented Apr 29, 2021

  • issue43882 - urllib.parse should sanitize urls containing ASCII newline and tabs.

Co-authored-by: Gregory P. Smith [email protected]
Co-authored-by: Serhiy Storchaka [email protected]
(cherry picked from commit 76cd81d)

Co-authored-by: Senthil Kumaran [email protected]

https://bugs.python.org/issue43882

…e and tabs. (pythonGH-25595)

* issue43882 - urllib.parse should sanitize urls containing ASCII newline and tabs.

Co-authored-by: Gregory P. Smith <[email protected]>
Co-authored-by: Serhiy Storchaka <[email protected]>
(cherry picked from commit 76cd81d)

Co-authored-by: Senthil Kumaran <[email protected]>
@miss-islington
Copy link
Contributor Author

@orsenthil: Status check is done, and it's a success ✅ .

@miss-islington
Copy link
Contributor Author

@orsenthil: Status check is done, and it's a success ✅ .

@bedevere-bot bedevere-bot added type-bug An unexpected behavior, bug, or error type-security A security issue labels Apr 29, 2021
@miss-islington
Copy link
Contributor Author

@orsenthil: Status check is done, and it's a failure ❌ .

@orsenthil orsenthil merged commit 491fde0 into python:3.9 Apr 29, 2021
@miss-islington miss-islington deleted the backport-76cd81d-3.9 branch April 29, 2021 17:57
mlissner added a commit to freelawproject/courtlistener that referenced this pull request Apr 30, 2021
This goes to show that messing with security-critical code is a nasty
business and often a mistake. Luckily, we have tests, but what
happened here is that I tweaked the code to separate out checks from
redirection. In so doing, I removed pulled the quoting code into the
checks, but took it out of the redirection part. So previously, we'd
quote a URL before redirecting it, now we didn't.

To fix this, I copied the fix from Python's standard lib that you can
see here:

    python/cpython#25725

Instead of quoting it, we just make sure it doesn't have newlines. If
it does, we bail.
gentoo-bot pushed a commit to gentoo/cpython that referenced this pull request May 2, 2021
…newline and tabs. (pythonGH-25595) (pythonGH-25725)

* bpo-43882 - urllib.parse should sanitize urls containing ASCII newline and tabs. (pythonGH-25595)

Co-authored-by: Gregory P. Smith <[email protected]>
Co-authored-by: Serhiy Storchaka <[email protected]>
(cherry picked from commit 76cd81d)
Co-authored-by: Senthil Kumaran <[email protected]>
(backported to Python 2.7 by Michał Górny)
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
type-bug An unexpected behavior, bug, or error type-security A security issue
Projects
None yet
Development

Successfully merging this pull request may close these issues.

4 participants