{"id":"CVE-2018-11537","aliases":["EUVD-2022-5377","GHSA-vm2p-f5j4-mj6g"],"status":"published","title":"Auth0 angular-jwt misinterprets allowlist as regex","description":"Auth0 angular-jwt before 0.1.10 treats whiteListedDomains entries as regular expressions, which allows remote attackers with knowledge of the jwtInterceptorProvider.whiteListedDomains setting to bypass the domain whitelist filter via a crafted domain.","severity":{"version":"3.0","score":6.5,"vector":"CVSS:3.0/AV:N/AC:L/PR:N/UI:R/S:U/C:N/I:H/A:N","level":"medium","assessor":"primary","from":"nvd"},"epss":{"day":"2026-11-08","score":0.01137,"percentile":0.66763,"model":"v2026.06.15"},"facts":{"in_kev":false,"known_exploited":false,"public_exploit":false,"fix_available":true},"cwes":["CWE-20"],"published":"2018-06-19T19:00:00Z","modified":"2026-10-24T10:30:56Z","fixes":[{"ecosystem":"npm","package":"angular-jwt","fixed_in":["0.1.10"],"sources":["ghsa","osv"]}],"affected":[{"source":"ghsa","ecosystem":"npm","package":"angular-jwt","ranges":[{"type":"ECOSYSTEM","events":[{"introduced":"0"},{"fixed":"0.1.10"}]}]},{"source":"osv","ecosystem":"npm","package":"angular-jwt","ranges":[{"type":"SEMVER","events":[{"introduced":"0"},{"fixed":"0.1.10"}]}]}],"products":[{"vendor":"auth0","product":"angular-jwt"}],"references":[{"url":"https://auth0.com/docs/security/bulletins/cve-2018-11537","tags":["x_refsource_CONFIRM","x_transferred","Patch","Vendor Advisory","fix","web"]},{"url":"https://nvd.nist.gov/vuln/detail/CVE-2018-11537","tags":["advisory"]},{"url":"https://github.com/auth0/angular-jwt/pull/174","tags":["web"]},{"url":"https://github.com/auth0/angular-jwt/commit/a4f03b49c3fb47cc6375c2a33b5ac11ca3c606f0","tags":["web"]},{"url":"https://github.com/auth0/angular-jwt/commit/e368cf124443507f1710f60ae855c4c54eebc6ea","tags":["web"]},{"url":"https://github.com/advisories/GHSA-vm2p-f5j4-mj6g"},{"url":"https://github.com/auth0/angular-jwt","tags":["package"]}],"sources":{"cve":[{"id":"CVE-2018-11537","description":"Auth0 angular-jwt before 0.1.10 treats whiteListedDomains entries as regular expressions, which allows remote attackers with knowledge of the jwtInterceptorProvider.whiteListedDomains setting to bypass the domain whitelist filter via a crafted domain.","status":"published","published":"2018-06-19T19:00:00Z","modified":"2024-08-05T08:10:14.589Z","updated_at":"2026-11-02T14:35:09.908186Z"}],"euvd":[{"id":"EUVD-2022-5377","description":"Auth0 angular-jwt before 0.1.10 treats whiteListedDomains entries as regular expressions, which allows remote attackers with knowledge of the jwtInterceptorProvider.whiteListedDomains setting to bypass the domain whitelist filter via a crafted domain.","status":"published","published":"2018-06-19T19:00:00Z","modified":"2024-08-05T08:10:14Z","updated_at":"2026-11-03T02:39:54.984528Z"}],"ghsa":[{"id":"GHSA-vm2p-f5j4-mj6g","title":"Auth0 angular-jwt misinterprets allowlist as regex","description":"Auth0 angular-jwt before 0.1.10 treats whiteListedDomains entries as regular expressions, which allows remote attackers with knowledge of the `jwtInterceptorProvider.whiteListedDomains` setting to bypass the domain allowlist filter via a crafted domain.\n\n For example, if the setting is initialized with:\n\n`jwtInterceptorProvider.whiteListedDomains = ['whitelisted.Example.com'];`\n\nAn attacker can set up a domain `whitelistedXexample.com` that will pass the allow list filter, as it considers the `.` separator to be a regex whildcard which matches any character.","status":"published","published":"2022-05-14T03:05:44Z","modified":"2023-10-19T18:21:28Z","cvss":[{"version":"3.0","score":6.5,"vector":"CVSS:3.0/AV:N/AC:L/PR:N/UI:R/S:U/C:N/I:H/A:N","level":"medium"}],"cwes":["CWE-20"],"updated_at":"2026-11-02T14:37:08.847568Z"}],"nvd":[{"id":"CVE-2018-11537","description":"Auth0 angular-jwt before 0.1.10 treats whiteListedDomains entries as regular expressions, which allows remote attackers with knowledge of the jwtInterceptorProvider.whiteListedDomains setting to bypass the domain whitelist filter via a crafted domain.","status":"published","published":"2018-06-19T19:29:00.377Z","modified":"2026-06-17T01:36:07.63Z","cvss":[{"version":"3.0","score":6.5,"vector":"CVSS:3.0/AV:N/AC:L/PR:N/UI:R/S:U/C:N/I:H/A:N","level":"medium","assessor":"primary"},{"version":"2.0","score":4.3,"vector":"AV:N/AC:M/Au:N/C:N/I:P/A:N","level":"medium","assessor":"primary"}],"cwes":["CWE-20"],"updated_at":"2026-11-02T14:04:29.837913Z"}],"osv":[{"id":"CVE-2018-11537","description":"Auth0 angular-jwt before 0.1.10 treats whiteListedDomains entries as regular expressions, which allows remote attackers with knowledge of the jwtInterceptorProvider.whiteListedDomains setting to bypass the domain whitelist filter via a crafted domain.","status":"published","published":"2018-06-19T19:29:00.377Z","modified":"2026-10-24T10:30:56.527549667Z","cvss":[{"version":"3.0","score":6.5,"vector":"CVSS:3.0/AV:N/AC:L/PR:N/UI:R/S:U/C:N/I:H/A:N","level":"medium"}],"updated_at":"2026-11-02T15:44:07.934182Z"},{"id":"GHSA-vm2p-f5j4-mj6g","title":"Auth0 angular-jwt misinterprets allowlist as regex","description":"Auth0 angular-jwt before 0.1.10 treats whiteListedDomains entries as regular expressions, which allows remote attackers with knowledge of the `jwtInterceptorProvider.whiteListedDomains` setting to bypass the domain allowlist filter via a crafted domain.\n\n For example, if the setting is initialized with:\n\n`jwtInterceptorProvider.whiteListedDomains = ['whitelisted.Example.com'];`\n\nAn attacker can set up a domain `whitelistedXexample.com` that will pass the allow list filter, as it considers the `.` separator to be a regex whildcard which matches any character.","status":"published","published":"2022-05-14T03:05:44Z","modified":"2023-11-08T03:59:46.207795Z","cvss":[{"version":"3.0","score":6.5,"vector":"CVSS:3.0/AV:N/AC:L/PR:N/UI:R/S:U/C:N/I:H/A:N","level":"medium"}],"cwes":["CWE-20"],"updated_at":"2026-11-02T15:46:57.348035Z"}]}}
