Allow for out-of-band xsrf tokens #1506
Closed
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
There have become several situations where control for something that will inevitably come back as a callback (via POST) will not include the proper CSRF token... however the callback URI can (and should) be adorned with one.
Examples are using oneall's social login service which requires a callback for extra processing. Decorating the CSRF requirements away does not help protect against unmanageable situations.
An unmanagable situation would be where we all assume a service will be using security reasoning when developing a project. Oneall.com uses pseudo random UUIDs when passing an important bit of information back to a callback. If they ever switch to incremental or predictable hashes (due to a mistake on their end or perhaps a bad decision) an exploit can occur that requiring the csrf token could help mitigate. In this case the token would have to be passed via GET parameters.
This can be extended to OAUTH behaviors as well.
There are a lot of other services.. including mail outs.. that use callbacks for send notifications that could be adorned with a token as well.