CUTSIGNcutting for sign — daily OSINT threat read
AI-generated draft, unreviewed. Version 27, written by a model from the stored public sources on 2026-11-01; hype score 10. It is regenerated when the evidence changes and is published as a verdict card under /cards/ once it crosses the publish bar. Status: superseded. Supersedes version 26.

CL-STA-0954 chained FortiJump and KEV-listed CVE-2025-61624 to deploy PEERSTITCH on FortiGates

Patch now + Hunt / IRP1confidence: highP1 +2deep read +1KEV CVE-2025-61624 +3day 2 of the story +14 publishers +1primary source +1actor named +1

Unit 42, as reported by The Hacker News, says CL-STA-0954 (UNC5820) breached a telecom MSP's FortiManager via CVE-2024-47575, then used CVE-2025-61624 to inject PEERSTITCH into miglogd and iked on managed FortiGates [S1][S6]. CISA lists CVE-2025-61624 as exploited [S4][S5]. Today: capture evidence before rebooting, run the four hunts, rotate secrets held in device configs, and apply FG-IR-26-122 or its virtual patch [S2].

Triage: CVE-2025-61624 is KEV-listed as exploited [S4][S5]. One FortiManager compromise exposed configs and keys for 500+ managed FortiGates [S1].

CISA KEV and the Fortinet advisory confirm CVE-2025-61624 exploitation [S2][S4][S5]. Campaign detail rests on Unit 42 research, relayed by The Hacker News [S1][S6]. SecurityWeek's page could not be read, so it adds no corroboration [S3].

Changed since version 26

What happened

Timeline

2024-10-23CISA lists FortiManager CVE-2024-47575 (FortiJump) in KEV. S4
2026-10-16CISA adds CVE-2025-61624 to KEV, with a federal due date of 2026-10-19. S5
2026-10-16Unit 42 research on CL-STA-0954 and PEERSTITCH is reported. S1
2026-10-20SecurityWeek links the bug to the telecom implant. Its linked content could not be read. S3

Detect

FortiGate auto-script objects with path traversal names · FortiOS system event / config change logs (syslog or FortiAnalyzer forward)

index=* devid=* type="event" subtype="system" (cfgpath="system.auto-script" OR msg="*auto-script*") (cfgobj="*../*" OR msg="*../*") | stats count min(_time) as first_seen max(_time) as last_seen values(action) as action values(cfgobj) as cfgobj values(msg) as msg by devname user ui

A hit means: An auto-script object with ../ in its name was created, edited or deleted. Unit 42 names ../../../../setup and ../../tmp/apache2/conf/md-acme.conf [S6]. Treat a hit as likely compromise. The actor deletes auto-scripts after execution, so a delete event alone matters [S1].

Traffic, web or SSL-VPN sessions involving campaign infrastructure · FortiGate traffic, web filter and VPN event logs; proxy/egress logs

index=* (srcip IN ("23.240.77.233","47.18.167.159","45.32.41.202","198.199.122.22") OR dstip IN ("23.240.77.233","47.18.167.159","45.32.41.202","198.199.122.22") OR remip IN ("23.240.77.233","47.18.167.159","45.32.41.202","198.199.122.22") OR url="*/pM.js" OR (dstport=8085 (url="*/a.js" OR url="*/a.wasm" OR url="*/b.js" OR url="*/dd")) OR (dstport=8084 (url="*/acme/*" OR url="*/directory")) OR url="*/acme/new-acct*" OR url="*/acme/finalize/*" OR url="*/acme/order/*" OR url="*/acme/authz/*") | stats count min(_time) as first_seen max(_time) as last_seen values(dstport) as dstport values(url) as url values(action) as action values(user) as user by devname srcip dstip

A hit means: A device contacted campaign infrastructure. A fetch of pM.js, a.js, a.wasm, b.js or dd from 23.240.77.233:8085 matches the component download [S1]. The other IPs and the port 8084 /directory and /acme/ paths come from Unit 42's mod_md SSH reverse-shell findings [S6]. Inbound SSL-VPN logins from these IPs match stolen-credential use [S1][S6]. ACME paths alone can be benign if the peer is not a campaign IP.

Logging daemons killed, crashlogs cleared, or FortiGateCloud admin activity · FortiOS CLI audit and system event logs

index=* devid=* (msg="*killall*miglogd*" OR msg="*killall*syslogd*" OR msg="*crashlog clear*" OR user="FortiGateCloud") | stats count min(_time) as first_seen max(_time) as last_seen values(msg) as msg values(ui) as ui by devname user

