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 3, as of 2026-11-04; hype score 8 (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. Supersedes version 2. All cards · news: CVE-2026-119977

WordPress Core CVE-2026-119977 upgrade race condition listed in CISA KEV as exploited

Patch now + Hunt / IRP1confidence: highP1 +2KEV CVE-2026-119977 +3primary source +1material development on watch +2P1: card on day one (score below the publish bar; revised as the story develops)

CISA lists CVE-2026-119977 as known exploited. It is a WordPress Core TOCTOU race during full-package core upgrades that could allow unauthenticated code execution, and the federal due date is 2026-11-06. Today: inventory WordPress sites, patch to the fixed release, and hunt web logs for requests into upgrade staging paths.

Triage: CISA confirms exploitation of a WordPress Core flaw that could allow unauthenticated code execution, with a 2026-11-06 due date [S1].

The CISA KEV catalog, a primary government source, confirms exploitation [S1][S2]. Version range and fixed release come from pipeline exposure data that cites advisories not among S1–S3.

Changed since version 2

What happened

Timeline

2026-10-31CVE published in NVD (per pipeline coverage data)
2026-11-03Added to CISA KEV S2
2026-11-06Federal remediation due date S1

Detect

Web requests into WordPress upgrade staging paths · Web server / reverse proxy / WAF access logs

index=* "/wp-content/upgrade" | rex field=_raw "(?<req_path>/wp-content/upgrade[^\s\"?]*)" | search req_path="*.php*" | stats count earliest(_time) as first_seen latest(_time) as last_seen values(status) as status by host, req_path | convert ctime(first_seen) ctime(last_seen)
FROM logs-* | WHERE url.path LIKE "*/wp-content/upgrade*" AND url.path LIKE "*.php*" | STATS count = COUNT(*), first_seen = MIN(@timestamp), last_seen = MAX(@timestamp), status = VALUES(http.response.status_code) BY host.name, url.path

A hit means: A client requested a PHP file in the upgrade staging area. This matches the predictable staging-path condition [S1]. The search assumes the default WordPress directory, because the sources do not name the path. A 200 response to an external client during an upgrade window warrants forensic triage.

Shell or download tools spawned by the web server or PHP process · EDR / Sysmon / auditd process creation on WordPress hosts

index=* (parent_process_name="php*" OR parent_process_name="httpd" OR parent_process_name="apache2" OR parent_process_name="nginx" OR parent_process_name="w3wp.exe") (process_name="sh" OR process_name="bash" OR process_name="dash" OR process_name="curl" OR process_name="wget" OR process_name="python*" OR process_name="perl" OR process_name="nc" OR process_name="cmd.exe" OR process_name="powershell.exe") | stats count earliest(_time) as first_seen values(process) as cmdline by host, parent_process_name, process_name
FROM logs-* | WHERE (process.parent.name LIKE "php*" OR process.parent.name IN ("httpd", "apache2", "nginx", "w3wp.exe")) AND (process.name IN ("sh", "bash", "dash", "curl", "wget", "perl", "nc", "cmd.exe", "powershell.exe") OR process.name LIKE "python*") | STATS count = COUNT(*), first_seen = MIN(@timestamp), cmdline = VALUES(process.command_line) BY host.name, process.parent.name, process.name

A hit means: The web server executed a command. This is consistent with the code execution the KEV entry describes [S1]. Correlate the time with core upgrade windows and with Hunt 1 hits.

Verify

Scope

Affected

Only if

Not affected if

Fixed in: 7.1.4 (per pipeline exposure data; confirm against the WordPress release note)

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-2026-119977published — listed 2026-11-03, federal due 2026-11-06
ReferenceNVD · CVE-2026-119977published — published 2026-10-31, CVSS 3.1 8.1
VM scannersQualys · CVE-2026-119977published — ThreatPROTECT: CISA Warns of WordPress Vulnerability Exploited in the Wild (CVE-2026-119977)
VM scannersRapid7 · CVE-2026-119977published — InsightVM coverage stated
VM scannersTenable · CVE-2026-119977published — 26 plugins: 115791 WordPress 7.1.x < 7.1.4 Multiple Vulnerabilities; 115794 WordPress 6.8.x < 6.8.12 Multiple Vulnerabilities; 115806 WordPress 5.6.x < 5.6.23 Multiple Vulnerabilities; 115808 WordPress 5.4.x < 5.4.25 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-119977published — tracker entry with fixed versions
Linux distro errataRed Hat · CVE-2026-119977nothing found — entry exists, no errata yet
IDS / researchCisco Talos blognothing found — no post names it among the feed's 15 newest items
IDS / researchEmerging Threats open · CVE-2026-119977nothing found — no open rule names it (exploit, web_server, web_specific_apps sets)
Detection contentElastic detection rulespublished — 3 files name WordPress: rules/linux/persistence_webserver_php_file_creation_in_wordpress_plugin_dir.toml, rules/_deprecated/defense_evasion_code_injection_conhost.toml, rules/macos/privilege_escalation_user_added_to_admin_group.toml
Detection contentElastic Security Labsnothing found — no post names it among the feed's 102 newest items
Detection contentSigmaHQ rulespublished — 17 files name WordPress: deprecated/windows/win_susp_vssadmin_ntds_activity.yml, deprecated/windows/proc_creation_win_susp_squirrel_lolbin.yml, rules/windows/file/file_event/file_event_win_iso_file_mount.yml, rules/web/proxy_generic/proxy_ua_frameworks.yml
Detection contentSplunk ESCUpublished — 12 files name WordPress / TOCTOU: stories/wordpress_vulnerabilities.yml, detections/web/wordpress_bricks_builder_plugin_rce.yml, stories/xworm.yml, stories/clop_ransomware.yml
CommunityNuclei template · CVE-2026-119977nothing 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-10 18:12Z from public sources: 10 published, 17 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)
VM scannersCheck whether your scanner has a check for CVE-2026-119977 that reads the core version.
WAF / edgeCheck whether a managed rule blocks requests to WordPress upgrade staging paths.
EDR / endpointCheck whether web-server child-process detection is enabled on Linux WordPress hosts.
Detection contentCheck whether SIEM content covers PHP file creation in wp-content directories.

