GHSA-gmv4-r438-p67fMediumCVSS 5.3

Leading white space bypasses protocol validation

Published
March 3, 2022
Last Modified
February 3, 2023

🔗 CVE IDs covered (1)

📋 Description

Impact

Whitespace characters are not removed from the beginning of the protocol, so URLs are not parsed properly and protocol validation mechanisms may fail.

Patches

Patched in 1.19.9

Workarounds

Remove leading whitespace from values before passing them to URI.parse (e.g. via .href(value) or new URI(value)), e.g. by using

function remove_whitespace(url){
     const whitespace = /^[\x00-\x20\u00a0\u1680\u2000-\u200a\u2028\u2029\u202f\u205f\u3000\ufeff]+/;
     url = url.replace(whitespace, '')
     return url
}

References

  • https://huntr.dev/bounties/82ef23b8-7025-49c9-b5fc-1bb9885788e5/

For more information

If you have any questions or comments about this advisory:

🎯 Affected products1

  • npm/urijs:< 1.19.9

🔗 References (6)