A hit means: Someone stopped logging or cleared crash logs, matching the actor's log tampering [S1]. An admin named FortiGateCloud pulling running configs matches the FortiManager impersonation [S1][S6]. Also check each device's syslog stream for gaps. A successful kill produces silence, not events.

Rogue Virtual FortiGate registration on FortiManager · FortiManager event / device management logs

index=* ("FMG-VMTM23017412" OR ("Virtual FortiGate" AND "localhost") OR ".tm") devid=* | stats count min(_time) as first_seen max(_time) as last_seen values(msg) as msg by devname

A hit means: The rogue Virtual FortiGate (localhost, serial FMG-VMTM23017412) appears, or a .tm archive is referenced [S6]. Treat the FortiManager and every device it manages as in scope. Absence does not clear you, because the actor may use other serials. The bare .tm term is noisy, so confirm by context.

Verify

Scope

Affected

Only if

Not affected if

None stated by the sources.

Fixed in: See Fortinet FG-IR-26-122 [S2]. The provided material does not state fixed versions.

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://www.cisa.gov/known-exploited-vulnerabilities-catalog
GovernmentCISA KEV · CVE-2024-26008nothing found — not in the catalog
GovernmentCISA KEV · CVE-2024-47575published — listed 2024-10-23, federal due 2024-11-13
GovernmentCISA KEV · CVE-2025-61624published — listed 2026-10-16, federal due 2026-10-19
ReferenceNVD · CVE-2024-26008published — published 2025-10-14, CVSS 3.1 5.3
ReferenceNVD · CVE-2024-47575published — published 2024-10-23, CVSS 3.1 9.8
ReferenceNVD · CVE-2025-61624published — published 2026-04-14, CVSS 3.1 6
VM scannersQualys · CVE-2024-26008nothing found — no ThreatPROTECT or Security Blog post names it; the QID knowledge base needs a login
VM scannersQualys · CVE-2024-47575published — ThreatPROTECT: CISA Added Fortinet FortiManager Vulnerability to its Known Exploitable Vulnerabilities Catalog (CVE-2024-47575)
VM scannersQualys · CVE-2025-61624nothing found — no ThreatPROTECT or Security Blog post names it; the QID knowledge base needs a login
VM scannersRapid7 · CVE-2024-26008published — InsightVM coverage stated
VM scannersRapid7 · CVE-2024-47575published — InsightVM coverage stated · 1 Metasploit module (not linked)
VM scannersRapid7 · CVE-2025-61624published — InsightVM coverage stated
VM scannersTenable · CVE-2024-26008published — 1 plugin: 270402 Fortinet Fortigate FGFM protocol allows unauthenticated reset of the connection (FG-IR-24-041)
VM scannersTenable · CVE-2024-47575published — 1 plugin: 209559 Fortinet FortiManager Missing Authentication (FG-IR-24-423)
VM scannersTenable · CVE-2025-61624published — 1 plugin: 306463 Fortinet Fortigate Path Traversal in CLI (FG-IR-26-122)
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 1179 newest items
WAF / edgeCloudflare WAF managed-ruleset changelognothing found — no post names it among the feed's 136 newest items
Cloud / containerWiz blognothing found — no post names it among the feed's 714 newest items
Linux distro errataDebian tracker · CVE-2024-26008published — tracker entry
Linux distro errataDebian tracker · CVE-2024-47575published — tracker entry
Linux distro errataDebian tracker · CVE-2025-61624published — tracker entry
Linux distro errataRed Hat · CVE-2024-26008nothing found — no Red Hat entry
Linux distro errataRed Hat · CVE-2024-47575nothing found — no Red Hat entry
Linux distro errataRed Hat · CVE-2025-61624nothing 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-2024-26008nothing found — no open rule names it (exploit, web_server, web_specific_apps sets)
IDS / researchEmerging Threats open · CVE-2024-47575published — 5 Suricata rules: sid 2057690, 2057691, 2057692, 2057693, 2057694
IDS / researchEmerging Threats open · CVE-2025-61624nothing found — no open rule names it (exploit, web_server, web_specific_apps sets)
Detection contentElastic detection rulesnothing found — no rule file names PEERSTITCH / CVE-2024-47575 / CVE-2024-26008
Detection contentElastic Security Labsnothing found — no post names it among the feed's 102 newest items
Detection contentSigmaHQ rulesnothing found — no rule file names PEERSTITCH / CVE-2024-47575 / CVE-2024-26008
Detection contentSplunk ESCUnothing found — no rule file names PEERSTITCH / CVE-2024-47575 / CVE-2024-26008
CommunityNuclei template · CVE-2024-26008nothing found — no template under http/cves
CommunityNuclei template · CVE-2024-47575nothing found — no template under http/cves
CommunityNuclei template · CVE-2025-61624nothing 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 746 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 42published — Unit 42 Uncovers PEERSTITCH, a Stealthy FortiGate Implant

