Package Instance
Lookup for vulnerable packages by Package URL.
GET /api/packages/727293?format=api
{ "url": "http://public2.vulnerablecode.io/api/packages/727293?format=api", "purl": "pkg:npm/hfs@0.52.5", "type": "npm", "namespace": "", "name": "hfs", "version": "0.52.5", "qualifiers": {}, "subpath": "", "is_vulnerable": true, "next_non_vulnerable_version": "0.57.10", "latest_non_vulnerable_version": "0.57.10", "affected_by_vulnerabilities": [ { "url": "http://public2.vulnerablecode.io/api/vulnerabilities/360655?format=api", "vulnerability_id": "VCID-1n5x-a7b4-mkhg", "summary": "HFS user adding a \"web link\" in HFS is vulnerable to \"target=_blank\" exploit\n### Summary\nWhen adding a \"web link\" to the HFS virtual filesystem, the frontend opens it with `target=\"_blank\"` but without the `rel=\"noopener noreferrer\"` attribute. This allows the opened page to use the `window.opener` property to change the location of the original HFS tab.\n\n### Details\nWhile most modern browsers have fixes already implemented for this `target=\"_blank\"` exploit at the browser level, users on outdated browsers remain vulnerable. This means that if an admin of the HFS instance adds a link to an external third-party service (that they believe is safe at the time) and that service they added later becomes compromised, the malicious page could replace the original HFS tab's content with a phishing page. This does not require the admin account itself to be compromised, only that a legitimate linked site turns malicious.\n\n### Impact\nAffected users (people using old browsers without the browser level fix) could be misled into entering their HFS credentials or other sensitive information into a fake site controlled by an attacker. This vulnerability is fixed in most modern browsers, but adding `rel=\"noopener noreferrer\"` remains a best practice to protect legacy environments.\n\n\n### PoC\n\nFirstly, in the HFS admin page, under the filesystem (/~/admin/#/fs) press \"Add\" then \"web link\" then set the link to take the user to to an HTML file that exploits this vulnerability, here is an example of a malicious HTML file's code:\n\n```<html>\n <body>\n <script>\n window.opener.location = \"https://example.org\";\n </script>\n<b>Error loading...</b>\n </body>\n</html>\n```\n\nNow, in the HFS folder you placed this web link in, open HFS and click the web link, if you aren't on a modern browser that fixed this vulnerability on the browser level, then switch back to the HFS tab that opened it, and you should be taken to \"https://example.org\" if you tried the code I provided, or whatever other page you tried.", "references": [ { "reference_url": "https://github.com/rejetto/hfs", "reference_id": "", "reference_type": "", "scores": [ { "value": "2.9", "scoring_system": "cvssv4", "scoring_elements": "CVSS:4.0/AV:N/AC:L/AT:P/PR:N/UI:N/VC:N/VI:L/VA:N/SC:N/SI:N/SA:N/E:P" }, { "value": "LOW", "scoring_system": "generic_textual", "scoring_elements": "" } ], "url": "https://github.com/rejetto/hfs" }, { "reference_url": "https://github.com/rejetto/hfs/commit/6531bcd2ab285af88f91831e30d8a03f5b9fe20d", "reference_id": "", "reference_type": "", "scores": [ { "value": "2.9", "scoring_system": "cvssv4", "scoring_elements": "CVSS:4.0/AV:N/AC:L/AT:P/PR:N/UI:N/VC:N/VI:L/VA:N/SC:N/SI:N/SA:N/E:P" }, { "value": "LOW", "scoring_system": "generic_textual", "scoring_elements": "" } ], "url": "https://github.com/rejetto/hfs/commit/6531bcd2ab285af88f91831e30d8a03f5b9fe20d" }, { "reference_url": "https://github.com/rejetto/hfs/security/advisories/GHSA-xcxh-6cv4-q8p8", "reference_id": "", "reference_type": "", "scores": [ { "value": "2.9", "scoring_system": "cvssv4", "scoring_elements": "CVSS:4.0/AV:N/AC:L/AT:P/PR:N/UI:N/VC:N/VI:L/VA:N/SC:N/SI:N/SA:N/E:P" }, { "value": "LOW", "scoring_system": "generic_textual", "scoring_elements": "" } ], "url": "https://github.com/rejetto/hfs/security/advisories/GHSA-xcxh-6cv4-q8p8" }, { "reference_url": "https://github.com/advisories/GHSA-xcxh-6cv4-q8p8", "reference_id": "GHSA-xcxh-6cv4-q8p8", "reference_type": "", "scores": [], "url": "https://github.com/advisories/GHSA-xcxh-6cv4-q8p8" } ], "fixed_packages": [ { "url": "http://public2.vulnerablecode.io/api/packages/377656?format=api", "purl": "pkg:npm/hfs@0.57.10", "is_vulnerable": false, "affected_by_vulnerabilities": [], "resource_url": "http://public2.vulnerablecode.io/packages/pkg:npm/hfs@0.57.10" } ], "aliases": [ "GHSA-xcxh-6cv4-q8p8" ], "risk_score": 1.4, "exploitability": "0.5", "weighted_severity": "2.7", "resource_url": "http://public2.vulnerablecode.io/vulnerabilities/VCID-1n5x-a7b4-mkhg" }, { "url": "http://public2.vulnerablecode.io/api/vulnerabilities/46853?format=api", "vulnerability_id": "VCID-cgda-hzqy-t3b7", "summary": "rejetto HFS (aka HTTP File Server) 3 before 0.52.10 on Linux, UNIX, and macOS allows OS command execution by remote authenticated users (if they have Upload permissions). This occurs because a shell is used to execute df (i.e., with execSync instead of spawnSync in child_process in Node.js).", "references": [ { "reference_url": "https://api.first.org/data/v1/epss?cve=CVE-2024-39943", "reference_id": "", "reference_type": "", "scores": [ { "value": "0.78344", "scoring_system": "epss", "scoring_elements": "0.99055", "published_at": "2026-06-12T12:55:00Z" }, { "value": "0.78344", "scoring_system": "epss", "scoring_elements": "0.99051", "published_at": "2026-06-11T12:55:00Z" } ], "url": "https://api.first.org/data/v1/epss?cve=CVE-2024-39943" }, { "reference_url": "https://github.com/rejetto/hfs", "reference_id": "", "reference_type": "", "scores": [ { "value": "9.9", "scoring_system": "cvssv3.1", "scoring_elements": "CVSS:3.1/AV:N/AC:L/PR:L/UI:N/S:C/C:H/I:H/A:H" }, { "value": "8.7", "scoring_system": "cvssv4", "scoring_elements": "CVSS:4.0/AV:N/AC:L/AT:N/PR:L/UI:N/VC:H/VI:H/VA:H/SC:N/SI:N/SA:N" }, { "value": "HIGH", "scoring_system": "generic_textual", "scoring_elements": "" } ], "url": "https://github.com/rejetto/hfs" }, { "reference_url": "https://github.com/rejetto/hfs/commit/305381bd36eee074fb238b64302a252668daad1d", "reference_id": "305381bd36eee074fb238b64302a252668daad1d", "reference_type": "", "scores": [ { "value": "9.9", "scoring_system": "cvssv3.1", "scoring_elements": "CVSS:3.1/AV:N/AC:L/PR:L/UI:N/S:C/C:H/I:H/A:H" }, { "value": "9.9", "scoring_system": "cvssv3.1", "scoring_elements": "CVSS:3.1/AC:L/AV:N/A:H/C:H/I:H/PR:L/S:C/UI:N" }, { "value": "8.7", "scoring_system": "cvssv4", "scoring_elements": "CVSS:4.0/AV:N/AC:L/AT:N/PR:L/UI:N/VC:H/VI:H/VA:H/SC:N/SI:N/SA:N" }, { "value": "HIGH", "scoring_system": "generic_textual", "scoring_elements": "" }, { "value": "Track*", "scoring_system": "ssvc", "scoring_elements": "SSVCv2/E:P/A:Y/T:T/P:M/B:A/M:M/D:R/2024-07-12T03:55:26Z/" } ], "url": "https://github.com/rejetto/hfs/commit/305381bd36eee074fb238b64302a252668daad1d" }, { "reference_url": "https://nvd.nist.gov/vuln/detail/CVE-2024-39943", "reference_id": "CVE-2024-39943", "reference_type": "", "scores": [ { "value": "9.9", "scoring_system": "cvssv3.1", "scoring_elements": "CVSS:3.1/AV:N/AC:L/PR:L/UI:N/S:C/C:H/I:H/A:H" }, { "value": "8.7", "scoring_system": "cvssv4", "scoring_elements": "CVSS:4.0/AV:N/AC:L/AT:N/PR:L/UI:N/VC:H/VI:H/VA:H/SC:N/SI:N/SA:N" }, { "value": "HIGH", "scoring_system": "generic_textual", "scoring_elements": "" } ], "url": "https://nvd.nist.gov/vuln/detail/CVE-2024-39943" }, { "reference_url": "https://github.com/advisories/GHSA-5f4x-hwv2-w9w2", "reference_id": "GHSA-5f4x-hwv2-w9w2", "reference_type": "", "scores": [ { "value": "HIGH", "scoring_system": "cvssv3.1_qr", "scoring_elements": "" } ], "url": "https://github.com/advisories/GHSA-5f4x-hwv2-w9w2" }, { "reference_url": "https://www.rejetto.com/wiki/index.php/HFS:_Working_with_uploads", "reference_id": "HFS:_Working_with_uploads", "reference_type": "", "scores": [ { "value": "9.9", "scoring_system": "cvssv3.1", "scoring_elements": "CVSS:3.1/AC:L/AV:N/A:H/C:H/I:H/PR:L/S:C/UI:N" }, { "value": "9.9", "scoring_system": "cvssv3.1", "scoring_elements": "CVSS:3.1/AV:N/AC:L/PR:L/UI:N/S:C/C:H/I:H/A:H" }, { "value": "8.7", "scoring_system": "cvssv4", "scoring_elements": "CVSS:4.0/AV:N/AC:L/AT:N/PR:L/UI:N/VC:H/VI:H/VA:H/SC:N/SI:N/SA:N" }, { "value": "HIGH", "scoring_system": "generic_textual", "scoring_elements": "" }, { "value": "Track*", "scoring_system": "ssvc", "scoring_elements": "SSVCv2/E:P/A:Y/T:T/P:M/B:A/M:M/D:R/2024-07-12T03:55:26Z/" } ], "url": "https://www.rejetto.com/wiki/index.php/HFS:_Working_with_uploads" }, { "reference_url": "https://github.com/rejetto/hfs/compare/v0.52.9...v0.52.10", "reference_id": "v0.52.9...v0.52.10", "reference_type": "", "scores": [ { "value": "9.9", "scoring_system": "cvssv3.1", "scoring_elements": "CVSS:3.1/AC:L/AV:N/A:H/C:H/I:H/PR:L/S:C/UI:N" }, { "value": "9.9", "scoring_system": "cvssv3.1", "scoring_elements": "CVSS:3.1/AV:N/AC:L/PR:L/UI:N/S:C/C:H/I:H/A:H" }, { "value": "8.7", "scoring_system": "cvssv4", "scoring_elements": "CVSS:4.0/AV:N/AC:L/AT:N/PR:L/UI:N/VC:H/VI:H/VA:H/SC:N/SI:N/SA:N" }, { "value": "HIGH", "scoring_system": "generic_textual", "scoring_elements": "" }, { "value": "Track*", "scoring_system": "ssvc", "scoring_elements": "SSVCv2/E:P/A:Y/T:T/P:M/B:A/M:M/D:R/2024-07-12T03:55:26Z/" } ], "url": "https://github.com/rejetto/hfs/compare/v0.52.9...v0.52.10" } ], "fixed_packages": [ { "url": "http://public2.vulnerablecode.io/api/packages/32415?format=api", "purl": "pkg:npm/hfs@0.52.10", "is_vulnerable": true, "affected_by_vulnerabilities": [ { "vulnerability": "VCID-1n5x-a7b4-mkhg" } ], "resource_url": "http://public2.vulnerablecode.io/packages/pkg:npm/hfs@0.52.10" } ], "aliases": [ "CVE-2024-39943", "GHSA-5f4x-hwv2-w9w2" ], "risk_score": 4.5, "exploitability": "0.5", "weighted_severity": "8.9", "resource_url": "http://public2.vulnerablecode.io/vulnerabilities/VCID-cgda-hzqy-t3b7" } ], "fixing_vulnerabilities": [], "risk_score": "4.5", "resource_url": "http://public2.vulnerablecode.io/packages/pkg:npm/hfs@0.52.5" }