CL-UNK-1211 used PHP web shells, credential theft and SysGoRAT against government Linux servers (Unit 42)
Unit 42 reports an espionage cluster that targeted government-linked Linux web and database servers from Oct 2025 to Apr 2026, using PHP web shells, three credential-harvesting methods and a Go RAT over WebSocket. Today, hunt Linux PHP hosts for the listed behaviours and IoCs, check PHP login pages and .bashrc files for tampering, patch CVE-2021-4034 and restrict outbound traffic from servers.
Triage: The behaviours are concrete and run on common Linux/PHP infrastructure, but the sources name only government-linked targets and report no financial-sector activity [S1][S2].
The core claims come from Unit 42's own research report [S2], and The Hacker News coverage [S1] repeats them. Neither source reports activity outside government-linked targets.
Changed since version 1
- Source numbering changed. The Hacker News is now S1 and Unit 42 is now S2. Earlier [S1] references to Unit 42 now read [S2].
- Added PHP login page injection as a credential-harvesting method, with matching scope, verify and eradicate lines [S1].
- Added .bashrc replacement and cleartext password scanning in config and history files as explicit scope conditions [S1].
- Added SysGoRAT details: multi-platform, WebSocket C2 to a hard-coded IP, /bin/sh -c and cmd /C execution, file exfiltration [S1].
- Hunt 2 now also matches /var/qmail/mailnames/ enumeration and zip_mails.sh [S1].
- Contain now preserves logs off-host first, because the actors wipe system logs [S1].
- Added the open question on initial access, since today's source names no CVE or KEV [S1].
What happened
- Unit 42 tracked an espionage cluster, CL-UNK-1211, against Linux infrastructure tied to government entities between October 2025 and April 2026 [S1][S2].
- The actors kept access with open-source and bespoke PHP web shells and hijacked the global PHP auto_prepend_file setting for persistence [S1][S2].
- They harvested credentials three ways: a malicious .bashrc that steals sudo passwords, code injected into PHP login pages to capture admin credentials, and scans of config and history files for cleartext email, SMTP and database passwords [S1].
- SysGoRAT is a multi-platform Go RAT. It connects over WebSocket to a hard-coded IP, runs commands via /bin/sh -c on Linux or cmd /C on Windows, and exfiltrates files to its C2 [S1].
- The actors enumerated /var/qmail/mailnames/, tried to generate a zip_mails.sh script, and used search_social.php. They exfiltrated databases to file-hosting sites [S1][S2].
- They attempted to disable endpoint protections and wipe system logs, and used timestomping [S1][S2].
Timeline
| 2025-10 to 2026-04 | CL-UNK-1211 activity window against government-linked Linux servers S2 |
| 2026-10-16 | Unit 42 publishes its CL-UNK-1211 report S2 |
| 2026-11-02 | The Hacker News reports the campaign and details three credential-harvesting methods and SysGoRAT capabilities S1 |
Detect
Shell or interpreter spawned by PHP-FPM · EDR / Linux process events
index=* (parent_process_name="php-fpm*" OR parent_process_name="php*") (process_name IN ("sh","bash","dash","python","python3","nc","ncat","curl","wget")) | stats count min(_time) as first max(_time) as last values(process) as cmd by host parent_process_name process_nameFROM logs-* | WHERE process.parent.name LIKE "php*" AND process.name IN ("sh","bash","dash","python","python3","nc","ncat","curl","wget") | STATS count = COUNT(*), first = MIN(@timestamp), last = MAX(@timestamp), cmd = VALUES(process.command_line) BY host.name, process.parent.name, process.nameA hit means: A PHP worker launched a shell or network tool. This matches the web shell activity described for this campaign [S2].
Reverse shell, lateral sshpass, mailbox enumeration and exfil command lines · EDR / Linux process events, auditd, auth log
index=* (process="*mkfifo /tmp/f*" OR process="*/dev/tcp/*" OR (process="*python*" process="*socket*" process="*dup2*") OR process="*sshpass*StrictHostKeyChecking=no*" OR process="*.libpython-helper*" OR process="*touch -t*" OR (process="*pkill*" process="*cortex*") OR process="*/var/qmail/mailnames*" OR process="*zip_mails.sh*" OR process="*transfer.sh*" OR process="*bashupload.com*" OR process="*filebin.net*") | stats count values(process) as cmd values(user) as user by host
A hit means: A command line matched a reverse shell, lateral movement, timestomping, EDR-kill, qmail mailbox enumeration or file-hosting upload pattern published for this campaign [S1][S2].
Campaign persistence artifacts and file paths · File integrity monitoring, systemd/cron, EDR file events, web access logs
index=* ("plesk_sys_driver.php" OR "sys-update.service" OR "sys-control-client" OR "/dev/shm/.gs-" OR ".libpython-helper" OR "search_social.php" OR "zip_mails.sh" OR "Solarwinds.StatusLog.txt" OR ("auto_prepend_file" ("/etc/php/" OR "/opt/plesk/php/"))) | stats count values(source) as src by hostFROM logs-* | EVAL t = CONCAT(COALESCE(file.path, ""), " ", COALESCE(process.command_line, ""), " ", COALESCE(url.path, ""), " ", COALESCE(message, "")) | WHERE t LIKE "*plesk_sys_driver.php*" OR t LIKE "*sys-update.service*" OR t LIKE "*sys-control-client*" OR t LIKE "*/dev/shm/.gs-*" OR t LIKE "*.libpython-helper*" OR t LIKE "*search_social.php*" OR t LIKE "*zip_mails.sh*" OR t LIKE "*Solarwinds.StatusLog.txt*" OR (t LIKE "*auto_prepend_file*" AND (t LIKE "*/etc/php/*" OR t LIKE "*/opt/plesk/php/*")) | STATS count = COUNT(*), src = VALUES(event.dataset) BY host.name
A hit means: A file, request or config change matched a persistence or tooling artifact named for this campaign [S1][S2]. Treat the host as possibly compromised until verified.
Network contact with published IoCs · Firewall, proxy and DNS logs
index=* (dest_ip IN ("45.88.188.140","198.23.185.234","138.68.244.146","185.21.136.6","72.61.89.179","104.194.158.65","109.224.53.140","162.243.175.162","154.93.37.228","141.164.58.87","88.80.150.232","88.119.167.57","173.212.247.23","104.248.131.53","147.182.224.216","93.93.112.57","192.210.183.17") OR query IN ("magento.ink","*.magento.ink","solidmonpe.com","*.solidmonpe.com","wibu-bau-bawang.online","*.wibu-bau-bawang.online","beraskencur.site","*.beraskencur.site") OR url IN ("*magento.ink*","*solidmonpe.com*","*wibu-bau-bawang.online*","*beraskencur.site*")) | stats count min(_time) as first max(_time) as last by src_ip dest_ip query urlA hit means: An internal host contacted infrastructure attributed to this campaign [S2], possibly SysGoRAT WebSocket C2 to its hard-coded IP [S1].
Verify
- For a PHP-FPM child process, look at the web request at the same timestamp and at any recently written .php files under the web root. A web shell is likely when the child process does not match known application behaviour [S2].
- Check every php.ini and conf.d file under /etc/php/ and /opt/plesk/php/ for an auto_prepend_file value. A path the team did not configure, such as /usr/lib/php/plesk_sys_driver.php, is a true positive [S2].
- Diff PHP admin login pages against vendor or repository copies. Code that writes or sends submitted credentials is a true positive [S1].
- Inspect .bashrc and .bash_aliases for every user for a sudo alias or a replaced file. Diff authorized_keys against approved keys [S1][S2].
- Hash suspect binaries and compare them with the SHA-256 IoCs in S2. File mtimes may be timestomped, so use ctime and inode change records rather than mtime [S2].
- Benign look-alikes: PHP applications that legitimately shell out (image converters, mailers, Plesk tooling). Mail admin scripts that walk /var/qmail/mailnames/. Admin use of sshpass in automation. Legitimate auto_prepend_file use by APM or security agents. Admin uploads to file-sharing sites.
Scope
Affected
- Linux web servers running PHP / PHP-FPM, including Plesk-managed PHP under /opt/plesk/php/ [S2]
- PHP applications with admin login pages that can be modified on disk [S1]
- Linux hosts where a user's .bashrc can be replaced, exposing sudo passwords [S1]
- Hosts with cleartext email, SMTP or database passwords in config or history files [S1]
- Linux hosts reachable with shared or hard-coded admin SSH credentials [S2]
- qmail mail servers (mailbox enumeration under /var/qmail/mailnames/) [S1][S2]
- Internal MSSQL servers where xp_cmdshell can be enabled [S2]
- Hosts unpatched for CVE-2021-4034 (PwnKit privilege escalation) [S2]
Only if
None stated by the sources.
Not affected if
None stated by the sources.
Enumerate
- All internet-facing Linux hosts running PHP-FPM or Plesk, and their PHP configuration directories
- PHP admin login pages and their integrity against known-good copies
- Linux hosts with vulnerable polkit/pkexec (CVE-2021-4034)
- Accounts whose credentials sit in config files or shell history (email, SMTP, database) on PHP hosts
- Admin accounts used with sshpass or shared across hosts
- qmail servers and mailboxes under /var/qmail/mailnames/
Contain
- Capture memory and volatile state (process list, network connections, /dev/shm) on suspect hosts before any reboot. The sources describe in-memory reverse shells, so a reboot destroys that evidence and cannot be undone [S2].
- Preserve logs off-host now. The actors attempt to wipe system logs [S1].
- Network-isolate confirmed hosts and keep the disk images.
- Block the S2 IP and domain IoCs, including 104.194.158.65, and file-hosting upload sites (transfer.sh, bashupload.com, filebin.net) at egress for server segments [S1][S2].
- Disable xp_cmdshell on MSSQL servers that do not need it [S2].
- Rotate credentials exposed on affected hosts: sudo passwords, PHP admin logins, SSH keys, DB/SMTP/email secrets in configs and history, and admin credentials used with sshpass [S1][S2]. Rotation cannot be undone and will break dependent automation, so stage it.
Eradicate
- Remove PHP web shells and any auto_prepend_file entries the team did not set [S1][S2].
- Restore PHP login pages from known-good copies to remove injected credential-harvesting code [S1].
- Replace malicious .bashrc and .bash_aliases files and remove unapproved authorized_keys [S1][S2].
- Remove SysGoRAT binaries and persistence such as sys-update.service, and the search_social.php and zip_mails.sh scripts [S1][S2].
- Remove cleartext passwords from config and history files [S1].
- Patch CVE-2021-4034 on Linux hosts [S2].
Recover
- Rebuild hosts where timestomping and log deletion prevent establishing a trusted baseline, instead of cleaning in place [S1][S2].
- Before restoring service, validate PHP configs, login pages, systemd units, crontabs, shell rc files and authorized_keys against a known-good baseline.
- Afterwards, monitor for PHP-FPM child shells, outbound WebSocket from servers, and uploads to file-hosting sites.
- Afterwards, monitor for new sshpass use, xp_cmdshell re-enablement, access to /var/qmail/mailnames/, and attempts to stop EDR processes or clear logs.
Re-enter the loop when
- Unit 42 or another vendor publishes new IoCs or SysGoRAT samples, including Windows variants.
- A source names the initial access vector or confirms how CVE-2025-55182 was used.
- A source reports this cluster against non-government or financial-sector targets.
- Any hunt hit appears on a host outside the first enumerated set.
Debrief
- Record which hosts had PHP web shells, auto_prepend_file changes, injected login code, a modified .bashrc or SysGoRAT. Base first-seen times on ctime and logs rather than timestomped mtimes.
- Record which credentials were exposed and when they were rotated.
- Record whether egress controls blocked any upload or C2 attempts.
- Gap: the sources do not state the initial access vector. Today's report names no CVE, and the role of CVE-2025-55182 remains unclear.
- Gap: there is no attribution beyond the CL-UNK cluster label, and no victim count or sector breadth.
Detection coverage — checked automatically
| Category | Source | Status |
|---|---|---|
| Vendor | Impacted vendor / CERT advisory | published — primary source among the thread's sources: https://unit42.paloaltonetworks.com/ai-campaign-targets-linux-infrastructure/ |
| Government | CISA KEV · CVE-2021-4034 | published — listed 2022-06-27, federal due 2022-07-18 |
| Government | CISA KEV · CVE-2025-55182 | published — listed 2025-12-05, federal due 2025-12-12 |
| Reference | NVD · CVE-2021-4034 | published — published 2022-01-28, CVSS 3.1 7.8 |
| Reference | NVD · CVE-2025-55182 | published — published 2025-12-03, CVSS 3.1 10 |
| VM scanners | Qualys · CVE-2021-4034 | published — QID 376287 · ThreatPROTECT: PwnKit: Polkit pkexec Local Privilege Escalation Vulnerability (CVE-2021-4034) (+3 more posts) |
| VM scanners | Qualys · CVE-2025-55182 | published — QID 500644, 386154, 733480, 48336, 530712 · ThreatPROTECT: React Server Components (RSC) Remote Code Execution Vulnerabilities (+1 more post) |
| VM scanners | Rapid7 · CVE-2021-4034 | published — InsightVM coverage stated · 1 Metasploit module (not linked) |
| VM scanners | Rapid7 · CVE-2025-55182 | published — InsightVM coverage stated · 1 Metasploit module (not linked) |
| VM scanners | Tenable · CVE-2021-4034 | published — 40+ plugins: 501030 Siemens devices Out-of-bounds Read/Write (CVE-2021-4034); 157095 RHEL 6 : polkit (RHSA-2022:0269); 157106 RHEL 7 : polkit (RHSA-2022:0273); 157108 SUSE SLES15 Security Update : polkit (SUSE-SU-2022:0191-1); … |
| VM scanners | Tenable · CVE-2025-55182 | published — 11 plugins: 115069 React Server Components 19.0 / 19.1.0 / 19.1.1 / 19.2.0 Remote Code Execution (React2Shell); 115772 Next.js 15.0.x < 15.0.5 Remote Code Execution; 115773 Next.js 15.1.x < 15.1.9 Remote Code Execution; 115774 Next.js 15.2.x < 15.2.6 Remote Code Execution; … |
| EDR / endpoint VM | CrowdStrike blog | nothing found — no post names it among the feed's 10 newest items |
| EDR / endpoint VM | Microsoft Security blog | nothing found — no post names it among the feed's 10 newest items |
| EDR / endpoint VM | SentinelOne blog | nothing found — no post names it among the feed's 10 newest items |
| EDR / endpoint VM | SentinelOne Labs | nothing found — no post names it among the feed's 10 newest items |
| WAF / edge | Akamai blog | published — CVE-2025-55182: React and Next.js Server Functions Deserialization RCE |
| WAF / edge | Cloudflare WAF managed-ruleset changelog | published — WAF - WAF Release - 2025-12-10 - Emergency · WAF - Increased WAF payload limit for all plans · WAF - WAF Release - 2025-12-03 - Emergency |
| Cloud / container | Wiz blog | published — React2Shell: Technical Deep-Dive & In-the-Wild Exploitation of CVE-2025-55182 · React2Shell (CVE-2025-55182): Everything You Need to Know About the Critical React Vulnerability |
| Linux distro errata | Debian tracker · CVE-2021-4034 | published — tracker entry with fixed versions |
| Linux distro errata | Debian tracker · CVE-2025-55182 | published — tracker entry |
| Linux distro errata | Red Hat · CVE-2021-4034 | published — Important; errata RHSA-2022:0269, RHSA-2022:0274, RHSA-2022:0270, RHSA-2022:0272, RHSA-2022:0271, RHSA-2022:0273 |
| Linux distro errata | Red Hat · CVE-2025-55182 | nothing found — entry exists, no errata yet |
| IDS / research | Cisco Talos blog | nothing found — no post names it among the feed's 15 newest items |
| IDS / research | Emerging Threats open · CVE-2021-4034 | nothing found — no open rule names it (exploit, web_server, web_specific_apps sets) |
| IDS / research | Emerging Threats open · CVE-2025-55182 | nothing found — no open rule names it (exploit, web_server, web_specific_apps sets) |
| Detection content | Elastic detection rules | published — 6 files name CVE-2025-55182 / CVE-2021-4034: detection_rules/schemas/definitions.py, rules/network/initial_access_react_server_rce_network_alerts.toml, rules/network/initial_access_react_server_components_rce_attempt.toml, rules_building_block/initial_access_anomalous_rsc_flight_data_patterns.toml |
| Detection content | Elastic Security Labs | nothing found — no post names it among the feed's 102 newest items |
| Detection content | SigmaHQ rules | published — 7 files name CVE-2025-55182 / CVE-2021-4034: rules-emerging-threats/2025/Exploits/CVE-2025-55182/proc_creation_win_exploit_cve_2025_55182_susp_nodejs_server_child_process.yml, rules-emerging-threats/2025/Exploits/CVE-2025-55182/proc_creation_lnx_exploit_cve_2025_55182_susp_nodejs_server_child_process.yml, regression_data/rules-emerging-threats/2025/Exploits/CVE-2025-55182/proc_creation_win_exploit |
| Detection content | Splunk ESCU | published — 5 files name CVE-2025-55182 / CVE-2021-4034: stories/react2shell.yml, detections/endpoint/linux_suspicious_react_or_next_js_child_process.yml, detections/endpoint/windows_suspicious_react_or_next_js_child_process.yml, detections/network/cisco_secure_firewall___react_server_components_rce_attempt.yml |
| Community | Nuclei template · CVE-2021-4034 | nothing found — no template under http/cves |
| Community | Nuclei template · CVE-2025-55182 | published — template in nuclei-templates (main) |
| MSSP / IR firms | Arctic Wolf blog | nothing found — no post names it among the feed's 10 newest items |
| MSSP / IR firms | Huntress blog | published — PeerBlight Linux Backdoor Exploits React2Shell CVE-2025-55182 |
| MSSP / IR firms | Rapid7 blog | nothing found — no post names it among the feed's 20 newest items |
| MSSP / IR firms | Sophos threat research | nothing found — no post names it among the feed's 15 newest items |
| Research | Unit 42 | nothing found — no post names it among the feed's 15 newest items |
Checked automatically 2026-11-10 04:09Z from public sources: 22 published, 14 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)
| EDR | Whether Linux process telemetry captures PHP-FPM child processes and command lines, and whether tamper protection would resist the described EDR-kill attempts. |
| File integrity monitoring | Whether php.ini/conf.d, web roots, login pages, .bashrc and systemd units are monitored on PHP hosts. |
| VM scanners | Whether checks for CVE-2021-4034 and CVE-2025-55182 are deployed and authenticated on Linux hosts. |
| NGFW / proxy / DNS | Whether server segments log and can block outbound WebSocket and file-hosting uploads, and whether the published IoCs are ingested. |
| SIEM / logging | Whether Linux auth, auditd and web access logs are forwarded off-host before local wiping. |
Exposure queries — generated automatically
Where each CVE comes from: CVE-2021-4034 — CL-UNK-1211: AI-Assisted Espionage Targets Government Linux Infrastructure; CVE-2025-55182 — CL-UNK-1211: AI-Assisted Espionage Targets Government Linux Infrastructure. A product row answers "is the software from that story reachable from the internet", not "is this card about that software".
shodan · cve · CVE-2025-55182
vuln:CVE-2025-55182
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-31 (+0) · 0 on 2026-11-09 (+0)
shodan · cve · CVE-2021-4034
vuln:CVE-2021-4034
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.
454services internet-wide on Shodan · 2026-11-10▲ 449 on 2026-10-31 (+5 +1%) · 453 on 2026-11-09 (+1 +0%)
shodan · cpe · facebook:react
cpe:"cpe:/a:facebook:react"
open · Every React service Shodan fingerprinted, any version (CPE 2.2 form of cpe:2.3:a:facebook:react). Affected per NVD: = 19.0.0; = 19.1.0; = 19.1.1; = 19.2.0.
1,049,023services internet-wide on Shodan · 2026-11-10▲ 849,886 on 2026-10-31 (+199,137 +23%) · 1,041,341 on 2026-11-09 (+7,682 +1%)
shodan · product · facebook:react
product:"React"
open · Banner product name, NVD's spelling; adjust if Shodan's differs. Affected per NVD: = 19.0.0; = 19.1.0; = 19.1.1; = 19.2.0.
1services internet-wide on Shodan · 2026-11-10▬ 1 on 2026-10-31 (+0 +0%) · 1 on 2026-11-09 (+0 +0%)
censys · product · facebook:react
host.services: (software.product = "React")
Censys Platform host search, software as fingerprinted at layer 7. Affected per NVD: = 19.0.0; = 19.1.0; = 19.1.1; = 19.2.0.
shodan · cpe · vercel:next.js
cpe:"cpe:/a:vercel:next.js"
open · Every Next.js service Shodan fingerprinted, any version (CPE 2.2 form of cpe:2.3:a:vercel:next.js). Affected per NVD: >= 15.0.0 < 15.0.5; >= 15.1.0 < 15.1.9; >= 15.2.0 < 15.2.6; >= 15.3.0 < 15.3.6; >= 15.4.0 < 15.4.8; >= 15.5.0 < 15.5.7; >= 16.0.0 < 16.0.7; = 14.3.0.
708,744services internet-wide on Shodan · 2026-11-10▲ 552,734 on 2026-10-31 (+156,010 +28%) · 705,502 on 2026-11-09 (+3,242 +0%)
shodan · product · vercel:next.js
product:"Next.js"
open · Banner product name, NVD's spelling; adjust if Shodan's differs. Affected per NVD: >= 15.0.0 < 15.0.5; >= 15.1.0 < 15.1.9; >= 15.2.0 < 15.2.6; >= 15.3.0 < 15.3.6; >= 15.4.0 < 15.4.8; >= 15.5.0 < 15.5.7; >= 16.0.0 < 16.0.7; = 14.3.0.
0match this spelling on Shodan · 2026-11-10▬ 0 on 2026-10-31 (+0) · 0 on 2026-11-09 (+0)
censys · product · vercel:next.js
host.services: (software.product = "Next.js")
Censys Platform host search, software as fingerprinted at layer 7. Affected per NVD: >= 15.0.0 < 15.0.5; >= 15.1.0 < 15.1.9; >= 15.2.0 < 15.2.6; >= 15.3.0 < 15.3.6; >= 15.4.0 < 15.4.8; >= 15.5.0 < 15.5.7; >= 16.0.0 < 16.0.7; = 14.3.0.
shodan · cpe · polkit_project:polkit
cpe:"cpe:/a:polkit_project:polkit"
open · Every Polkit service Shodan fingerprinted, any version (CPE 2.2 form of cpe:2.3:a:polkit_project:polkit). Affected per NVD: < 121.
0match this spelling on Shodan · 2026-11-10▬ 0 on 2026-10-31 (+0) · 0 on 2026-11-09 (+0)
shodan · product · polkit_project:polkit
product:"Polkit"
open · Banner product name, NVD's spelling; adjust if Shodan's differs. Affected per NVD: < 121.
0match this spelling on Shodan · 2026-11-10 — a text search for "Polkit" matches 4 services, but no product or http.component facet value names this product; Shodan may not fingerprint it▬ 0 on 2026-10-31 (+0) · 0 on 2026-11-09 (+0)
censys · product · polkit_project:polkit
host.services: (software.product = "Polkit")
Censys Platform host search, software as fingerprinted at layer 7. Affected per NVD: < 121.
shodan · cpe · oracle:http_server
cpe:"cpe:/a:oracle:http_server"
open · Every Http Server service Shodan fingerprinted, any version (CPE 2.2 form of cpe:2.3:a:oracle:http_server). Affected per NVD: = 12.2.1.3.0; = 12.2.1.4.0.
49,881services internet-wide on Shodan · 2026-11-10
shodan · product · oracle:http_server
product:"Http Server"
open · Banner product name, NVD's spelling; adjust if Shodan's differs. Affected per NVD: = 12.2.1.3.0; = 12.2.1.4.0.
5,212services internet-wide on Shodan · 2026-11-10
censys · product · oracle:http_server
host.services: (software.product = "Http Server")
Censys Platform host search, software as fingerprinted at layer 7. Affected per NVD: = 12.2.1.3.0; = 12.2.1.4.0.
shodan · alias · oracle:http_server
http.title:"Oracle HTTP Server"
open · Banner spelling suggested by the model from the card text (console and default page title for Oracle HTTP Server 12c); counted against Shodan before it was shown.
2,203services internet-wide on Shodan · 2026-11-10
shodan · alias · oracle:http_server
product:"Oracle HTTP Server"
open · Banner spelling suggested by the model from the card text (banner product field for Oracle HTTP Server 12c); counted against Shodan before it was shown.
1,263services internet-wide on Shodan · 2026-11-10
shodan · alias · vercel:next.js
http.component:"Next.js"
open · Banner spelling suggested by the model from the card text (web framework name shown behind servers running Next.js); counted against Shodan before it was shown.
655,826services internet-wide on Shodan · 2026-11-10▲ 513,924 on 2026-10-31 (+141,902 +28%) · 652,600 on 2026-11-09 (+3,226 +0%)
shodan · alias · facebook:react
http.html:"react-dom"
open · Banner spelling suggested by the model from the card text (React DOM script bundle names on served pages); counted against Shodan before it was shown.
77,191services internet-wide on Shodan · 2026-11-10▼ 79,334 on 2026-10-31 (-2,143 -3%) · 77,296 on 2026-11-09 (-105 -0%)
Internet-wide count, trend
| Query | First | Latest | Change |
|---|---|---|---|
product:"React" | 1 2026-10-31 | 1 2026-11-10 | +0 (+0%) over 9 days |
product:"Polkit" | 0 2026-10-31 | 0 2026-11-10 | +0 over 11 days |
product:"Next.js" | 0 2026-10-31 | 0 2026-11-10 | +0 over 9 days |
vuln:CVE-2021-4034 | 449 2026-10-31 | 454 2026-11-10 | +5 (+1%) over 11 days |
vuln:CVE-2025-55182 | 0 2026-10-31 | 0 2026-11-10 | +0 over 11 days |
http.html:"react-dom" | 79,334 2026-10-31 | 77,191 2026-11-10 | -2,143 (-3%) over 6 days |
http.component:"Next.js" | 513,924 2026-10-31 | 655,826 2026-11-10 | +141,902 (+28%) over 9 days |
cpe:"cpe:/a:facebook:react" | 849,886 2026-10-31 | 1,049,023 2026-11-10 | +199,137 (+23%) over 9 days |
cpe:"cpe:/a:vercel:next.js" | 552,734 2026-10-31 | 708,744 2026-11-10 | +156,010 (+28%) over 9 days |
cpe:"cpe:/a:polkit_project:polkit" | 0 2026-10-31 | 0 2026-11-10 | +0 over 11 days |
product:"Enterprise Linux Server Update Services For Sap Solutions" | 0 2026-10-31 | 0 2026-11-09 | +0 over 10 days |
cpe:"cpe:/a:redhat:enterprise_linux_server_update_services_for_sap_solutions" | 0 2026-10-31 | 0 2026-11-09 | +0 over 10 days |
product:"Enterprise Storage" | 0 2026-11-02 | 0 2026-11-06 | +0 over 2 days |
cpe:"cpe:/a:suse:enterprise_storage" | 0 2026-11-02 | 0 2026-11-06 | +0 over 2 days |
product:"Linux Enterprise High Performance Computing" | 0 2026-11-02 | 0 2026-11-06 | +0 over 2 days |
cpe:"cpe:/a:suse:linux_enterprise_high_performance_computing" | 0 2026-11-02 | 0 2026-11-06 | +0 over 2 days |
ssl:"Red Hat Update Infrastructure" | 104 2026-11-03 | 105 2026-11-05 | +1 (+1%) over 3 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 9 more affected products (libraries and embedders); the CVE query covers them where Shodan has fingerprinted the version.
Banner spellings: a model read 4 from the NVD names and this card's text (former and marketing names, console titles); 4 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-10 04:09Z 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
- Which CVE, if any, gave initial access? The Hacker News coverage names no CVE or KEV entry [S1], while the earlier thread listed CVE-2025-55182 and CVE-2021-4034.
- Was SysGoRAT observed on Windows hosts, or is Windows support only a capability [S1]?
- Which government entities and countries were affected, and how many?
Sources
- [S1] https://thehackernews.com/2026/11/government-linux-servers-targeted-with.html · The Hacker News
- [S2] https://unit42.paloaltonetworks.com/ai-campaign-targets-linux-infrastructure/ · Unit 42 (Palo Alto Networks)
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.