{"id":"CVE-2019-17221","details":"PhantomJS through 2.1.1 has an arbitrary file read vulnerability, as demonstrated by an XMLHttpRequest for a file:// URI. The vulnerability exists in the page.open() function of the webpage module, which loads a specified URL and calls a given callback. An attacker can supply a specially crafted HTML file, as user input, that allows reading arbitrary files on the filesystem. For example, if page.render() is the function callback, this generates a PDF or an image of the targeted file. NOTE: this product is no longer developed.","aliases":["GHSA-x43g-gj9x-838x"],"modified":"2025-11-20T10:58:57.329029Z","published":"2019-11-05T14:15:13.537Z","references":[{"type":"EVIDENCE","url":"https://www.darkmatter.ae/blogs/breaching-the-perimeter-phantomjs-arbitrary-file-read/"}],"affected":[{"ranges":[{"type":"GIT","repo":"https://github.com/ariya/phantomjs","events":[{"introduced":"0"},{"last_affected":"d9cda3dcd26b0e463533c5cc96e39c0f39fc32c1"}]}],"versions":["1.0.0","1.1.0","1.9.0","2.0.0","2.1.0","2.1.1"],"database_specific":{"source":"https://storage.googleapis.com/cve-osv-conversion/osv-output/CVE-2019-17221.json"}}],"schema_version":"1.7.3","severity":[{"type":"CVSS_V3","score":"CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:N/A:N"}]}