SeleniumGreed Campaign Exploits Exposed Selenium Grid to Deploy XMRig Miners

· Original article ↗

Summary

Wiz researchers detail an active campaign abusing exposed, unauthenticated Selenium Grid services to run remote commands and deploy XMRig miners, and recommend restricting access, enabling authentication, and monitoring workloads.

Key points

  • The campaign targets publicly exposed Selenium Grid instances lacking authentication; researchers observed attacks against version 3.141.59 and confirmed remote-command execution is also possible on newer versions.
  • Attackers abuse Selenium WebDriver options to run Python and establish a reverse shell, then create hidden scripts and download a modified XMRig miner.
  • The campaign uses evasion tactics including disabling shell-history logging, timestomping files, packing the miner with custom UPX headers, and running processes with nohup.
  • Researchers assess that compromised Selenium nodes are used to host payloads and proxy mining traffic; they believe the campaign has been active for over a year and report it is ongoing.
  • Wiz recommends scanning for exposed services, restricting inbound and outbound network access, enabling Selenium Grid authentication, and using runtime detection.

Article Details

Attack Vectors
  • The campaign targets publicly exposed Selenium Grid services without authentication or adequate network controls, allowing remote interaction through the WebDriver API.
  • For older Selenium versions, the attacker sets the Chrome binary path to /usr/bin/python3 and uses add_argument to execute a Python payload that opens a reverse shell.
  • The attacker uses the shell to create and run a hidden script with sudo, download a modified XMRig miner and its launcher, and execute them.
Defensive Notes
  • Do not expose Selenium Grid to the internet; restrict inbound access to trusted IP ranges and outbound traffic to required endpoints.
  • Enable basic authentication on Selenium Grid instances.
  • Use external network and vulnerability scanners to identify exposed services, and runtime detection to identify exploitation and subsequent activity.

Indicators of compromise

TypeIndicatorContext
IPV4164[.]90[.]149[.]104The article assesses this host as compromised and used to host payloads; the reverse-shell payload connects to it, and the host is also listed for payload hosting.
IPV4165[.]22[.]195[.]35IP listed as a mining pool proxy for the campaign.
IPV4165[.]227[.]63[.]241IP dynamically generated by the modified miner as its pool address; the article suspects it is a compromised host used as a mining pool proxy.
IPV4192[.]241[.]144[.]69IP listed as C2 hosting infrastructure in the article's network indicators.
MD5585fd7777074089aaa3c615169c18170MD5 hash listed for a campaign miner binary.
MD5861f7deb8926bb0c6d11f8e81d27b406MD5 hash listed for a campaign miner binary; the article identifies the miner as modified XMRig.
SHA1249d0f41d58fe90cf17bedc8d0c39c6c88e33251TLS fingerprint listed as a mining-pool communication indicator.
SHA147560b0a57913d01614256e9150b6e6f5e758250SHA-1 hash listed for a campaign miner binary.
SHA1b64cb7dbf62eb8b9539cc1d7901a487a3fd7de9bSHA-1 hash listed for a campaign miner binary.
SHA2566852b1102b0efc7ceb47520080fca57eb1a647c4e1c7ff3a40da9757c92ebaabSHA-256 hash listed for a campaign miner binary.
SHA256d5aaa3b923dd8ede43e4cd9eea642d24f3d9be03273d5f97902bc615849af208TLS fingerprint listed as a mining-pool communication indicator.
SHA256fd5f076e99fd2ccb5f8aef5b4f69a8c2bf231808b2480f9d31955154a1509552SHA-256 hash listed for a campaign miner binary.
URLhxxp[:]//164[.]90[.]149[.]104:9022/wxmPayload URL used to download the script that runs the miner.
URLhxxp[:]//164[.]90[.]149[.]104:9022/xmPayload URL used to download the miner to /bin/xm.

MITRE ATT&CK

Malware

Vendors

Products

Tools

Related Articles