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.
@Vijar @redonkulus
Based on this owasp guideline,
Escaping is not needed for JSON data output, as long as the content-type header is set correctly to
Content-Type: application/json; charset=utf-8
, which fetchr already does withres.json()
.But there could be legacy browsers with security bugs that do not respect this, such as Opera browser prior to Opera 11.65 (Latest Opera is at 34.0 as of now.): https://www.cvedetails.com/cve/CVE-2012-3557/
This PR escapes only the message strings fetchr library generates that can be part of the JSON response for addressing legacy browser concerns. If application is concerned about legacy browser in general, the suggestion is to escape output app generates in the app before sending to fetchr.