{"answers":{"affected":"It affects 1 product.","exploited":"There is no known exploitation of CVE-2026-9135 in the wild and no public exploit code.","fix":"No fix has been published for CVE-2026-9135 yet. Limit exposure of the affected software until one is available.","what":"CVE-2026-9135 is a critical code injection vulnerability in Langflow Langflow, published on 17 Jul 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-9135 and fix it if it is affected.\n\nWhat it is: CVE-2026-9135 is a critical code injection vulnerability in Langflow Langflow, published on 17 Jul 2026. Any signed-in user can exploit it over the network, with no action from the victim.\nExploitation: There is no known exploitation of CVE-2026-9135 in the wild and no public exploit code.\n\nAffected product: Langflow Langflow. No package-level version data is available, so check the vendor advisory linked from the reference page.\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-9135/ (Markdown: https://insights.sbomify.com/CVE-2026-9135/index.md)","id":"CVE-2026-9135","markdown":"https://insights.sbomify.com/CVE-2026-9135/index.md","name":"CVE-2026-9135","record":{"aliases":["GHSA-mmph-9cw2-f8r6"],"analysis":{"component_type":"web_application","fix_type":"patch","impacts":["code_execution","privilege_escalation"],"network_reachable":"yes","non_default_config":true,"product_category":"IBM Langflow OSS","requires_auth":"low_privilege","summary":"Authenticated users can bypass custom component restrictions to execute arbitrary Python code via unvalidated dynamic fields in the Policies component.","user_interaction":"not_required","vuln_class":"code_injection"},"analysis_generated_by":"qwen3.8-flash-next","assigner":"ibm","cpe":[{"product":"langflow","vendor":"langflow"}],"cvss":{"score":9.9,"severity":"critical","source":"cna","vector":"CVSS:3.1/AV:N/AC:L/PR:L/UI:N/S:C/C:H/I:H/A:H","version":"3.1"},"cwes":[{"id":"CWE-94","name":"Improper Control of Generation of Code"}],"description":"IBM Langflow OSS 1.0.0 through 1.10.0 Langflow versions up to 1.9.2 (commit 94981c443d4918517b9e8163d70fc598dc33a32d) contain a code injection vulnerability in the Policies component's ToolGuard integration that bypasses the allow_custom_components=false security control. The vulnerability exists because the validation mechanism only checks the main component source code in node_template[\"code\"][\"value\"] but fails to validate dynamic CodeInput fields that store generated ToolGuard Python files. Attackers can embed malicious Python code in these unvalidated dynamic fields, which are persisted in Flow.data and later executed server-side when a guarded tool is invoked through the ToolGuard runtime. This allows authenticated users with flow creation privileges to achieve arbitrary Python code execution on the backend despite custom component restrictions. The vulnerability can be escalated through cross-tenant flow manipulation via the agentic MCP update_flow_component_field tool, which accepts attacker-controlled user_id parameters, enabling attackers to inject malicious code into victim users' flows. When combined with publicly accessible flows and specific misconfigurations (AUTO_LOGIN=true, NEW_USER_IS_ACTIVE=true), the attack can be conducted with reduced authentication requirements.","ecosystems":[],"exploits":{"exploitdb":0,"first_seen":null,"github_poc":0,"max_poc_stars":null,"metasploit":0,"nuclei":0,"refs":[],"tier":"none_known"},"has_fix":null,"headline":"Policies Component Dynamic CodeInput Fields Bypass Custom Component Validation","id":"CVE-2026-9135","indexable":true,"kev":null,"kind":"cve","links":{"ecosystem":null,"product":"langflow:langflow","products":["langflow:langflow"],"type":"code_injection","year":"2026"},"n_packages":0,"n_references":1,"next":{"headline":"Unauthorized ShadowAttribute modification in MISP via client-supplied identifier","id":"CVE-2026-9136"},"packages":[],"prev":{"headline":"Cross-site scripting in Photo Gallery by FooGallery : Responsive Image Gallery, Masonry Gallery \u0026 Carousel","id":"CVE-2026-9134"},"products":["Langflow OSS"],"published":"2026-07-17","related":[{"cvss_score":9.8,"headline":"IBM Langflow Code Injection","id":"CVE-2026-9198","kev_date_added":"2026-08-04","published":"2026-07-17"},{"cvss_score":9.8,"headline":"Langflow Inclusion of Functionality from Untrusted Control Sphere","id":"CVE-2026-0770","kev_date_added":"2026-07-21","published":"2026-01-23"},{"cvss_score":9.8,"headline":"Langflow Missing Authentication","id":"CVE-2025-3248","kev_date_added":"2025-05-05","published":"2025-04-07"},{"cvss_score":9.4,"headline":"Langflow Origin Validation Error","id":"CVE-2025-34291","kev_date_added":"2026-05-21","published":"2025-12-05"},{"cvss_score":9.3,"headline":"Langflow Code Injection","id":"CVE-2026-33017","kev_date_added":"2026-03-25","published":"2026-03-20"},{"cvss_score":8.4,"headline":"Langflow Authorization Bypass Through User-Controlled Key","id":"CVE-2026-55255","kev_date_added":"2026-07-07","published":"2026-06-23"},{"cvss_score":10,"headline":"Unauthenticated Server-Side RCE via PythonCodeStructuredTool in Public Flows","id":"CVE-2026-10134","kev_date_added":null,"published":"2026-06-30"}],"sources":[{"class":"attribution","licence":"CVE Terms of Use (MITRE)","name":"CVE List","prefix":"CVE"},{"class":"attribution","licence":"US public information, NVD API terms","name":"NVD"},{"class":"attribution","licence":"CWE Terms of Use","name":"CWE (MITRE)"},{"class":"attribution","licence":"FIRST CVSS licence","name":"CVSS (FIRST)"}],"ssvc":{"automatable":"no","exploitation":"none","technical_impact":"total"},"state":"PUBLISHED","updated":"2026-07-23","vendors":["IBM"]},"summary":"Authenticated users can bypass custom component restrictions to execute arbitrary Python code via unvalidated dynamic fields in the Policies component.","url":"https://insights.sbomify.com/CVE-2026-9135/"}