{"answers":{"affected":"2 open source packages ship an affected version, including @samanhappy/mcphub.","exploited":"It is not confirmed as exploited in the wild, but public exploit code for CVE-2026-79743 exists.","fix":"Upgrade @samanhappy/mcphub to 0.12.13 or later.","what":"CVE-2026-79743 is a medium-severity path traversal vulnerability in samanhappy mcphub, published on 31 Aug 2026. An attacker can exploit it over the internet without logging in, with no action from the victim."},"fix_prompt":"Check this codebase for CVE-2026-79743 and fix it if it is affected.\n\nWhat it is: CVE-2026-79743 is a medium-severity path traversal vulnerability in samanhappy mcphub, published on 31 Aug 2026. An attacker can exploit it over the internet without logging in, with no action from the victim.\nExploitation: It is not confirmed as exploited in the wild, but public exploit code for CVE-2026-79743 exists.\n\nAffected packages and fixed versions:\n- @samanhappy/mcphub (npm): affected all versions; fixed in 0.12.13\n- @samanhappy/mcphub (npm): affected all versions; fixed in 0.12.13\n\nTask:\n1. Search the dependency manifests and lockfiles (for example package.json, package-lock.json, requirements.txt, poetry.lock, uv.lock, pom.xml, build.gradle, go.mod, Cargo.lock, Gemfile.lock) and any Dockerfiles for the affected packages, including transitive dependencies.\n2. If an affected version is in use, upgrade it to the fixed version for its release line with the project's package manager, so the lockfile is regenerated. Prefer the smallest upgrade that fixes it.\n3. If there is no fix, or the upgrade would break the build, do not guess: explain the risk and the safest workaround instead.\n4. Run the tests and summarise what changed and why.\n5. If nothing in the project is affected, say so and change nothing.\n\nReference: https://insights.sbomify.com/CVE-2026-79743/ (Markdown: https://insights.sbomify.com/CVE-2026-79743/index.md)","id":"CVE-2026-79743","markdown":"https://insights.sbomify.com/CVE-2026-79743/index.md","name":"CVE-2026-79743","record":{"aliases":["GHSA-p3h2-2j4p-p83g"],"analysis":{"component_type":"server_software","fix_type":"upgrade","impacts":["data_modify","denial_of_service"],"network_reachable":"yes","non_default_config":false,"product_category":"MCP server hub","requires_auth":"none","summary":"Attackers can exploit unsanitized manifest names in MCPB uploads to write or delete arbitrary files on the server filesystem.","user_interaction":"not_required","vuln_class":"path_traversal"},"analysis_generated_by":"qwen3.8-flash-next","assigner":"GitHub_M","cpe":[],"cvss":{"score":6.9,"severity":"medium","source":"cna","vector":"CVSS:4.0/AV:N/AC:L/AT:N/PR:N/UI:N/VC:N/VI:L/VA:N/SC:N/SI:N/SA:N","version":"4.0"},"cwes":[{"id":"CWE-22","name":"Improper Limitation of a Pathname to a Restricted Directory"}],"description":"MCPHub is a unified hub for centrally managing and dynamically orchestrating multiple MCP servers/APIs into separate endpoints with flexible routing strategies. Prior to version 0.12.13, MCPB File Upload Handler extracts a ZIP file and reads manifest.json from it. The name field in the manifest is directly concatenated into a file path (line 107) without any sanitization or path traversal character validation. An attacker can craft a malicious MCPB file where manifest.name is set to something like ../../../etc/malicious, causing the file to be extracted to an arbitrary location on the file system. The cleanupOldMcpbServer function (line 110) also uses the unsanitized name, potentially allowing deletion of arbitrary directories. This issue has been patched in version 0.12.13.","ecosystems":["npm"],"exploits":{"exploitdb":0,"first_seen":null,"github_poc":0,"max_poc_stars":null,"metasploit":0,"nuclei":0,"refs":[],"tier":"weaponised"},"has_fix":false,"headline":"MCPHub: Path Traversal via Malicious MCPB Manifest Name","id":"CVE-2026-79743","indexable":true,"kev":null,"kind":"cve","links":{"ecosystem":"npm","product":null,"products":[],"type":"path_traversal","year":"2026"},"n_packages":2,"n_references":3,"next":{"headline":"MCPHub: Missing Authorization on `PUT /api/system-config` Lets Any Non-Admin Rewrite Global Security Configuration","id":"CVE-2026-79744"},"packages":[{"ecosystem":"npm","fixed":["0.12.13"],"introduced":["0"],"last_affected":[],"package":"@samanhappy/mcphub","purl":null,"source":"GHSA-p3h2-2j4p-p83g"},{"ecosystem":"npm","fixed":["0.12.13"],"introduced":["0"],"last_affected":[],"package":"@samanhappy/mcphub","purl":"pkg:npm/%40samanhappy/mcphub","source":"GHSA-p3h2-2j4p-p83g"}],"prev":{"headline":"Code injection in Langflow OSS","id":"CVE-2026-79742"},"products":["mcphub"],"published":"2026-08-31","related":[],"sources":[{"class":"attribution","licence":"CVE Terms of Use (MITRE)","name":"CVE List","prefix":"CVE"},{"class":"attribution","licence":"CC BY 4.0","name":"GitHub Advisory Database","prefix":"GHSA"},{"class":"attribution","licence":"CWE Terms of Use","name":"CWE (MITRE)"},{"class":"attribution","licence":"FIRST CVSS licence","name":"CVSS (FIRST)"}],"ssvc":{"automatable":"yes","exploitation":"poc","technical_impact":"partial"},"state":"PUBLISHED","updated":"2026-08-31","vendors":["samanhappy"]},"summary":"Attackers can exploit unsanitized manifest names in MCPB uploads to write or delete arbitrary files on the server filesystem.","url":"https://insights.sbomify.com/CVE-2026-79743/"}