A brief change to AOMEI’s software update system allowed attackers to deliver malware through a trusted update channel.
Google Cloud’s Threat Intelligence Group (GTIG) together with Mandiant discovered that threat actors repeatedly modified AOMEI’s update configuration for short periods between April and July 2026.
Any machine running AOMEI Backupper that checked for updates during those brief windows could receive a malicious download instead of a legitimate update.
The intrusion did not exploit a client-side software vulnerability nor require users to open a suspicious file. Instead, attackers altered two configuration files on AOMEI’s distribution servers, redirecting the updater to attacker-controlled content and using the updater’s notification mechanism to execute the payload.
Victims were observed across multiple sectors and countries, including India, although the total number of affected systems remains unknown.
GTIG and Mandiant tracked the malware chain under the names CROSSROAD and SHINYROAD and attributed the activity to a cluster they call UNC7017.
Initial detection was enabled by telemetry shared from ManageEngine’s Threat Analysis Lab, which noted suspicious behavior in late May. AOMEI told Google it took corrective steps to secure its distribution infrastructure.
Hackers hijack AOMEI software updates
AOMEI’s updater relies on a file named down_html.ini to provide package versioning, checksums and download URLs. A separate file, Notifycfg.ini, controls the notification service and which local programs are launched.
During the observed tampering windows, attackers modified both files so the updater would accept and execute a malicious ZIP archive.
Researchers observed three specific tampering windows: a ten-minute period on May 28, a six-minute period on July 16, and a five-minute period on July 20. After each window the attacker-restored files were returned to their original state.
Because the attacker’s changes were temporary, later inspections of the live update server would often only see the legitimate files, complicating post-incident investigation.
This technique differs from compromises that target software build systems or release artifacts; it is more similar to incidents where attackers tamper with the delivery channel for trusted software releases, such as the Notepad++ update compromise.
Even though the malicious configuration changes were short-lived, any machine that received and executed the altered instructions could remain infected after AOMEI repaired its servers.
In July the attackers also varied their delivery infrastructure: one download was served from a public Google Cloud Storage bucket, earlier deliveries used Alibaba Cloud storage and domains designed to look associated with AOMEI. That shifting delivery topology reduces the effectiveness of simple domain-blocking defenses.
How the malware chain worked
The first-stage component, tracked as CROSSROAD, was distributed as upgrade-now.exe. That loader performed environment checks, could retrieve additional components, created a scheduled task and then removed its own executable.
The scheduled task launched a legitimate Radmin binary every three hours. The Radmin process was started in a folder containing an attacker-supplied DLL named BlkScrDl.dll, which the Radmin executable loaded at startup.
That DLL helped deploy SHINYROAD, a backdoor capable of communicating with attacker-controlled infrastructure. Later activity also involved ADAPTAGENT, a client of the Adaptix command-and-control framework, which was disguised as Nitro PDF software.
Using legitimate administration tools and recognizable product names helps make malicious processes harder to spot among normal activity.
On July 20 the attackers added another capability: they used an invisible one-pixel notification window to force an AOMEI client to request a remote file over WebDAV.
That WebDAV request could cause Windows to send NetNTLMv2 authentication data to an attacker-controlled server without presenting a visible credential prompt to the user. This is a form of credential coercion, where the victim system is induced to authenticate to a remote host.
AOMEI’s server-side fix does not remove malicious files already present on compromised systems. Organizations using AOMEI products should review endpoint and network logs for the campaign period, looking for unusual updater child processes, unexpected scheduled tasks related to Radmin or Nitro, and connections to the indicators listed below.
Investigators should also check cached copies of AOMEI configuration files and proxy or firewall logs, since the live server may now be returning legitimate settings and no longer show the earlier tampering.
The incident highlights a design weakness for update mechanisms: serving an unsigned configuration file that points to HTTPS URLs and including a checksum is not sufficient assurance that an update is authentic.
Google recommends vendors use signed configuration files, cryptographic verification of downloaded payloads, and strict allowlists of domains an updater may contact. Separating promotional or notification pop-ups from code-execution paths can also reduce the risk that a promotional feature is abused to run arbitrary code.
This case mirrors other short-lived supply-chain compromises — for example, a limited-time compromise of a LiteLLM package — and demonstrates that even brief exposure windows can leave a prolonged incident-response workload: identify affected hosts, determine what executed, and evaluate whether credentials or other access were exposed.
Indicators of compromise (IoCs)
Malicious file hashes
| File or description | SHA-256 |
|---|---|
upgrade-now.zip — May 20 CROSSROAD archive |
6670ab3f0434a42f33416f8354150b1701e7615f3cfa2f1635e54f8df0f6eec7 |
upgrade-now.exe — May 20 CROSSROAD loader |
11e576df44e9c9eef72b9f5b699291bcdb200a19130778ec231e5b0987b913ad |
upgrade-now.exe — July 16 CROSSROAD loader |
9a58e8f49edf5644e5728f74cf36f560d3d486fa51db4db69d927963c7aca450 |
upgrade-now.exe — July 20 CROSSROAD loader |
b360b6db0c2b668317edc1504a7c39ef047f0d925c8f113b521f6724c157ae21 |
upgrade-now.zip — July 20 CROSSROAD archive |
9ed503c6a9a3a493fb859401e9ed469eed77ab9927341964d6dbfbfa6255aeba |
component.zip / en.zip — SHINYROAD package |
d167bc898e856da8a4003cb4dfc7de55fea109eee3cd64fc8999710314109464 |
RuntimeComponent.dll — PocketPy engine |
8fbaa74b27dc1e89abfc694e834378746f0ad37a688098c5f8f511410157c8b8 |
BlkScrDl.dll — malicious DLL |
5837bc26a73cfb46ffd466cf889f03ce2f6a48f1f3fd42ec8be22189d51cab1e |
config.zip — Python bytecode archive |
4c0a75e0f62ddc0bb350c224fe996f3b2ab08dcb0d288231c61ffe9406c7045b |
metadata.dat — encrypted payload |
4b4d25b3501519476f9a62a88a781e4f446f669280eb5e98c6b96eb6d3743431 |
axmlx. — decoy file |
d7cfa659d224928e7b72c806dcf2169594d993ecf6422e6efcdcf251190f2e7c |
NitroPromotion.exe — ADAPTAGENT launcher |
14b31918075e6130b9123158743db0a81e2d7bfcf6d39731ee7d9200a98cd591 |
Eztwain4.dll — ADAPTAGENT helper DLL |
8c8090aca8ddb1cf968d2b810457e0cfce97c03cd721f70d2eca7f37f2681fc4 |
abe.exe — secondary payload |
7b252be444dee2fb2a57043a823dc5b5e1fae970aea91ee2c8339aa70329969d |
Other file and configuration hashes
| File or description | SHA-256 |
|---|---|
WinLpcDl.dll — legitimate Radmin component |
2d99e9d732ff9304d97c7856b052ca520ae689fec1ce86df724de741913afa4b |
WinLpcDl2.dll — legitimate Radmin component |
dad559ae9bc977783c7251591eeb7aa432b860ce821ccf10b1260fd0e650c951 |
Nitro_Scan2PDFApp.exe — legitimate signed binary |
d71a119b4950ee88dd36205176d989a64df5248ac268591d4bbb78621a73acbd |
down_html.ini — tampered July 16 |
924ad92d89dde577d5858b2ebc5703a485467842d78e98b75019b2e2e0ac3fe6 |
Notifycfg.ini — tampered July 16 |
d2f9ef2429312667f0512504b6a19ba4a9cc5514f1b2933923dd42f75a1c5934 |
Notifycfg.ini — July 20 WebDAV version |
286e0d8c7bdfaa7c251a3e8f0f2fefbe25c67586c0149d39b1095c89dc6023c8 |
down_html.ini — tampered July 20 |
f2a7d0a4c8613a9cdd31ede6131b27040c0571ca97970b245a710191806d7ac4 |
Network and host indicators
| Type | Indicator |
|---|---|
| IP address | 8.210.84.56 |
| IP address | 8.218.65.184 |
| IP address | 47.239.60.117 |
| IP address | 96.126.191.98 |
| Domain | promotion.storage-data.com |
| Domain | aomei.storage-data.com |
| Domain | storage-data.com |
| Domain | serv.oss-cn-hongkong.aliyuncs.com |
| URL | https://promotion.storage-data.com/download/abpopup/upgrade-now.zip |
| URL | https://promotion.storage-data[.]com/config/component.zip |
| URL | https://promotion.storage-data.com/config/whitelist.ini |
| URL | https://promotion.storage-data.com/config/en.zip |
| URL | https://storage.googleapis.com/aomeiupdate/upgrade-now.zip |
| URL | https://storage.googleapis.com/aomeiupdate/component.zip |
| UNC path | \8.210.84.56DavWWWRootcampaign24hour-flash-sale.html |
| Scheduled task | RadminComponentRuntime |
| Scheduled task | NitroRuntime |
| Mutex | Global{F9E6E3C0-E11A-4F85-9944-AF4AD6E05883} |
| Shared memory | Local963d3c60-d406-4ad6-aa1e-dc8e45061ccf |
| User-Agent | Anyviewer-loader/1.0 |
| User-Agent | Anyviewer-ipcheck/1.0 |
| File paths / names | %LOCALAPPDATA%Radmin; %LOCALAPPDATA%Nitro Pro; %TEMP%svc*.tmp; upgrade-now.zip; upgrade-now.exe; BlkScrDl.dll; Eztwain4.dll |
| MD5 values in tampered update settings | 31323E7E738230FA6A8DEEF2B7894666; BF73C4391B58CA95220CE3AE03F66DCF |
Note: IP addresses and domains are intentionally defanged (for example, [.]) to prevent accidental resolution or hyperlinking. Re-fang only within controlled threat-intelligence platforms such as MISP, VirusTotal, or your SIEM.
Update defenses against new malware as soon as it appears. Integrate TI Feeds with data from 16K SOCs.

