{"id":"CVE-2014-10065","aliases":["EUVD-2020-0620","GHSA-f9vc-q3hh-qhfv"],"status":"published","title":"Content Injection in remarkable","description":"Certain input when passed into remarkable before 1.4.1 will bypass the bad protocol check that disallows the javascript: scheme allowing for javascript: url's to be injected into the rendered content.","severity":{"version":"3.0","score":6.1,"vector":"CVSS:3.0/AV:N/AC:L/PR:N/UI:R/S:C/C:L/I:L/A:N","level":"medium","assessor":"primary","from":"nvd"},"epss":{"day":"2026-11-08","score":0.00958,"percentile":0.61709,"model":"v2026.06.15"},"facts":{"in_kev":false,"known_exploited":false,"public_exploit":false,"fix_available":true},"cwes":["CWE-79","CWE-94"],"published":"2018-05-31T20:00:00Z","modified":"2026-06-17T00:04:10Z","fixes":[{"ecosystem":"npm","package":"remarkable","fixed_in":["1.4.1"],"sources":["ghsa","osv"]}],"affected":[{"source":"ghsa","ecosystem":"npm","package":"remarkable","ranges":[{"type":"ECOSYSTEM","events":[{"introduced":"0"},{"fixed":"1.4.1"}]}]},{"source":"osv","ecosystem":"npm","package":"remarkable","ranges":[{"type":"SEMVER","events":[{"introduced":"0"},{"fixed":"1.4.1"}]}]}],"products":[{"vendor":"hackerone","product":"remarkable node module"},{"vendor":"remarkable_project","product":"remarkable"}],"references":[{"url":"https://github.com/jonschlinkert/remarkable/issues/97","tags":["x_refsource_MISC","x_transferred","Third Party Advisory","web"]},{"url":"https://nodesecurity.io/advisories/30","tags":["x_refsource_MISC","x_transferred","Exploit","Third Party Advisory"]},{"url":"https://www.npmjs.com/advisories/30","tags":["web"]},{"url":"https://nvd.nist.gov/vuln/detail/CVE-2014-10065","tags":["advisory"]},{"url":"https://github.com/jonschlinkert/remarkable/commit/d54ed887f4997221cd7cb9790e953a83c504de36","tags":["web"]},{"url":"https://github.com/advisories/GHSA-f9vc-q3hh-qhfv"}],"sources":{"cve":[{"id":"CVE-2014-10065","description":"Certain input when passed into remarkable before 1.4.1 will bypass the bad protocol check that disallows the javascript: scheme allowing for javascript: url's to be injected into the rendered content.","status":"published","published":"2018-05-31T20:00:00Z","modified":"2024-09-16T22:25:48.38Z","cwes":["CWE-94"],"updated_at":"2026-11-02T14:33:42.219637Z"}],"euvd":[{"id":"EUVD-2020-0620","description":"Certain input when passed into remarkable before 1.4.1 will bypass the bad protocol check that disallows the javascript: scheme allowing for javascript: url's to be injected into the rendered content.","status":"published","published":"2018-05-31T20:00:00Z","modified":"2024-09-16T22:25:48Z","updated_at":"2026-11-03T00:55:02.946444Z"}],"ghsa":[{"id":"GHSA-f9vc-q3hh-qhfv","title":"Content Injection in remarkable","description":"Versions 1.4.0 and earlier of `remarkable` are affected by a cross-site scripting vulnerability. This occurs because vulnerable versions of `remarkable` did not properly whitelist link protocols, and consequently allowed `javascript:` to be used. \n\n\n### Proof of Concept\n\nMarkdown Source:\n```\n[link](\u003cjavascript:alert(1)\u003e)\n```\n\nRendered HTML:\n```\n\u003ca href=\"javascript:alert(1)\"\u003elink\u003c/a\u003e\n```\n\n\n## Recommendation\n\nUpdate to version 1.4.1 or later","status":"published","published":"2020-08-31T22:56:00Z","modified":"2023-04-03T22:37:03Z","cwes":["CWE-94"],"updated_at":"2026-11-02T14:36:49.768564Z"}],"nvd":[{"id":"CVE-2014-10065","description":"Certain input when passed into remarkable before 1.4.1 will bypass the bad protocol check that disallows the javascript: scheme allowing for javascript: url's to be injected into the rendered content.","status":"published","published":"2018-05-31T20:29:00.267Z","modified":"2026-06-17T00:04:10.517Z","cvss":[{"version":"3.0","score":6.1,"vector":"CVSS:3.0/AV:N/AC:L/PR:N/UI:R/S:C/C:L/I:L/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-94","CWE-79"],"updated_at":"2026-11-02T14:02:59.001778Z"}],"osv":[{"id":"GHSA-f9vc-q3hh-qhfv","title":"Content Injection in remarkable","description":"Versions 1.4.0 and earlier of `remarkable` are affected by a cross-site scripting vulnerability. This occurs because vulnerable versions of `remarkable` did not properly whitelist link protocols, and consequently allowed `javascript:` to be used. \n\n\n### Proof of Concept\n\nMarkdown Source:\n```\n[link](\u003cjavascript:alert(1)\u003e)\n```\n\nRendered HTML:\n```\n\u003ca href=\"javascript:alert(1)\"\u003elink\u003c/a\u003e\n```\n\n\n## Recommendation\n\nUpdate to version 1.4.1 or later","status":"published","published":"2020-08-31T22:56:00Z","modified":"2023-11-08T03:57:33.593508Z","cwes":["CWE-94"],"updated_at":"2026-11-02T15:46:46.39441Z"}]}}
