CUTSIGNcutting for sign — daily OSINT threat read
AI-generated verdict card, published automatically by the pipeline on day one because the brief rated the story P1. Version 1, as of 2026-10-31; hype score 6 (below the usual publish bar: early read from few sources, revised as the story develops). Written by a model from the stored public sources and not reviewed by a person; re-issued in place when the evidence changes (the URL stays). The detection-coverage table below is checked automatically from public sources and re-checked daily. All cards · news: CVE-2026-105740 CVE-2026-105697 CVE-2026-55255 CVE-2026-9198 CVE-2026-0768 CVE-2026-69255

Langflow authenticated RCE (CVE-2026-105740) via MCP Stdio command; exploitation attempts seen since Sep 19

Patch now + HuntP1confidence: highP1 +2deep read +1day 2 of the story +13 publishers +1primary source +1P1: card on day one (score below the publish bar; revised as the story develops)

Any authenticated Langflow user before 1.9.0 can run shell commands by adding an MCP server with Stdio transport. Honeypots show attempts to exploit it. Today, find every Langflow instance, upgrade to 1.9.0, disable auto-login and hunt the MCP server endpoint.

Triage: Exploitation attempts are observed against an authenticated RCE that is reachable through auto-login or weak credentials, and a fix (1.9.0) is available [S1][S2].

The GitHub advisory [S2] confirms the flaw and the fix. Exploitation is reported as honeypot attempts [S1], not confirmed compromises of real deployments. The later roundup [S3] is a single, thin source.

What happened

Timeline

2026-09-19First honeypot exploit attempts logged S1
2026-10-11Attempt volume ramps up S1
2026-10-15Public reporting of the authenticated RCE and observed exploitation attempts S1
2026-10-19Roundup item cites 1,800+ attempts; unconfirmed, and its cited source prints no Langflow details S3

Detect

MCP server creation or modification on Langflow · Web access / reverse proxy logs

index=* "/api/v2/mcp/servers" (http_method=POST OR method=POST OR "POST /api/v2/mcp/servers") | stats count min(_time) as first_seen max(_time) as last_seen values(status) as status values(uri_path) as uri_path by src_ip
FROM logs-* | WHERE url.path LIKE "*/api/v2/mcp/servers*" AND http.request.method == "POST" | STATS count = COUNT(*), first_seen = MIN(@timestamp), last_seen = MAX(@timestamp), status = VALUES(http.response.status_code), uri_path = VALUES(url.path) BY source.ip

A hit means: Someone added or changed an MCP server config, which is the exploit step [S1][S2]. Treat any POST from an unexpected source, or any POST outside a planned change, as suspected exploitation.

Auto-login probe followed by login from same source · Web access logs / Langflow auth logs

index=* ("/api/v1/auto_login" OR "/api/v1/login" OR "/api/v2/mcp/servers") | stats dc(uri_path) as distinct_paths values(uri_path) as paths values(status) as status count by src_ip | where distinct_paths>=2
FROM logs-* | WHERE url.path LIKE "*/api/v1/auto_login*" OR url.path LIKE "*/api/v1/login*" OR url.path LIKE "*/api/v2/mcp/servers*" | STATS distinct_paths = COUNT_DISTINCT(url.path), paths = VALUES(url.path), status = VALUES(http.response.status_code), count = COUNT(*) BY source.ip | WHERE distinct_paths >= 2

A hit means: One source walked the observed attacker sequence of auto-login, then login, then the MCP endpoint [S1]. Repeated 401s before a success suggests credential guessing.

Shell spawned through the MCP Stdio exec wrapper · EDR / Linux process execution events

index=* (process="*exec *Command failed*" OR process="*/dev/tcp/*" OR process="*LANGFLOW_SECRET_KEY*" OR process="*LANGFLOW_SUPERUSER_PASSWORD*") | stats count min(_time) as first_seen values(process) as process values(parent_process) as parent_process by dest, user
FROM logs-* | WHERE process.command_line LIKE "*exec *Command failed*" OR process.command_line LIKE "*/dev/tcp/*" OR process.command_line LIKE "*LANGFLOW_SECRET_KEY*" OR process.command_line LIKE "*LANGFLOW_SUPERUSER_PASSWORD*" | STATS count = COUNT(*), first_seen = MIN(@timestamp), process = VALUES(process.command_line), parent_process = VALUES(process.parent.command_line) BY host.name, user.name