Checked automatically 2026-11-01 15:13Z from public sources: 18 published, 27 nothing found, 0 not machine-checkable, 0 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)
Vulnerability scannerLook up whether your scanner has an authenticated check for CVE-2025-61624 across FortiOS, FortiPAM, FortiProxy and FortiSwitchManager, and for CVE-2024-47575 on FortiManager.
Firewall IPS / virtual patchConfirm whether FortiGuard signature FG-VD-59270.0day (FMWP db 25.120) is deployed and in block mode on in-scope devices [S2].
SIEMCheck whether FortiGate and FortiManager config-change, CLI audit and VPN logs are ingested, and whether per-device syslog gap alerts exist.
Network detection / egressCheck whether outbound SSH and ACME traffic from firewall management addresses is logged and alertable.
Threat intel platformCheck whether the campaign IPs, filenames and Unit 42 hashes are loaded and pushed to blocklists.

Exposure queries — generated automatically

shodan · cve · CVE-2024-47575

vuln:CVE-2024-47575

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-01 — 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)

shodan · cve · CVE-2024-26008

vuln:CVE-2024-26008

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-01 — 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)

shodan · cve · CVE-2025-61624

vuln:CVE-2025-61624

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-01 — 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)

shodan · cpe · fortinet:fortimanager

cpe:"cpe:/a:fortinet:fortimanager"

open · Every Fortimanager service Shodan fingerprinted, any version (CPE 2.2 form of cpe:2.3:a:fortinet:fortimanager). Affected per NVD: >= 6.2.0 < 6.2.13; >= 6.4.0 < 6.4.15; >= 7.0.0 < 7.0.13; >= 7.2.0 < 7.2.8; >= 7.4.0 < 7.4.5; = 7.6.0.

0match this spelling on Shodan · 2026-11-01▬ 0 on 2026-10-31 (+0)

shodan · product · fortinet:fortimanager

product:"Fortimanager"

open · Banner product name, NVD's spelling; adjust if Shodan's differs. Affected per NVD: >= 6.2.0 < 6.2.13; >= 6.4.0 < 6.4.15; >= 7.0.0 < 7.0.13; >= 7.2.0 < 7.2.8; >= 7.4.0 < 7.4.5; = 7.6.0.

0match this spelling on Shodan · 2026-11-01 — a text search for "Fortimanager" matches 12 services, but no product or http.component facet value names this product; Shodan may not fingerprint it▬ 0 on 2026-10-31 (+0)

censys · product · fortinet:fortimanager

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

Censys Platform host search, software as fingerprinted at layer 7. Affected per NVD: >= 6.2.0 < 6.2.13; >= 6.4.0 < 6.4.15; >= 7.0.0 < 7.0.13; >= 7.2.0 < 7.2.8; >= 7.4.0 < 7.4.5; = 7.6.0.

shodan · cpe · fortinet:fortimanager_cloud

cpe:"cpe:/a:fortinet:fortimanager_cloud"

open · Every Fortimanager Cloud service Shodan fingerprinted, any version (CPE 2.2 form of cpe:2.3:a:fortinet:fortimanager_cloud). Affected per NVD: >= 6.4.1 <= 6.4.7; >= 7.0.1 < 7.0.13; >= 7.2.1 < 7.2.8; >= 7.4.1 < 7.4.5.

0match this spelling on Shodan · 2026-11-01▬ 0 on 2026-10-31 (+0)

shodan · product · fortinet:fortimanager_cloud

product:"Fortimanager Cloud"

open · Banner product name, NVD's spelling; adjust if Shodan's differs. Affected per NVD: >= 6.4.1 <= 6.4.7; >= 7.0.1 < 7.0.13; >= 7.2.1 < 7.2.8; >= 7.4.1 < 7.4.5.

