{"answers":{"affected":"3 open source packages ship an affected version, including langflow.","exploited":"It is not confirmed as exploited in the wild, but public exploit code for CVE-2026-105699 exists.","fix":"Upgrade langflow to 1.9.1 or later.","what":"CVE-2026-105699 is a high-severity missing authorization vulnerability in langflow-ai langflow, published on 5 Oct 2026. Any signed-in user can exploit it over the network, with no action from the victim."},"fix_prompt":"Check this codebase for CVE-2026-105699 and fix it if it is affected.\n\nWhat it is: CVE-2026-105699 is a high-severity missing authorization vulnerability in langflow-ai langflow, published on 5 Oct 2026. Any signed-in user can exploit it over the network, with no action from the victim.\nExploitation: It is not confirmed as exploited in the wild, but public exploit code for CVE-2026-105699 exists.\n\nAffected packages and fixed versions:\n- langflow (PyPI): affected from 1.6.8; fixed in 1.9.1\n- langflow (PyPI): affected from 1.6.8; fixed in 1.9.1\n- langflow (PyPI): affected from 1.6.8; fixed in 1.9.1\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-105699/ (Markdown: https://insights.sbomify.com/CVE-2026-105699/index.md)","id":"CVE-2026-105699","markdown":"https://insights.sbomify.com/CVE-2026-105699/index.md","name":"CVE-2026-105699","record":{"aliases":["GHSA-4hmc-cfm3-w43c","PYSEC-2026-4230"],"analysis":{"component_type":"web_application","fix_type":"upgrade","impacts":["data_read"],"network_reachable":"yes","non_default_config":false,"product_category":"AI workflow platform","requires_auth":"low_privilege","summary":"Authenticated users can access other users' private files and flow artifacts by manipulating resource URIs in MCP connections.","user_interaction":"not_required","vuln_class":"missing_authorization"},"analysis_generated_by":"qwen3.8-flash-next","assigner":"GitHub_M","cpe":[],"cvss":{"score":7.1,"severity":"high","source":"cna","vector":"CVSS:4.0/AV:N/AC:L/AT:N/PR:L/UI:N/VC:H/VI:N/VA:N/SC:N/SI:N/SA:N","version":"4.0"},"cwes":[{"id":"CWE-639","name":"Authorization Bypass Through User-Controlled Key"}],"description":"Langflow is a tool for building and deploying AI-powered agents and workflows. From 1.6.8 until 1.9.1, Langflow authenticated access to the project identifier in a project-scoped MCP connection but did not authorize the resource URI supplied to resources/read. read_resource forwarded the attacker-controlled URI to handle_read_resource, which parsed a flow_id and filename and called storage_service.get_file without verifying that the flow belonged to the authenticated user or current project. A user with access to any project-scoped MCP endpoint could therefore request another user's flow-backed file, while global handle_list_resources and handle_list_tools behavior could disclose flow and file identifiers that made targeting easier. The vulnerability disclosed uploaded documents, structured data, prompts, and other private flow artifacts across tenants but did not modify victim files or stored flows. This issue is fixed in version 1.9.1.","ecosystems":["PyPI"],"exploits":{"exploitdb":0,"first_seen":null,"github_poc":0,"max_poc_stars":null,"metasploit":0,"nuclei":0,"refs":[],"tier":"weaponised"},"has_fix":true,"headline":"Langflow: Authenticated Cross-Project File Disclosure via Unscoped MCP Resource Handlers","id":"CVE-2026-105699","indexable":true,"kev":null,"kind":"cve","links":{"ecosystem":"PyPI","product":null,"products":[],"type":"missing_authorization","year":"2026"},"n_packages":3,"n_references":5,"next":{"headline":"ACPT (Premium) \u003c= 2.0.66 - Authenticated (Subscriber+) Remote Code Execution via REST API Email Template","id":"CVE-2026-105701"},"packages":[{"ecosystem":"PyPI","fixed":["1.9.1"],"introduced":["1.6.8"],"last_affected":[],"package":"langflow","purl":null,"source":"GHSA-4hmc-cfm3-w43c"},{"ecosystem":"PyPI","fixed":["1.9.1"],"introduced":["1.6.8"],"last_affected":[],"package":"langflow","purl":"pkg:pypi/langflow","source":"GHSA-4hmc-cfm3-w43c"},{"ecosystem":"PyPI","fixed":["1.9.1"],"introduced":["1.6.8"],"last_affected":[],"package":"langflow","purl":"pkg:pypi/langflow","source":"PYSEC-2026-4230"}],"prev":{"headline":"Langflow: Cross-user flow access and vertex execution via deprecated /api/v1/build/{flow_id}/vertices endpoints","id":"CVE-2026-105698"},"products":["langflow"],"published":"2026-10-05","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":"no","exploitation":"poc","technical_impact":"partial"},"state":"PUBLISHED","updated":"2026-10-08","vendors":["langflow-ai"]},"summary":"Authenticated users can access other users' private files and flow artifacts by manipulating resource URIs in MCP connections.","url":"https://insights.sbomify.com/CVE-2026-105699/"}