About Licenses display changes + revise license URL return method to improve security#4731
Merged
akolson merged 2 commits intolearningequality:unstablefrom Sep 13, 2024
Conversation
akolson
reviewed
Sep 13, 2024
| this.showAboutLicense = !this.showAboutLicense; | ||
| }, | ||
| getLicenseUrl(license) { | ||
| const url = new URL(license.license_url); |
Member
There was a problem hiding this comment.
Hi @LianaHarris360 is the license.license_url a guaranteed non null, non empty, url string? If not, it might be worthwhile adding a try...catch to prevent any failures.
Otherwise the rest of change seems logical to me and fixes the issue with the codeQL. We should be good to merge this back to unstable once once the above question is clarified.
Thanks
Member
Author
There was a problem hiding this comment.
It would be good to include a try...catch here, thanks for pointing this out! All entries, with the exception of one, are guaranteed to be non-empty URL strings.
akolson
approved these changes
Sep 13, 2024
Member
akolson
left a comment
There was a problem hiding this comment.
LGTM! Thanks @LianaHarris360. Merging this in light of successful review done on #4716
Merged
Merged
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
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.
Summary
Description of the change(s) you made
This pull request is a new version of #4716. It now includes a check to ensure that the hostname of a URL is within an array of approved hosts. This is in response to CodeQL's feedback of incomplete URL substring sanitization because 'creativecommons.org' can be anywhere in the URL, and arbitrary hosts may come before or after it.
Screenshots (if applicable)
Reviewer guidance
Are there any risky areas that deserve extra testing?
Ensure that clicking on "Learn More" in the About Licenses section correctly directs the user to the specified URL.
Contributor's Checklist
PR process:
CHANGELOGlabel been added to this PR. Note: items with this label will be added to the CHANGELOG at a later timedocslabel has been added if this introduces a change that needs to be updated in the user docs?requirements.txtfiles also included in this PRStudio-specifc:
notranslateclass been added to elements that shouldn't be translated by Google Chrome's automatic translation feature (e.g. icons, user-generated text)pages,components, andlayoutsdirectories as described in the docsTesting:
Reviewer's Checklist
This section is for reviewers to fill out.
yarnandpip)