{"answers":{"affected":"3 open source packages ship an affected version, including kaggle-mcp.","exploited":"It is not confirmed as exploited in the wild, but public exploit code for CVE-2026-7149 exists.","fix":"No fix has been published for CVE-2026-7149 yet. Limit exposure of the affected software until one is available.","what":"CVE-2026-7149 is a medium-severity path traversal vulnerability in dexhunter kaggle-mcp, published on 27 Apr 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-7149 and fix it if it is affected.\n\nWhat it is: CVE-2026-7149 is a medium-severity path traversal vulnerability in dexhunter kaggle-mcp, published on 27 Apr 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-7149 exists.\n\nAffected packages and fixed versions:\n- kaggle-mcp (PyPI): affected all versions up to 0.1.0; no fix listed\n- kaggle-mcp (PyPI): affected all versions up to 0.1.0; no fix listed\n- kaggle-mcp (PyPI): affected all versions up to 0.1.0; no fix listed\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-7149/ (Markdown: https://insights.sbomify.com/CVE-2026-7149/index.md)","id":"CVE-2026-7149","markdown":"https://insights.sbomify.com/CVE-2026-7149/index.md","name":"CVE-2026-7149","record":{"aliases":["GHSA-q882-jc55-6343","PYSEC-2026-2542"],"analysis":{"component_type":"library","fix_type":"no_fix_stated","impacts":["data_read","data_modify"],"network_reachable":"yes","non_default_config":false,"product_category":"Kaggle MCP server","requires_auth":"none","summary":"Remote attackers can exploit path traversal in the Kaggle MCP server to read or modify arbitrary files via the competition_id argument.","user_interaction":"not_required","vuln_class":"path_traversal"},"analysis_generated_by":"qwen3.8-flash-next","assigner":"VulDB","cpe":[],"cvss":{"score":6.9,"severity":"medium","source":"cna","vector":"CVSS:4.0/AV:N/AC:L/AT:N/PR:N/UI:N/VC:L/VI:L/VA:L/SC:N/SI:N/SA:N/E:P","version":"4.0"},"cwes":[{"id":"CWE-22","name":"Improper Limitation of a Pathname to a Restricted Directory"}],"description":"A vulnerability has been found in dexhunter kaggle-mcp up to 406127ffcb2b91b8c10e20e6c2ca787fbc1dc92d. This vulnerability affects the function prepare_kaggle_dataset of the file src/kaggle_mcp/server.py. The manipulation of the argument competition_id leads to path traversal. The attack is possible to be carried out remotely. The exploit has been disclosed to the public and may be used. This product adopts a rolling release strategy to maintain continuous delivery. Therefore, version details for affected or updated releases cannot be specified. The project was informed of the problem early through an issue report but has not responded yet.","ecosystems":["PyPI"],"exploits":{"exploitdb":0,"first_seen":null,"github_poc":0,"max_poc_stars":null,"metasploit":0,"nuclei":0,"refs":[],"tier":"weaponised"},"has_fix":false,"headline":"dexhunter kaggle-mcp server.py prepare_kaggle_dataset path traversal","id":"CVE-2026-7149","indexable":true,"kev":null,"kind":"cve","links":{"ecosystem":"PyPI","product":null,"products":[],"type":"path_traversal","year":"2026"},"n_packages":3,"n_references":5,"next":{"headline":"dh1011 auto-favicon MCP Tool server.py generate_favicon_from_url server-side request forgery","id":"CVE-2026-7150"},"packages":[{"ecosystem":"PyPI","fixed":[],"introduced":["0"],"last_affected":["0.1.0"],"package":"kaggle-mcp","purl":null,"source":"GHSA-q882-jc55-6343"},{"ecosystem":"PyPI","fixed":[],"introduced":["0"],"last_affected":["0.1.0"],"package":"kaggle-mcp","purl":"pkg:pypi/kaggle-mcp","source":"GHSA-q882-jc55-6343"},{"ecosystem":"PyPI","fixed":[],"introduced":["0"],"last_affected":["0.1.0"],"package":"kaggle-mcp","purl":"pkg:pypi/kaggle-mcp","source":"PYSEC-2026-2542"}],"prev":{"headline":"CodeAstro Online Classroom addnewfaculty sql injection","id":"CVE-2026-7148"},"products":["kaggle-mcp"],"published":"2026-04-27","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":"CC BY 4.0","name":"PyPA Advisory Database","prefix":"PYSEC"},{"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-04-27","vendors":["dexhunter"]},"summary":"Remote attackers can exploit path traversal in the Kaggle MCP server to read or modify arbitrary files via the competition_id argument.","url":"https://insights.sbomify.com/CVE-2026-7149/"}