{"id":"GHSA-9965-vmph-33xx","summary":"validator.js has a URL validation bypass vulnerability in its isURL function","details":"A URL validation bypass vulnerability exists in validator.js prior to version 13.15.20. The isURL() function uses '://' as a delimiter to parse protocols, while browsers use ':' as the delimiter. This parsing difference allows attackers to bypass protocol and domain validation by crafting URLs leading to XSS and Open Redirect attacks.","aliases":["CVE-2025-56200"],"modified":"2026-09-10T03:50:28.187015105Z","published":"2025-09-30T18:30:25Z","database_specific":{"cwe_ids":["CWE-79"],"severity":"MODERATE","github_reviewed":true,"github_reviewed_at":"2025-10-13T20:08:58Z","nvd_published_at":"2025-09-30T18:15:50Z"},"references":[{"type":"ADVISORY","url":"https://nvd.nist.gov/vuln/detail/CVE-2025-56200"},{"type":"WEB","url":"https://github.com/validatorjs/validator.js/issues/2600"},{"type":"WEB","url":"https://github.com/validatorjs/validator.js/pull/2608"},{"type":"WEB","url":"https://github.com/validatorjs/validator.js/commit/cbef5088f02d36caf978f378bb845fe49bdc0809"},{"type":"WEB","url":"https://gist.github.com/junan-98/27ae092aa40e2a057d41a0f95148f666"},{"type":"WEB","url":"https://gist.github.com/junan-98/a93130505b258b9e4ec9f393e7533596"},{"type":"PACKAGE","url":"https://github.com/validatorjs/validator.js"},{"type":"WEB","url":"https://github.com/validatorjs/validator.js/releases/tag/13.15.20"},{"type":"WEB","url":"http://validatorjs.com"}],"affected":[{"package":{"name":"validator","ecosystem":"npm","purl":"pkg:npm/validator"},"ranges":[{"type":"SEMVER","events":[{"introduced":"0"},{"fixed":"13.15.20"}]}],"database_specific":{"source":"https://github.com/github/advisory-database/blob/main/advisories/github-reviewed/2025/09/GHSA-9965-vmph-33xx/GHSA-9965-vmph-33xx.json"}}],"schema_version":"1.9.0","severity":[{"type":"CVSS_V3","score":"CVSS:3.1/AV:N/AC:L/PR:N/UI:R/S:C/C:L/I:L/A:N"}]}