{"id":"CVE-2019-19507","aliases":["EUVD-2019-0801","GHSA-rh46-3fgc-mvrf"],"status":"published","title":"Validation bypass is possible in Json Pattern Validator","description":"In jpv (aka Json Pattern Validator) before 2.1.1, compareCommon() can be bypassed because certain internal attributes can be overwritten via a conflicting name, as demonstrated by 'constructor': {'name':'Array'}. This affects validate(). Hence, a crafted payload can overwrite this builtin attribute to manipulate the type detection result.","severity":{"version":"3.1","score":5.3,"vector":"CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:L/A:N","level":"medium","assessor":"primary","from":"nvd"},"epss":{"day":"2026-11-09","score":0.00974,"percentile":0.62309,"model":"v2026.06.15"},"facts":{"in_kev":false,"known_exploited":false,"public_exploit":false,"fix_available":true},"cwes":["CWE-287"],"published":"2019-12-02T16:17:45Z","modified":"2026-06-17T02:26:46Z","fixes":[{"ecosystem":"npm","package":"jpv","fixed_in":["2.1.1"],"sources":["ghsa","osv"]}],"affected":[{"source":"ghsa","ecosystem":"npm","package":"jpv","ranges":[{"type":"ECOSYSTEM","events":[{"introduced":"0"},{"fixed":"2.1.1"}]}]},{"source":"osv","ecosystem":"npm","package":"jpv","ranges":[{"type":"SEMVER","events":[{"introduced":"0"},{"fixed":"2.1.1"}]}]}],"products":[{"vendor":"json_pattern_validator_project","product":"json_pattern_validator"}],"references":[{"url":"https://github.com/manvel-khnkoyan/jpv/issues/6","tags":["x_refsource_MISC","x_transferred","Exploit","Issue Tracking","Third Party Advisory","web"]},{"url":"https://www.npmjs.com/package/jpv","tags":["x_refsource_MISC","x_transferred","Product","web"]},{"url":"https://nvd.nist.gov/vuln/detail/CVE-2019-19507","tags":["advisory"]},{"url":"https://github.com/advisories/GHSA-rh46-3fgc-mvrf"}],"sources":{"cve":[{"id":"CVE-2019-19507","description":"In jpv (aka Json Pattern Validator) before 2.1.1, compareCommon() can be bypassed because certain internal attributes can be overwritten via a conflicting name, as demonstrated by 'constructor': {'name':'Array'}. This affects validate(). Hence, a crafted payload can overwrite this builtin attribute to manipulate the type detection result.","status":"published","published":"2019-12-02T16:17:45Z","modified":"2024-08-05T02:16:48.05Z","updated_at":"2026-11-02T14:20:20.74896Z"}],"euvd":[{"id":"EUVD-2019-0801","description":"In jpv (aka Json Pattern Validator) before 2.1.1, compareCommon() can be bypassed because certain internal attributes can be overwritten via a conflicting name, as demonstrated by 'constructor': {'name':'Array'}. This affects validate(). Hence, a crafted payload can overwrite this builtin attribute to manipulate the type detection result.","status":"published","published":"2019-12-02T16:17:45Z","modified":"2024-08-05T02:16:48Z","updated_at":"2026-11-03T02:40:25.391321Z"}],"ghsa":[{"id":"GHSA-rh46-3fgc-mvrf","title":"Validation bypass is possible in Json Pattern Validator","description":"In jpv (aka Json Pattern Validator) before 2.1.1, compareCommon() can be bypassed because certain internal attributes can be overwritten via a conflicting name, as demonstrated by 'constructor': {'name':'Array'}. This affects validate(). Hence, a crafted payload can overwrite this builtin attribute to manipulate the type detection result.","status":"published","published":"2019-12-04T21:25:28Z","modified":"2023-01-09T05:01:58Z","cvss":[{"version":"3.1","score":5.3,"vector":"CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:L/A:N","level":"medium"}],"cwes":["CWE-287"],"updated_at":"2026-11-02T14:36:02.073372Z"}],"nvd":[{"id":"CVE-2019-19507","description":"In jpv (aka Json Pattern Validator) before 2.1.1, compareCommon() can be bypassed because certain internal attributes can be overwritten via a conflicting name, as demonstrated by 'constructor': {'name':'Array'}. This affects validate(). Hence, a crafted payload can overwrite this builtin attribute to manipulate the type detection result.","status":"published","published":"2019-12-02T17:15:13.187Z","modified":"2026-06-17T02:26:46.823Z","cvss":[{"version":"3.1","score":5.3,"vector":"CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:L/A:N","level":"medium","assessor":"primary"},{"version":"2.0","score":5,"vector":"AV:N/AC:L/Au:N/C:N/I:P/A:N","level":"medium","assessor":"primary"}],"cwes":["CWE-287"],"updated_at":"2026-11-02T14:05:38.993437Z"}],"osv":[{"id":"GHSA-rh46-3fgc-mvrf","title":"Validation bypass is possible in Json Pattern Validator","description":"In jpv (aka Json Pattern Validator) before 2.1.1, compareCommon() can be bypassed because certain internal attributes can be overwritten via a conflicting name, as demonstrated by 'constructor': {'name':'Array'}. This affects validate(). Hence, a crafted payload can overwrite this builtin attribute to manipulate the type detection result.","status":"published","published":"2019-12-04T21:25:28Z","modified":"2023-11-08T04:01:28.48383Z","cvss":[{"version":"3.1","score":5.3,"vector":"CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:L/A:N","level":"medium"}],"cwes":["CWE-287"],"updated_at":"2026-11-02T15:46:55.877614Z"}]}}
