In mid-January 2026, Microsoft identified a campaign by Storm-2561 (active since May 2025) targeting users seeking legitimate enterprise VPN software. The actor uses SEO poisoning to drive traffic to spoofed websites that distribute a variant of the Hyrax infostealer. The campaign is notable for its use of revoked digital certificates and a sophisticated redirection strategy to avoid post-infection detection.
Severity: High
Threat Actor
- Actor Name: Storm-2561.
- Motivation: Financial.
- Operational History: Active since May 2025; known for SEO poisoning and vendor impersonation.
- Targeting: Users searching for enterprise software, specifically VPN clients.
Technical Analysis: The Attack Chain
The “search-to-stolen-credentials” chain follows these primary stages:
- Initial Access: Users searching for terms like “Pulse VPN download” are directed via poisoned search results to actor-controlled domains such as vpn-fortinet[.]com or ivanti-vpn[.]org.
- Delivery: Clicking “Download” triggers a ZIP file download hosted on GitHub (e.g., VPN-CLIENT.zip).
- Execution: The ZIP contains a malicious MSI that side-loads two DLLs – dwmapi.dll and inspector.dll, into a legitimate-looking directory %CommonFiles%\Pulse Secure.
- Payload: dwmapi.dll acts as a loader for Hyrax, an infostealer that harvests VPN configuration data and user credentials.
- Persistence: The installer adds pulse.exe to the Windows RunOnce registry key to ensure execution upon device reboot.
- Exfiltration: Data is transmitted to C2 infrastructure (194.76.226[.]93:8080) via HTTP POST requests.
Key Evasion & Legitimacy Tactics
- Code Signing: Malicious binaries were signed by “Taiyuan Lihua Near Information Technology Co., Ltd.” to bypass security warnings.
- Path Masquerading: Malware is installed in directories mirroring real Pulse Secure installations to blend in with trusted software.
- Social Engineering Redirection: After stealing credentials, the app displays a fake error message and redirects the user to the official VPN website to download the real client. If the real client then works, the user often assumes the initial failure was a minor technical glitch.
Recommendations
- Ensure employees download VPN clients only from official vendor websites or internal software portals.
- Block downloads of software installers from untrusted sources such as public GitHub repositories or unknown domains.
- Implement application allowlisting so only approved software can run.
- Enforce Multi-Factor Authentication (MFA) for all VPN and enterprise accounts.
- Use conditional access policies to restrict VPN logins from unknown devices or locations.
- Monitor for VPN authentication attempts from unusual geographies or impossible travel patterns.
- Use browser protections such as Microsoft SmartScreen or equivalent safe browsing tools.
- Look for unexpected DLL loading within VPN software folders. Monitor for suspicious files such as Pulse.exe, dwmapi.dll, or inspector.dll appearing in %CommonFiles%\Pulse Secure or similar enterprise VPN software directories.
- Monitor the Windows RunOnce registry key for unauthorized additions, as this is a primary persistence mechanism for the pulse.exe malware.
- Disable browser password storage for corporate credentials. Prevent syncing enterprise credentials to personal accounts. Use enterprise password managers instead of browser storage.
- Block the IOCs at their respective controls
https://www.virustotal.com/gui/collection/f120925a350a7875dd8a3ba2b406881dbe29f1b0afc88fdd21a6d4387f1361f9/iocs
IOCs:
| SHA-256: | 57a50a1c04254df3db638e75a64d5dd3b0d6a460829192277e252dc0c157a62f |
| SHA-256: | 862f004679d3b142d9d2c729e78df716aeeda0c7a87a11324742a5a8eda9b557 |
| SHA-256: | 6c9ab17a4aff2cdf408815ec120718f19f1a31c13fc5889167065d448a40dfe6 |
| SHA-256: | 6129d717e4e3a6fb4681463e421a5603b640bc6173fb7ba45a41a881c79415ca |
| SHA-256: | 85c4837e3337165d24c6690ca63a3274dfaaa03b2ddaca7f1d18b3b169c6aac1 |
| SHA-256: | 98f21b8fa426fc79aa82e28669faac9a9c7fce9b49d75bbec7b60167e21963c9 |
| SHA-256: | cfa4781ebfa5a8d68b233efb723dbde434ca70b2f76ff28127ecf13753bfe011 |
| SHA-256: | 26db3fd959f12a61d19d102c1a0fb5ee7ae3661fa2b301135cdb686298989179 |
| SHA-256: | 44906752f500b61d436411a121cab8d88edf614e1140a2d01474bd587a8d7ba8 |
| SHA-256: | eb8b81277c80eeb3c094d0a168533b07366e759a8671af8bfbe12d8bc87650c9 |
| SHA-256: | 8ebe082a4b52ad737f7ed33ccc61024c9f020fd085c7985e9c90dc2008a15adc |
| IP: | 194.76.226[.]93 |
| Domain: | checkpoint-vpn[.]com |
| Domain: | cisco-secure-client[.]es |
| Domain: | forticlient-for-mac[.]com |
| Domain: | forticlient-vpn[.]de |
| Domain: | forticlient-vpn[.]fr |
| Domain: | forticlient-vpn[.]it |
| Domain: | forticlient[.]ca |
| Domain: | forticlient.co[.]uk |
| Domain: | forticlient[.]no |
| Domain: | fortinet-vpn[.]com |
| Domain: | ivanti-vpn[.]org |
| Domain: | ivanti-secure-access[.]de |
| Domain: | ivanti-pulsesecure[.]com |
| Domain: | sonicwall-netextender[.]nl |
| Domain: | sophos-connect[.]org |
| Domain: | vpn-fortinet[.]com |
| Domain: | watchguard-vpn[.]com |
| Domain: | vpn-connection[.]pro |
| Domain: | myconnection[.]pro |
| URL: | hxxps://github[.]com/latestver/vpn/releases/download/vpn-client2/VPN-CLIENT.zip |
Source:
- https://www.microsoft.com/en-us/security/blog/2026/03/12/storm-2561-uses-seo-poisoning-to-distribute-fake-vpn-clients-for-credential-theft/
Enjoyed reading this Threat Intelligence Advisory? Stay updated with our latest exclusive content by following us on Twitter and LinkedIn
No related posts found.