0match this spelling on Shodan · 2026-11-01 — a text search for "Fortimanager" matches 12 services, but no product or http.component facet value names this product; Shodan may not fingerprint it▬ 0 on 2026-10-31 (+0)

censys · product · fortinet:fortimanager_cloud

host.services: (software.product = "Fortimanager Cloud")

Censys Platform host search, software as fingerprinted at layer 7. Affected per NVD: >= 6.4.1 <= 6.4.7; >= 7.0.1 < 7.0.13; >= 7.2.1 < 7.2.8; >= 7.4.1 < 7.4.5.

shodan · cpe · fortinet:fortiproxy

cpe:"cpe:/a:fortinet:fortiproxy"

open · Every Fortiproxy service Shodan fingerprinted, any version (CPE 2.2 form of cpe:2.3:a:fortinet:fortiproxy). Affected per NVD: >= 1.2.0 < 7.2.10; >= 7.4.0 < 7.4.4.

0match this spelling on Shodan · 2026-11-01▬ 0 on 2026-10-31 (+0)

shodan · product · fortinet:fortiproxy

product:"Fortiproxy"

open · Banner product name, NVD's spelling; adjust if Shodan's differs. Affected per NVD: >= 1.2.0 < 7.2.10; >= 7.4.0 < 7.4.4.

0match this spelling on Shodan · 2026-11-01 — a text search for "Fortiproxy" matches 5 services, but no product or http.component facet value names this product; Shodan may not fingerprint it▬ 0 on 2026-10-31 (+0)

censys · product · fortinet:fortiproxy

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

Censys Platform host search, software as fingerprinted at layer 7. Affected per NVD: >= 1.2.0 < 7.2.10; >= 7.4.0 < 7.4.4.

shodan · cpe · fortinet:fortiswitchmanager

cpe:"cpe:/a:fortinet:fortiswitchmanager"

open · Every Fortiswitchmanager service Shodan fingerprinted, any version (CPE 2.2 form of cpe:2.3:a:fortinet:fortiswitchmanager). Affected per NVD: >= 7.0.0 < 7.0.4; >= 7.2.0 < 7.2.4.

0match this spelling on Shodan · 2026-11-01▬ 0 on 2026-10-31 (+0)

shodan · product · fortinet:fortiswitchmanager

product:"Fortiswitchmanager"

open · Banner product name, NVD's spelling; adjust if Shodan's differs. Affected per NVD: >= 7.0.0 < 7.0.4; >= 7.2.0 < 7.2.4.

0match this spelling on Shodan · 2026-11-01 — a text search for "Fortiswitchmanager" matches nothing on Shodan▬ 0 on 2026-10-31 (+0)

censys · product · fortinet:fortiswitchmanager

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

Censys Platform host search, software as fingerprinted at layer 7. Affected per NVD: >= 7.0.0 < 7.0.4; >= 7.2.0 < 7.2.4.

shodan · alias · fortinet:fortimanager

http.title:"FortiManager"

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

2,504services internet-wide on Shodan · 2026-11-01

shodan · alias · fortinet:fortiproxy

http.title:"FortiProxy"

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

770services internet-wide on Shodan · 2026-11-01

Internet-wide count, trend

QueryFirstLatestChange
vuln:CVE-2024-260080 2026-10-310 2026-11-01+0 over 2 days
vuln:CVE-2024-475750 2026-10-310 2026-11-01+0 over 2 days
vuln:CVE-2025-616240 2026-10-310 2026-11-01+0 over 2 days
product:"Fortiproxy"0 2026-10-310 2026-11-01+0 over 2 days
product:"Fortimanager"0 2026-10-310 2026-11-01+0 over 2 days
product:"Fortimanager Cloud"0 2026-10-310 2026-11-01+0 over 2 days
product:"Fortiswitchmanager"0 2026-10-310 2026-11-01+0 over 2 days
cpe:"cpe:/a:fortinet:fortiproxy"0 2026-10-310 2026-11-01+0 over 2 days
cpe:"cpe:/a:fortinet:fortimanager"0 2026-10-310 2026-11-01+0 over 2 days
cpe:"cpe:/a:fortinet:fortimanager_cloud"0 2026-10-310 2026-11-01+0 over 2 days
cpe:"cpe:/a:fortinet:fortiswitchmanager"0 2026-10-310 2026-11-01+0 over 2 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 names 2 more affected products (libraries and embedders); the CVE query covers them where Shodan has fingerprinted the version.

Banner spellings: a model read 5 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-01 15:13Z 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 once it crosses the publish bar.