A hit means: A command ran through Langflow's bash -c "exec ... || echo 'Command failed...'" wrapper, or a reverse shell or secret extraction ran [S2]. The wrapper string alone can be legitimate MCP use, so check what command it carried.

Traffic to reported attacker infrastructure · Firewall / proxy / network flow logs

index=* (dest_ip="146.70.211.112" OR src_ip="146.70.211.112" OR dest_ip="192.255.229.92" OR src_ip="192.255.229.92" OR dest_port=18764) | stats count min(_time) as first_seen values(dest_port) as dest_port by src_ip, dest_ip

A hit means: Contact with an IP listed in this campaign's IoCs. 146.70.211.112:18764 received stolen environment variables [S2]. The role of 192.255.229.92 is not stated.

Verify

Scope

Affected

Only if

Not affected if

Fixed in: 1.9.0 [S2]

Enumerate

Contain

Eradicate

Recover

Re-enter the loop when

Debrief

Detection coverage — checked automatically

CategorySourceStatus
VendorImpacted vendor / CERT advisorypublished — primary source among the thread's sources: https://github.com/langflow-ai/langflow/security/advisories/GHSA-7w94-79vh-5mr2
GovernmentCISA KEV · CVE-2026-105697nothing found — not in the catalog
GovernmentCISA KEV · CVE-2026-105740nothing found — not in the catalog
GovernmentCISA KEV · CVE-2026-55255published — listed 2026-07-07, federal due 2026-07-10
ReferenceNVD · CVE-2026-105697published — published 2026-10-05, CVSS 3.1 9.9
ReferenceNVD · CVE-2026-105740check failed — The operation was aborted due to timeout
ReferenceNVD · CVE-2026-55255check failed — The operation was aborted due to timeout
VM scannersQualys · CVE-2026-105697nothing found — no ThreatPROTECT or Security Blog post names it; the QID knowledge base needs a login
VM scannersQualys · CVE-2026-105740nothing found — no ThreatPROTECT or Security Blog post names it; the QID knowledge base needs a login
VM scannersQualys · CVE-2026-55255published — ThreatPROTECT: CISA Warns About Langflow Authorization Bypass Vulnerability Exploitation (CVE-2026-55255)
VM scannersRapid7 · CVE-2026-105697published — InsightVM coverage stated
VM scannersRapid7 · CVE-2026-105740published — InsightVM coverage stated
VM scannersRapid7 · CVE-2026-55255published — InsightVM coverage stated
VM scannersTenable · CVE-2026-105697check failed — plugin search page did not render a result list
VM scannersTenable · CVE-2026-105740nothing found — no plugin names the CVE yet
VM scannersTenable · CVE-2026-55255published — 2 plugins: 115276 Langflow < 1.9.1 Multiples Vulnerabilities; 326241 Langflow < 1.9.1 Multiple Vulnerabilities
EDR / endpoint VMCrowdStrike blognothing found — no post names it among the feed's 10 newest items
EDR / endpoint VMMicrosoft Security blognothing found — no post names it among the feed's 10 newest items
EDR / endpoint VMSentinelOne blognothing found — no post names it among the feed's 10 newest items
EDR / endpoint VMSentinelOne Labsnothing found — no post names it among the feed's 10 newest items
WAF / edgeAkamai blognothing found — no post names it among the feed's 1185 newest items
WAF / edgeCloudflare WAF managed-ruleset changelognothing found — no post names it among the feed's 139 newest items
Cloud / containerWiz blognothing found — no post names it among the feed's 719 newest items
Linux distro errataDebian tracker · CVE-2026-105697published — tracker entry with fixed versions
Linux distro errataDebian tracker · CVE-2026-105740published — tracker entry with fixed versions
Linux distro errataDebian tracker · CVE-2026-55255published — tracker entry with fixed versions
Linux distro errataRed Hat · CVE-2026-105697nothing found — no Red Hat entry
Linux distro errataRed Hat · CVE-2026-105740nothing found — no Red Hat entry
Linux distro errataRed Hat · CVE-2026-55255nothing found — no Red Hat entry
IDS / researchCisco Talos blognothing found — no post names it among the feed's 15 newest items
IDS / researchEmerging Threats open · CVE-2026-105697nothing found — no open rule names it (exploit, web_server, web_specific_apps sets)
IDS / researchEmerging Threats open · CVE-2026-105740nothing found — no open rule names it (exploit, web_server, web_specific_apps sets)
IDS / researchEmerging Threats open · CVE-2026-55255nothing found — no open rule names it (exploit, web_server, web_specific_apps sets)
Detection contentElastic detection rulesnothing found — no rule file names CVE-2026-105740 / CVE-2026-105697 / CVE-2026-55255
Detection contentElastic Security Labsnothing found — no post names it among the feed's 102 newest items
Detection contentSigmaHQ rulesnothing found — no rule file names CVE-2026-105740 / CVE-2026-105697 / CVE-2026-55255
Detection contentSplunk ESCUnothing found — no rule file names CVE-2026-105740 / CVE-2026-105697 / CVE-2026-55255
CommunityNuclei template · CVE-2026-105697nothing found — no template under http/cves
CommunityNuclei template · CVE-2026-105740published — template in nuclei-templates (main)
CommunityNuclei template · CVE-2026-55255nothing found — no template under http/cves
MSSP / IR firmsArctic Wolf blognothing found — no post names it among the feed's 10 newest items
MSSP / IR firmsHuntress blognothing found — no post names it among the feed's 754 newest items
MSSP / IR firmsRapid7 blognothing found — no post names it among the feed's 20 newest items
MSSP / IR firmsSophos threat researchnothing found — no post names it among the feed's 15 newest items
ResearchUnit 42nothing found — no post names it among the feed's 15 newest items

