GitHub Advisoryadvisory · npm
GHSA-gmv4-r438-p67f Leading white space bypasses protocol validation
MEDIUM
Official page ↗
- Aliases
- CVE-2022-24723
- Ecosystem
- npm
- Packages
- urijs
- Severity
- Moderate
- CVSS vector
- CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:L/A:N
- Weaknesses
- CWE-20
- Reviewed
- 2022-03-03
Affected packages
• npm urijs: < 1.19.9 → fixed in 1.19.9
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
```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
Related
Alias · CVE (1)
- CVE-2022-24723 URI.js is a Javascript URL mutation library. vulnerability
Weakness · CWE (1)
- CWE-20 Improper Input Validation weakness
References
- https://github.com/medialize/URI.js/security/advisories/GHSA-gmv4-r438-p67f web
- https://nvd.nist.gov/vuln/detail/CVE-2022-24723 advisory
- https://github.com/medialize/URI.js/commit/86d10523a6f6e8dc4300d99d671335ee362ad316 web
- https://github.com/medialize/URI.js web
- https://github.com/medialize/URI.js/releases/tag/v1.19.9 web
- https://huntr.dev/bounties/82ef23b8-7025-49c9-b5fc-1bb9885788e5 web