Exposure queries — generated automatically

Where each CVE comes from: CVE-2026-119977 — WordPress Core CVE-2026-119977 TOCTOU race enables unauthenticated code execution during upgrade; added to CISA KEV. 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-119977

vuln:CVE-2026-119977

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.

28,373services internet-wide on Shodan · 2026-11-10▲ 0 on 2026-11-04 (+28,373) · 17,087 on 2026-11-09 (+11,286 +66%)

shodan · cpe · wordpress:wordpress

cpe:"cpe:/a:wordpress:wordpress"

open · Every Wordpress service Shodan fingerprinted, any version (CPE 2.2 form of cpe:2.3:a:wordpress:wordpress). Affected per NVD: >= 4.7 < 4.7.39; >= 4.8 < 4.8.34; >= 4.9 < 4.9.35; >= 5.0 < 5.0.31; >= 5.1 < 5.1.28; >= 5.2 < 5.2.30; >= 5.3 < 5.3.27; >= 5.4 < 5.4.25.

2,819,674services internet-wide on Shodan · 2026-11-10▲ 2,296,854 on 2026-11-04 (+522,820 +23%) · 2,747,017 on 2026-11-09 (+72,657 +3%)

shodan · product · wordpress:wordpress

product:"Wordpress"

open · Banner product name, NVD's spelling; adjust if Shodan's differs. Affected per NVD: >= 4.7 < 4.7.39; >= 4.8 < 4.8.34; >= 4.9 < 4.9.35; >= 5.0 < 5.0.31; >= 5.1 < 5.1.28; >= 5.2 < 5.2.30; >= 5.3 < 5.3.27; >= 5.4 < 5.4.25.

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

censys · product · wordpress:wordpress

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

Censys Platform host search, software as fingerprinted at layer 7. Affected per NVD: >= 4.7 < 4.7.39; >= 4.8 < 4.8.34; >= 4.9 < 4.9.35; >= 5.0 < 5.0.31; >= 5.1 < 5.1.28; >= 5.2 < 5.2.30; >= 5.3 < 5.3.27; >= 5.4 < 5.4.25.

shodan · alias · wordpress:wordpress

http.html:"wp-includes/js/wp-emoji-release.min.js"

open · Banner spelling suggested by the model from the card text (core script path present on nearly every WordPress front end); counted against Shodan before it was shown.

201,822services internet-wide on Shodan · 2026-11-10▼ 208,044 on 2026-11-04 (-6,222 -3%) · 200,643 on 2026-11-09 (+1,179 +1%)

Internet-wide count, trend

QueryFirstLatestChange
product:"Wordpress"0 2026-11-040 2026-11-10+0 over 7 days
vuln:CVE-2026-1199770 2026-11-0428,373 2026-11-10+28,373 over 7 days
cpe:"cpe:/a:wordpress:wordpress"2,296,854 2026-11-042,819,674 2026-11-10+522,820 (+23%) over 7 days
http.html:"wp-includes/js/wp-emoji-release.min.js"208,044 2026-11-04201,822 2026-11-10-6,222 (-3%) over 7 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 1 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 18:12Z 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.