Checked automatically 2026-11-11 04:11Z from public sources: 12 published, 30 nothing found, 0 not machine-checkable, 3 failed. "Nothing found" means the public source answered and had nothing, as of that moment; a feed covers only its newest posts. Re-checked daily.

What a person would still look up (5)
EDRDoes it alert on bash or interactive shells spawned by a Python or Langflow parent, on /dev/tcp reverse shells, and on Docker host-mount activity from containers?
WAF / reverse proxyCan it log or restrict POSTs to /api/v2/mcp/servers and requests to /api/v1/auto_login?
Vulnerability scannerDoes it detect Langflow versions before 1.9.0 and exposed Langflow instances?
Network / NDRDoes it flag outbound connections from app servers to unusual ports such as 18764 and 4444?
Secrets managementCan Langflow secrets be rotated centrally, and is use of the old secrets monitored?

Exposure queries — generated automatically

Where each CVE comes from: CVE-2026-55255 — Langflow authenticated RCE (CVE-2026-105740) actively exploited via MCP Stdio transport; CVE-2026-105697 — Langflow authenticated RCE (CVE-2026-105740) actively exploited via MCP Stdio transport; CVE-2026-105740 — Langflow authenticated RCE (CVE-2026-105740) actively exploited via MCP Stdio transport. A product row answers "is the software from that story reachable from the internet", not "is this card about that software".

shodan · cve · CVE-2026-105740

vuln:CVE-2026-105740

open · Shodan tags a service with a CVE from its banner version; a paid-tier filter. Exact for this CVE, blind to a host Shodan has not fingerprinted.

0match this spelling on Shodan · 2026-11-11 — Shodan has tagged no banner with this CVE yet; its tagging follows its own version fingerprinting, not the advisory▬ 0 on 2026-10-31 (+0) · 0 on 2026-11-10 (+0)

shodan · cve · CVE-2026-105697

vuln:CVE-2026-105697

open · Shodan tags a service with a CVE from its banner version; a paid-tier filter. Exact for this CVE, blind to a host Shodan has not fingerprinted.

