CVE-2026-105698
Langflow: Cross-user flow access and vertex execution via deprecated /api/v1/build/{flow_id}/vertices endpoints
Langflow is a tool for building and deploying AI-powered agents and workflows. From 1.0.0 until 1.10.1, Langflow did not verify flow ownership in the deprecated POST /api/v1/build/{flow_id}/vertices and POST /api/v1/build/{flow_id}/vertices/{vertex_id} handlers. Through version 1.7.1, an unauthenticated caller who knew another user's flow UUID could reach these handlers; from version 1.7.2 through 1.10.0, callers had to authenticate but needed no elevated privileges. Such a caller could cause retrieve_vertices_order to load and cache the private graph, enumerate its vertex identifiers, and use build_vertex to execute selected vertices and receive their results. build_graph_from_db_no_cache performed a primary-key lookup without an owner filter. This could disclose private flow structure, configured values, and selected outputs and could trigger victim-configured side effects and build-history records, although it did not expose the victim's variable-store credentials or permit modification of the stored flow. This issue is fixed in Langflow 1.10.1 and langflow-base 0.10.1.
Attack profile
How easy it is to exploit
- Attack vector
- Network
- Complexity
- Low
- Privileges needed
- Low
- User interaction
- None
What an attacker can affect
- Confidentiality
- Low
- Integrity
- Low
- Availability
- None
Exploit likelihood
What each source reports
CVE List Score used
5.4
Langflow: Cross-user flow access and vertex execution via deprecated /api/v1/build/{flow_id}/vertices endpoints
Langflow is a tool for building and deploying AI-powered agents and workflows. From 1.0.0 until 1.10.1, Langflow did not verify flow ownership in the deprecated POST /api/v1/build/{flow_id}/vertices and POST /api/v1/build/{flow_id}/vertices/{vertex_id} handlers. Through version 1.7.1, an unauthenticated caller who knew another user's flow UUID could reach these handlers; from version 1.7.2 through 1.10.0, callers had to authenticate but needed no elevated privileges. Such a caller could cause retrieve_vertices_order to load and cache the private graph, enumerate its vertex identifiers, and use build_vertex to execute selected vertices and receive their results. build_graph_from_db_no_cache performed a primary-key lookup without an owner filter. This could disclose private flow structure, configured values, and selected outputs and could trigger victim-configured side effects and build-history records, although it did not expose the victim's variable-store credentials or permit modification of the stored flow. This issue is fixed in Langflow 1.10.1 and langflow-base 0.10.1.
- Record
CVE-2026-105698- CVSS 3.1
- 5.4 Medium
CVSS:3.1/AV:N/AC:L/PR:L/UI:N/S:U/C:L/I:L/A:N - Weakness
- CWE-639, CWE-862
- Updated
- 2026-11-02
EUVDEUVD-2026-92790
5.4
Langflow is a tool for building and deploying AI-powered agents and workflows. From 1.0.0 until 1.10.1, Langflow did not verify flow ownership in the deprecated POST /api/v1/build/{flow_id}/vertices and POST /api/v1/build/{flow_id}/vertices/{vertex_id} handlers. Through version 1.7.1, an unauthenticated caller who knew another user's flow UUID could reach these handlers; from version 1.7.2 through 1.10.0, callers had to authenticate but needed no elevated privileges. Such a caller could cause retrieve_vertices_order to load and cache the private graph, enumerate its vertex identifiers, and use build_vertex to execute selected vertices and receive their results. build_graph_from_db_no_cache performed a primary-key lookup without an owner filter. This could disclose private flow structure, configured values, and selected outputs and could trigger victim-configured side effects and build-history records, although it did not expose the victim's variable-store credentials or permit modification of the stored flow. This issue is fixed in Langflow 1.10.1 and langflow-base 0.10.1.
- Record
EUVD-2026-92790- CVSS 3.1
- 5.4 Medium
CVSS:3.1/AV:N/AC:L/PR:L/UI:N/S:U/C:L/I:L/A:N - Updated
- 2026-11-02
GitHub AdvisoriesGHSA-gh98-4phw-6fmw
5.4
Langflow : Cross-user flow access and vertex execution via deprecated /api/v1/build/{flow_id}/vertices endpoints
Summary
Before Langflow 1.10.1, two deprecated but still-routed endpoints in the chat API did not check that the authenticated caller owns the flow referenced in the URL path:
POST /api/v1/build/{flow_id}/vertices(retrieve_vertices_order)POST /api/v1/build/{flow_id}/vertices/{vertex_id}(build_vertex)
Any authenticated user who knows (or obtains) another user's flow_id could load that user's private flow graph, enumerate its vertex IDs, and build (execute) individual vertices of it, receiving the vertex results in the response.
Both routes are declared with deprecated=True, include_in_schema=False, so they do not appear in the OpenAPI docs, but they remained registered on the router. The Langflow UI no longer calls them (it uses POST /api/v1/build/{flow_id}/flow), so they are only reachable by direct HTTP requests.
The issue is fixed in Langflow 1.10.1 (langflow-base 0.10.1) by #13153.
Details
In affected versions, both handlers go straight to the graph loader:
retrieve_vertices_order(src/backend/base/langflow/api/v1/chat.py, lines 81-159 in 1.9.1) only required authentication viadependencies=[Depends(get_current_active_user)]. The user was never injected into the handler, and the flow was loaded withbuild_graph_from_db(flow_id=flow_id, ...).build_vertex(chat.py, lines 320-491 in 1.9.1) receivescurrent_user, but only uses it for variable resolution (user_id=str(current_user.id)). It is never used to scope the flow lookup. The graph is taken from the chat-service cache keyed byflow_id, or rebuilt withbuild_graph_from_dbon a cache miss.build_graph_from_db_no_cache(src/backend/base/langflow/api/utils/flow_utils.py) does a bare primary-key lookup,session.get(Flow, flow_id), with no owner filter.
The supported replacement, POST /api/v1/build/{flow_id}/flow, already restricted the lookup to the owner or a PUBLIC flow (added in #12305 for GHSA-qj98-rhf8-v93f). The deprecated siblings were not covered by that fix, nor by the _read_flow fix for GHSA-8c4j-f57c-35cf.
Additional side effects in affected versions:
retrieve_vertices_orderstores the graph in the chat-service cache under the victim'sflow_id(chat_service.set_cache(str(flow_id), graph)). When the request includes adatabody, the cached graph is attacker-supplied.build_vertexscheduleslog_vertex_buildfor the victim'sflow_id, so attacker-triggered builds are recorded in the victim flow's vertex build history.
Note on older versions: up to and including 1.7.1, these two routes had no authentication dependency at all. Authentication was added in 1.7.2 by #10977, but no ownership check was added. This advisory covers the missing ownership check, which is present in every release from 1.0.0 (when the routes were introduced) through 1.10.0.
Attack scenario
- The attacker authenticates as any valid user.
- The attacker obtains a victim
flow_id(shared URLs, exported flow files, logs, screenshots, etc.). POST /api/v1/build/{victim_flow_id}/verticesreturns 200 OK with{"ids": [...], "run_id": "...", "vertices_to_run": [...]}listing the victim flow's vertex IDs (component type plus suffix, e.g.ChatInput-abc12).- The attacker calls
POST /api/v1/build/{victim_flow_id}/vertices/{vertex_id}for a returned ID. The victim's graph is loaded and the vertex is built. Its results, outputs and artifacts are returned to the attacker.
Impact
- Confidentiality (Low): Discloses the structure of private flows (vertex IDs and component types) and the outputs of vertices the attacker chooses to build. That includes values hardcoded in node configuration, such as prompt text or fixed inputs.
- Global variables and credentials in the variable store are not exposed, because variable resolution uses the caller's
user_id. - The victim's stored flow definition is not returned…
- Global variables and credentials in the variable store are not exposed, because variable resolution uses the caller's
- Record
GHSA-gh98-4phw-6fmw- CVSS 3.1
- 5.4 Medium
CVSS:3.1/AV:N/AC:L/PR:L/UI:N/S:U/C:L/I:L/A:N - Weakness
- CWE-639, CWE-862
- Updated
- 2026-11-02
NVD
5.4
Langflow is a tool for building and deploying AI-powered agents and workflows. From 1.0.0 until 1.10.1, Langflow did not verify flow ownership in the deprecated POST /api/v1/build/{flow_id}/vertices and POST /api/v1/build/{flow_id}/vertices/{vertex_id} handlers. Through version 1.7.1, an unauthenticated caller who knew another user's flow UUID could reach these handlers; from version 1.7.2 through 1.10.0, callers had to authenticate but needed no elevated privileges. Such a caller could cause retrieve_vertices_order to load and cache the private graph, enumerate its vertex identifiers, and use build_vertex to execute selected vertices and receive their results. build_graph_from_db_no_cache performed a primary-key lookup without an owner filter. This could disclose private flow structure, configured values, and selected outputs and could trigger victim-configured side effects and build-history records, although it did not expose the victim's variable-store credentials or permit modification of the stored flow. This issue is fixed in Langflow 1.10.1 and langflow-base 0.10.1.
- Record
CVE-2026-105698- CVSS 3.1
- 5.4 Medium
CVSS:3.1/AV:N/AC:L/PR:L/UI:N/S:U/C:L/I:L/A:N - Weakness
- CWE-639, CWE-862
- Updated
- 2026-11-02
OSV
5.4
Langflow: Cross-user flow access and vertex execution via deprecated /api/v1/build/{flow_id}/vertices endpoints
Langflow is a tool for building and deploying AI-powered agents and workflows. From 1.0.0 until 1.10.1, Langflow did not verify flow ownership in the deprecated POST /api/v1/build/{flow_id}/vertices and POST /api/v1/build/{flow_id}/vertices/{vertex_id} handlers. Through version 1.7.1, an unauthenticated caller who knew another user's flow UUID could reach these handlers; from version 1.7.2 through 1.10.0, callers had to authenticate but needed no elevated privileges. Such a caller could cause retrieve_vertices_order to load and cache the private graph, enumerate its vertex identifiers, and use build_vertex to execute selected vertices and receive their results. build_graph_from_db_no_cache performed a primary-key lookup without an owner filter. This could disclose private flow structure, configured values, and selected outputs and could trigger victim-configured side effects and build-history records, although it did not expose the victim's variable-store credentials or permit modification of the stored flow. This issue is fixed in Langflow 1.10.1 and langflow-base 0.10.1.
- Record
CVE-2026-105698- CVSS 3.1
- 5.4 Medium
CVSS:3.1/AV:N/AC:L/PR:L/UI:N/S:U/C:L/I:L/A:N - Weakness
- CWE-639, CWE-862
- Updated
- 2026-11-04
OSVGHSA-gh98-4phw-6fmw
5.4
Langflow : Cross-user flow access and vertex execution via deprecated /api/v1/build/{flow_id}/vertices endpoints
Summary
Before Langflow 1.10.1, two deprecated but still-routed endpoints in the chat API did not check that the authenticated caller owns the flow referenced in the URL path:
POST /api/v1/build/{flow_id}/vertices(retrieve_vertices_order)POST /api/v1/build/{flow_id}/vertices/{vertex_id}(build_vertex)
Any authenticated user who knows (or obtains) another user's flow_id could load that user's private flow graph, enumerate its vertex IDs, and build (execute) individual vertices of it, receiving the vertex results in the response.
Both routes are declared with deprecated=True, include_in_schema=False, so they do not appear in the OpenAPI docs, but they remained registered on the router. The Langflow UI no longer calls them (it uses POST /api/v1/build/{flow_id}/flow), so they are only reachable by direct HTTP requests.
The issue is fixed in Langflow 1.10.1 (langflow-base 0.10.1) by #13153.
Details
In affected versions, both handlers go straight to the graph loader:
retrieve_vertices_order(src/backend/base/langflow/api/v1/chat.py, lines 81-159 in 1.9.1) only required authentication viadependencies=[Depends(get_current_active_user)]. The user was never injected into the handler, and the flow was loaded withbuild_graph_from_db(flow_id=flow_id, ...).build_vertex(chat.py, lines 320-491 in 1.9.1) receivescurrent_user, but only uses it for variable resolution (user_id=str(current_user.id)). It is never used to scope the flow lookup. The graph is taken from the chat-service cache keyed byflow_id, or rebuilt withbuild_graph_from_dbon a cache miss.build_graph_from_db_no_cache(src/backend/base/langflow/api/utils/flow_utils.py) does a bare primary-key lookup,session.get(Flow, flow_id), with no owner filter.
The supported replacement, POST /api/v1/build/{flow_id}/flow, already restricted the lookup to the owner or a PUBLIC flow (added in #12305 for GHSA-qj98-rhf8-v93f). The deprecated siblings were not covered by that fix, nor by the _read_flow fix for GHSA-8c4j-f57c-35cf.
Additional side effects in affected versions:
retrieve_vertices_orderstores the graph in the chat-service cache under the victim'sflow_id(chat_service.set_cache(str(flow_id), graph)). When the request includes adatabody, the cached graph is attacker-supplied.build_vertexscheduleslog_vertex_buildfor the victim'sflow_id, so attacker-triggered builds are recorded in the victim flow's vertex build history.
Note on older versions: up to and including 1.7.1, these two routes had no authentication dependency at all. Authentication was added in 1.7.2 by #10977, but no ownership check was added. This advisory covers the missing ownership check, which is present in every release from 1.0.0 (when the routes were introduced) through 1.10.0.
Attack scenario
- The attacker authenticates as any valid user.
- The attacker obtains a victim
flow_id(shared URLs, exported flow files, logs, screenshots, etc.). POST /api/v1/build/{victim_flow_id}/verticesreturns 200 OK with{"ids": [...], "run_id": "...", "vertices_to_run": [...]}listing the victim flow's vertex IDs (component type plus suffix, e.g.ChatInput-abc12).- The attacker calls
POST /api/v1/build/{victim_flow_id}/vertices/{vertex_id}for a returned ID. The victim's graph is loaded and the vertex is built. Its results, outputs and artifacts are returned to the attacker.
Impact
- Confidentiality (Low): Discloses the structure of private flows (vertex IDs and component types) and the outputs of vertices the attacker chooses to build. That includes values hardcoded in node configuration, such as prompt text or fixed inputs.
- Global variables and credentials in the variable store are not exposed, because variable resolution uses the caller's
user_id. - The victim's stored flow definition is not returned…
- Global variables and credentials in the variable store are not exposed, because variable resolution uses the caller's
- Record
GHSA-gh98-4phw-6fmw- CVSS 3.1
- 5.4 Medium
CVSS:3.1/AV:N/AC:L/PR:L/UI:N/S:U/C:L/I:L/A:N - Weakness
- CWE-639, CWE-862
- Updated
- 2026-11-02
OSVPYSEC-2026-4234
5.4
Langflow : Cross-user flow access and vertex execution via deprecated /api/v1/build/{flow_id}/vertices endpoints
Summary
Before Langflow 1.10.1, two deprecated but still-routed endpoints in the chat API did not check that the authenticated caller owns the flow referenced in the URL path:
POST /api/v1/build/{flow_id}/vertices(retrieve_vertices_order)POST /api/v1/build/{flow_id}/vertices/{vertex_id}(build_vertex)
Any authenticated user who knows (or obtains) another user's flow_id could load that user's private flow graph, enumerate its vertex IDs, and build (execute) individual vertices of it, receiving the vertex results in the response.
Both routes are declared with deprecated=True, include_in_schema=False, so they do not appear in the OpenAPI docs, but they remained registered on the router. The Langflow UI no longer calls them (it uses POST /api/v1/build/{flow_id}/flow), so they are only reachable by direct HTTP requests.
The issue is fixed in Langflow 1.10.1 (langflow-base 0.10.1) by #13153.
Details
In affected versions, both handlers go straight to the graph loader:
retrieve_vertices_order(src/backend/base/langflow/api/v1/chat.py, lines 81-159 in 1.9.1) only required authentication viadependencies=[Depends(get_current_active_user)]. The user was never injected into the handler, and the flow was loaded withbuild_graph_from_db(flow_id=flow_id, ...).build_vertex(chat.py, lines 320-491 in 1.9.1) receivescurrent_user, but only uses it for variable resolution (user_id=str(current_user.id)). It is never used to scope the flow lookup. The graph is taken from the chat-service cache keyed byflow_id, or rebuilt withbuild_graph_from_dbon a cache miss.build_graph_from_db_no_cache(src/backend/base/langflow/api/utils/flow_utils.py) does a bare primary-key lookup,session.get(Flow, flow_id), with no owner filter.
The supported replacement, POST /api/v1/build/{flow_id}/flow, already restricted the lookup to the owner or a PUBLIC flow (added in #12305 for GHSA-qj98-rhf8-v93f). The deprecated siblings were not covered by that fix, nor by the _read_flow fix for GHSA-8c4j-f57c-35cf.
Additional side effects in affected versions:
retrieve_vertices_orderstores the graph in the chat-service cache under the victim'sflow_id(chat_service.set_cache(str(flow_id), graph)). When the request includes adatabody, the cached graph is attacker-supplied.build_vertexscheduleslog_vertex_buildfor the victim'sflow_id, so attacker-triggered builds are recorded in the victim flow's vertex build history.
Note on older versions: up to and including 1.7.1, these two routes had no authentication dependency at all. Authentication was added in 1.7.2 by #10977, but no ownership check was added. This advisory covers the missing ownership check, which is present in every release from 1.0.0 (when the routes were introduced) through 1.10.0.
Attack scenario
- The attacker authenticates as any valid user.
- The attacker obtains a victim
flow_id(shared URLs, exported flow files, logs, screenshots, etc.). POST /api/v1/build/{victim_flow_id}/verticesreturns 200 OK with{"ids": [...], "run_id": "...", "vertices_to_run": [...]}listing the victim flow's vertex IDs (component type plus suffix, e.g.ChatInput-abc12).- The attacker calls
POST /api/v1/build/{victim_flow_id}/vertices/{vertex_id}for a returned ID. The victim's graph is loaded and the vertex is built. Its results, outputs and artifacts are returned to the attacker.
Impact
- Confidentiality (Low): Discloses the structure of private flows (vertex IDs and component types) and the outputs of vertices the attacker chooses to build. That includes values hardcoded in node configuration, such as prompt text or fixed inputs.
- Global variables and credentials in the variable store are not exposed, because variable resolution uses the caller's
user_id. - The victim's stored flow definition is not returned…
- Global variables and credentials in the variable store are not exposed, because variable resolution uses the caller's
- Record
PYSEC-2026-4234- CVSS 3.1
- 5.4 Medium
CVSS:3.1/AV:N/AC:L/PR:L/UI:N/S:U/C:L/I:L/A:N - Updated
- 2026-11-02
OSVPYSEC-2026-4238
5.4
Langflow : Cross-user flow access and vertex execution via deprecated /api/v1/build/{flow_id}/vertices endpoints
Summary
Before Langflow 1.10.1, two deprecated but still-routed endpoints in the chat API did not check that the authenticated caller owns the flow referenced in the URL path:
POST /api/v1/build/{flow_id}/vertices(retrieve_vertices_order)POST /api/v1/build/{flow_id}/vertices/{vertex_id}(build_vertex)
Any authenticated user who knows (or obtains) another user's flow_id could load that user's private flow graph, enumerate its vertex IDs, and build (execute) individual vertices of it, receiving the vertex results in the response.
Both routes are declared with deprecated=True, include_in_schema=False, so they do not appear in the OpenAPI docs, but they remained registered on the router. The Langflow UI no longer calls them (it uses POST /api/v1/build/{flow_id}/flow), so they are only reachable by direct HTTP requests.
The issue is fixed in Langflow 1.10.1 (langflow-base 0.10.1) by #13153.
Details
In affected versions, both handlers go straight to the graph loader:
retrieve_vertices_order(src/backend/base/langflow/api/v1/chat.py, lines 81-159 in 1.9.1) only required authentication viadependencies=[Depends(get_current_active_user)]. The user was never injected into the handler, and the flow was loaded withbuild_graph_from_db(flow_id=flow_id, ...).build_vertex(chat.py, lines 320-491 in 1.9.1) receivescurrent_user, but only uses it for variable resolution (user_id=str(current_user.id)). It is never used to scope the flow lookup. The graph is taken from the chat-service cache keyed byflow_id, or rebuilt withbuild_graph_from_dbon a cache miss.build_graph_from_db_no_cache(src/backend/base/langflow/api/utils/flow_utils.py) does a bare primary-key lookup,session.get(Flow, flow_id), with no owner filter.
The supported replacement, POST /api/v1/build/{flow_id}/flow, already restricted the lookup to the owner or a PUBLIC flow (added in #12305 for GHSA-qj98-rhf8-v93f). The deprecated siblings were not covered by that fix, nor by the _read_flow fix for GHSA-8c4j-f57c-35cf.
Additional side effects in affected versions:
retrieve_vertices_orderstores the graph in the chat-service cache under the victim'sflow_id(chat_service.set_cache(str(flow_id), graph)). When the request includes adatabody, the cached graph is attacker-supplied.build_vertexscheduleslog_vertex_buildfor the victim'sflow_id, so attacker-triggered builds are recorded in the victim flow's vertex build history.
Note on older versions: up to and including 1.7.1, these two routes had no authentication dependency at all. Authentication was added in 1.7.2 by #10977, but no ownership check was added. This advisory covers the missing ownership check, which is present in every release from 1.0.0 (when the routes were introduced) through 1.10.0.
Attack scenario
- The attacker authenticates as any valid user.
- The attacker obtains a victim
flow_id(shared URLs, exported flow files, logs, screenshots, etc.). POST /api/v1/build/{victim_flow_id}/verticesreturns 200 OK with{"ids": [...], "run_id": "...", "vertices_to_run": [...]}listing the victim flow's vertex IDs (component type plus suffix, e.g.ChatInput-abc12).- The attacker calls
POST /api/v1/build/{victim_flow_id}/vertices/{vertex_id}for a returned ID. The victim's graph is loaded and the vertex is built. Its results, outputs and artifacts are returned to the attacker.
Impact
- Confidentiality (Low): Discloses the structure of private flows (vertex IDs and component types) and the outputs of vertices the attacker chooses to build. That includes values hardcoded in node configuration, such as prompt text or fixed inputs.
- Global variables and credentials in the variable store are not exposed, because variable resolution uses the caller's
user_id. - The victim's stored flow definition is not returned…
- Global variables and credentials in the variable store are not exposed, because variable resolution uses the caller's
- Record
PYSEC-2026-4238- CVSS 3.1
- 5.4 Medium
CVSS:3.1/AV:N/AC:L/PR:L/UI:N/S:U/C:L/I:L/A:N - Updated
- 2026-11-02
Affected products
Affected packages
| Package | Affected | Fixed |
|---|---|---|
langflowPyPI |
1.0.0 up to 1.10.1 | 1.10.1 |
langflow-basePyPI |
before 0.10.1 | 0.10.1 |
langflowPyPI |
1.0.0 up to 1.10.1, plus listed versions 1.0.11.0.101.0.111.0.121.0.13 Show 45 moreShow less1.0.141.0.151.0.161.0.171.0.181.0.191.0.19.post11.0.19.post21.0.21.0.31.0.41.0.51.0.61.0.71.0.81.0.91.1.01.1.11.1.21.1.31.1.41.1.4.post11.10.01.10.0rc01.10.1rc01.10.1rc31.2.01.3.01.3.11.3.21.3.31.3.41.4.01.4.11.4.21.4.31.5.01.5.0.post11.5.0.post21.5.11.6.01.6.11.6.21.6.31.6.4 |
1.10.1 |
langflow-basePyPI |
before 0.10.1, plus listed versions 0.0.130.0.140.0.150.0.160.0.17 Show 45 moreShow less0.0.180.0.190.0.200.0.210.0.220.0.230.0.240.0.250.0.260.0.270.0.280.0.290.0.300.0.310.0.320.0.330.0.340.0.350.0.360.0.370.0.380.0.390.0.400.0.410.0.420.0.430.0.440.0.450.0.460.0.470.0.480.0.490.0.500.0.510.0.520.0.530.0.540.0.550.0.560.0.570.0.580.0.590.0.600.0.610.0.62 |
0.10.1 |
History
| Recorded | Changed | Sources |
|---|---|---|
| facts | OSV | |
| first indexed | CVE List, EUVD, GitHub Advisories, NVD, OSV |
Dates are when Every CVE recorded each change. Upstream dates may differ.
In short
CVE-2026-105698 is a medium vulnerability (CVSS 5.4) in Langflow-ai Langflow, published October 5, 2026. No source lists public exploit code. EPSS puts the chance of exploitation in the next 30 days at 0.22%, the 13th percentile. Fixed in langflow 1.10.1.
References
github.com/langflow-ai/langflow/security/advisories/GHSA-gh98-4phw-6fmw
github.com/langflow-ai/langflow/pull/13153
github.com/langflow-ai/langflow/commit/fb3d6ec90b1e4d52eaa40915a64b1f86b6542f55
github.com/langflow-ai/langflow/releases/tag/v1.10.1
nvd.nist.gov/vuln/detail/CVE-2026-105698
github.com/advisories/GHSA-gh98-4phw-6fmw
Left out here: 127 versions and the rest of 4 source descriptions. The JSON record has them.