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-30; hype score 2 (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-42589

Gotenberg CVE-2026-42589 RCE reportedly exploited to drop Go reverse shell 'cache_base'

Patch now + HuntP1confidence: lowP1 +2P1: card on day one (score below the publish bar; revised as the story develops)

A roundup report citing VulnCheck says attackers are exploiting a CVSS 9.8 RCE in Gotenberg, patched in May 2026, to deliver a Go reverse shell. Today: find every Gotenberg instance, patch it, restrict its exposure, and hunt for unexpected child processes and 'cache_base'.

Triage: Exploitation of a CVSS 9.8 RCE is reported as ongoing, from 128 source IPs, with a reverse shell payload [S1].

There is a single secondary source, a news roundup relaying VulnCheck's findings. No vendor advisory, VulnCheck primary report or CERT notice is in the input.

What happened

Timeline

2026-05Gotenberg patch for CVE-2026-42589 released (version not stated) S1
2026-10 (early)Exploitation reportedly first seen from a residential Japanese IP S1
2026-10-30Roundup reports VulnCheck data: 1,358 events from 128 IPs in 30 days, delivering cache_base S1

Detect

Unexpected child process of Gotenberg · EDR / Sysmon process creation on Gotenberg hosts or containers

index=* (parent_process_name="*gotenberg*" OR ParentImage="*gotenberg*") (process_name IN ("sh","bash","dash","curl","wget","cache_base") OR Image IN ("*/sh","*/bash","*/dash","*/curl","*/wget","*cache_base*")) | stats count min(_time) as first max(_time) as last values(process) as cmd by host, parent_process_name, process_name
FROM logs-* | WHERE TO_LOWER(process.parent.name) LIKE "*gotenberg*" OR TO_LOWER(process.parent.executable) LIKE "*gotenberg*" | WHERE process.name IN ("sh", "bash", "dash", "curl", "wget", "cache_base") OR process.executable LIKE "*/sh" OR process.executable LIKE "*/bash" OR process.executable LIKE "*/dash" OR process.executable LIKE "*/curl" OR process.executable LIKE "*/wget" OR process.executable LIKE "*cache_base*" | STATS count = COUNT(*), first = MIN(@timestamp), last = MAX(@timestamp), cmd = VALUES(process.command_line) BY host.name, process.parent.name, process.name | SORT count DESC

A hit means: Gotenberg launched a shell, a downloader or cache_base. That fits the reported exploit chain and needs host triage [S1].

cache_base artefact anywhere · EDR process, file and network telemetry

index=* "cache_base" | stats count min(_time) as first max(_time) as last by host, source
FROM logs-* | WHERE process.name LIKE "*cache_base*" OR process.executable LIKE "*cache_base*" OR process.command_line LIKE "*cache_base*" OR file.path LIKE "*cache_base*" OR file.name LIKE "*cache_base*" OR process.parent.executable LIKE "*cache_base*" OR message LIKE "*cache_base*" | STATS count = COUNT(*), first = MIN(@timestamp), last = MAX(@timestamp) BY host.name, event.dataset | SORT count DESC

A hit means: The reported reverse shell name appears on a host. Confirm it is the binary and not an unrelated string [S1].

Verify

Scope

Affected

Only if

None stated by the sources.

Not affected if

None stated by the sources.

Fixed in: Patched in May 2026 (version not stated in source) [S1]

Enumerate

Contain

Eradicate

Recover

Re-enter the loop when

Debrief

Detection coverage — checked automatically

CategorySourceStatus
VendorImpacted vendor / CERT advisorynothing found — no vendor or CERT page among the thread sources; secondary reporting only
GovernmentCISA KEV · CVE-2026-42589nothing found — not in the catalog
ReferenceNVD · CVE-2026-42589published — published 2026-05-14, CVSS 3.1 9.8
VM scannersQualys · CVE-2026-42589nothing found — no ThreatPROTECT or Security Blog post names it; the QID knowledge base needs a login
VM scannersRapid7 · CVE-2026-42589published — InsightVM coverage stated
VM scannersTenable · CVE-2026-42589nothing found — no plugin names the CVE yet
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-42589published — tracker entry with fixed versions
Linux distro errataRed Hat · CVE-2026-42589nothing 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-42589nothing found — no open rule names it (exploit, web_server, web_specific_apps sets)
Detection contentElastic detection rulesnothing found — no rule file names CVE-2026-42589
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-42589
Detection contentSplunk ESCUnothing found — no rule file names CVE-2026-42589
CommunityNuclei template · CVE-2026-42589published — template in nuclei-templates (main)
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-10 21:16Z from public sources: 4 published, 23 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 (4)
Vulnerability scannerLook up whether it detects Gotenberg and CVE-2026-42589, including inside container images.
EDRCheck whether it logs process creation inside containers that run Gotenberg.
Network / IDSLook for signatures covering CVE-2026-42589 exploit requests or cache_base C2 traffic.
Container securityCheck whether image scanning flags vulnerable Gotenberg images.

Exposure queries — generated automatically

Where each CVE comes from: CVE-2026-42589 — Gotenberg CVE-2026-42589 RCE reportedly exploited to deploy Go reverse shell 'cache_base'. 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-42589

vuln:CVE-2026-42589

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-10 — Shodan has tagged no banner with this CVE yet; its tagging follows its own version fingerprinting, not the advisory▬ 0 on 2026-10-30 (+0) · 0 on 2026-11-09 (+0)

shodan · cpe · thecodingmachine:gotenberg

cpe:"cpe:/a:thecodingmachine:gotenberg"

open · Every Gotenberg service Shodan fingerprinted, any version (CPE 2.2 form of cpe:2.3:a:thecodingmachine:gotenberg). Affected per NVD: < 8.31.0.

0match this spelling on Shodan · 2026-11-10▬ 0 on 2026-10-30 (+0) · 0 on 2026-11-09 (+0)

shodan · product · thecodingmachine:gotenberg

product:"Gotenberg"

open · Banner product name, NVD's spelling; adjust if Shodan's differs. Affected per NVD: < 8.31.0.

3,607services internet-wide on Shodan · 2026-11-10▲ 3,001 on 2026-10-30 (+606 +20%) · 3,515 on 2026-11-09 (+92 +3%)

censys · product · thecodingmachine:gotenberg

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

Censys Platform host search, software as fingerprinted at layer 7. Affected per NVD: < 8.31.0.

shodan · alias · thecodingmachine:gotenberg

http.title:"Gotenberg"

open · Banner spelling suggested by the model from the card text (default landing page title of the Gotenberg server); counted against Shodan before it was shown.

1services internet-wide on Shodan · 2026-11-10▬ 1 on 2026-10-31 (+0 +0%) · 1 on 2026-11-09 (+0 +0%)

Internet-wide count, trend

QueryFirstLatestChange
product:"Gotenberg"3,001 2026-10-303,607 2026-11-10+606 (+20%) over 12 days
vuln:CVE-2026-425890 2026-10-300 2026-11-10+0 over 12 days
http.html:"gotenberg/chromium"4 2026-10-302 2026-11-02-2 (-50%) over 4 days
cpe:"cpe:/a:thecodingmachine:gotenberg"0 2026-10-300 2026-11-10+0 over 12 days
http.title:"Gotenberg"1 2026-10-311 2026-11-10+0 (+0%) 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.

Banner spellings: a model read 3 from the NVD names and this card's text (former and marketing names, console titles); 1 matched something on Shodan and is 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-10 21:16Z 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.