0match this spelling on Shodan · 2026-11-11 — Shodan has tagged no banner with this CVE yet; its tagging follows its own version fingerprinting, not the advisory▬ 0 on 2026-10-31 (+0) · 0 on 2026-11-10 (+0)

shodan · cve · CVE-2026-55255

vuln:CVE-2026-55255

open · Shodan tags a service with a CVE from its banner version; a paid-tier filter. Exact for this CVE, blind to a host Shodan has not fingerprinted.

1,626services internet-wide on Shodan · 2026-11-11▼ 1,826 on 2026-10-31 (-200 -11%) · 1,672 on 2026-11-10 (-46 -3%)

shodan · named · named:langflow

product:"Langflow"

open · The name the campaign uses (NVD has not named the software yet): Shodan's product field, for software that is itself the service. Affected per the card: Langflow versions before 1.9.0 [S2].

2,180services internet-wide on Shodan · 2026-11-11▼ 2,541 on 2026-10-31 (-361 -14%) · 2,231 on 2026-11-10 (-51 -2%)

censys · named · named:langflow

host.services: (software.product = "Langflow")

Censys Platform host search, software as fingerprinted at layer 7. Affected per the card: Langflow versions before 1.9.0 [S2].

shodan · named · named:mcp

product:"MCP"

open · The name the campaign uses (NVD has not named the software yet): Shodan's product field, for software that is itself the service. Affected per the card: Langflow versions before 1.9.0 [S2].

245,019services internet-wide on Shodan · 2026-11-11

censys · named · named:mcp

host.services: (software.product = "MCP")

Censys Platform host search, software as fingerprinted at layer 7. Affected per the card: Langflow versions before 1.9.0 [S2].

shodan · alias · card

http.title:"Langflow"

open · Banner spelling suggested by the model from the card text (web console page title of the Langflow IDE); counted against Shodan before it was shown.

2,973services internet-wide on Shodan · 2026-11-11

shodan · alias · card

http.html:"Langflow"

open · Banner spelling suggested by the model from the card text (Langflow login and app pages name the product in HTML); counted against Shodan before it was shown.

2,280services internet-wide on Shodan · 2026-11-11

Internet-wide count, trend

QueryFirstLatestChange
product:"Langflow"2,541 2026-10-312,180 2026-11-11-361 (-14%) over 12 days
vuln:CVE-2026-552551,826 2026-10-311,626 2026-11-11-200 (-11%) over 12 days
vuln:CVE-2026-1056970 2026-10-310 2026-11-11+0 over 12 days
vuln:CVE-2026-1057400 2026-10-310 2026-11-11+0 over 12 days
cpe:"cpe:/a:langflow:langflow"2,544 2026-10-312,232 2026-11-10-312 (-12%) over 11 days

Shodan's count of matching services on the whole internet, one point a day; the scope (your ranges) is never part of it. A count moves with Shodan's crawl as much as with patching, so read the direction, not the digit.

NVD has not published CPE configurations for these CVEs yet, so only the CVE query is exact; the product queries use the name the campaign gives (Langflow, MCP) and are replaced by NVD's spelling at the daily re-check once it names the software.

Also tried under the name the card uses, nothing matched on Shodan: http.component:"Langflow", http.component:"MCP".

Banner spellings: a model read 2 from the NVD names and this card's text (former and marketing names, console titles); 2 matched something on Shodan and are shown above, the rest were dropped.

Scope every query in your own tool, never in a shared document: Shodan `net:<your_ranges>`, `org:"<your_org>"` or `hostname:<your_domain>` (or a Shodan Monitor network alert, which applies the scope for you); Censys `host.ip: <your_ranges>` or `host.dns.names: <your_domain>`. Then compare the banner version with the affected range. Generated automatically 2026-11-11 04:11Z from the CVE ids and NVD's CPE configurations, each Shodan query counted against Shodan itself; re-built daily with the coverage check.

Open questions

Sources

Public OSINT only. AI-generated by the pipeline; structure follows the DAIR model from Dynamic Incident Response (Joshua Wright). Published automatically; a dismissed draft unpublishes it.

One mail per new card, after you confirm by link; an unsubscribe link in every mail. The address is used for nothing else.