Leading white space bypasses protocol validation
### 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
```js
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:
* Open an issue in medialize/URI.js
https://github.com/medialize/URI.js/