DNS Benchmark ProReal-time DoH latency analysis

Data Breach Update

Two Years Hidden in VMware Tools

By Nattapong Sukkasem · Published · Updated .

TL;DR — Russian security firm Solar 4RAYS has published its analysis of a healthcare network held by attackers for roughly two years. The intruders ran the Vasilek backdoor out of the organisation's VMware Tools directory — installed, unused, unmonitored — behind four independent command channels. Two of the four, DNSCat2 and a bespoke implant called PartisanDNS, are DNS tunnels. No CVE features anywhere, and the entry point was never established. What makes this data breach update worth your week is the arithmetic of redundancy: when an operator builds four channels, the one that survives is the protocol nobody is allowed to switch off.

Most intrusion reports describe one command-and-control channel. This data breach update describes four. Solar's investigators, called in during December 2025, found access spread across a messenger API, two separate DNS tunnels and an encrypted proxy chain, so losing any one route cost the operators nothing. That inverts how most teams reason about egress control: blocking three of four channels is not seventy-five per cent of a win. It is zero, and it pushes the attacker onto a quieter path.

The Rostelecom building on the Moskva river embankment in Moscow, parent of Solar 4RAYS, the team behind this healthcare data breach update and DNS tunneling analysis
The Rostelecom building on the Kotelnicheskaya embankment in Moscow, photographed in 2016. Solar, whose 4RAYS threat-research team published this analysis, is a Rostelecom subsidiary.

What the investigators found

The response did not begin with an alert on the affected machines. It began with scanning activity noticed coming from one of the victim's subsidiary medical institutions — a second-order signal that only surfaces when someone outside the compromised perimeter is watching.

ItemDetail
ResearchSolar 4RAYS; response began December 2025, published 21 October 2026
VictimAn unnamed Russian healthcare organisation with two-way trust relationships to subsidiary medical institutions
Attributed toPartisan Zmiy, also tracked as Cyber Partisans — Belarus-aligned, active since at least 2020
Initial accessNot established. Earliest evidence early 2024
BackdoorVasilek 1.5.8, 32-bit Windows, 59-entry command table: shell, file transfer, screenshots, keylogging, clipboard, process control
Hiding placeC:\Program Files\VMware\VMware Tools\ — installed, unused, unmonitored
Loaderauthd.exe, previously undocumented, run as a service named VMware Auth Adapter
Library swapSigned vmtools.dll replaced with an unsigned build; the original kept as vmtoolsd.dll, apparently so it could be restored
Service namesvmauad, tpvmmon, aweman32, msadcs32, uplay_r164
Anti-analysisOLLVM flattening, encrypted strings, dynamic API resolution, salted hostname check
Destructive activityNone observed — unusual for an actor that has deployed a wiper elsewhere

A directory nobody audits

The hiding place is the most instructive part of the report. VMware Tools was installed and doing nothing: a vendor name on the folder, plausible executables inside, and no owner in the security programme — nobody validating signatures, nobody alerting on new files, nobody asking why a guest agent had grown a service called VMware Auth Adapter. Its creation was duly logged as Event ID 7045, exactly where investigators later found it.

The VMware wordmark and logo, the virtualisation product whose unused VMware Tools directory concealed the Vasilek backdoor in this data breach update
VMware's wordmark. The intrusion did not exploit any VMware product — it used an installed but unused VMware Tools directory as cover for unsigned files and a fake Windows service.

Precision matters for anyone writing detections. No VMware vulnerability was exploited and nothing was sideloaded into a running vendor process. The operators wrote their own files into a trusted path, named them to resemble what was already there, altered timestamps to match, and only at the end swapped the signed vmtools.dll for an unsigned replacement. Two years of access, and the asset that mattered was never a zero-day vulnerability; it was a folder nobody had looked inside.

That is also a cloud security blind spot: virtualisation estates are inventoried at the workload level and almost never at the level of which agents sit inside each guest and whether they still do anything.

Four channels, two of them DNS

Where the report earns its place on a DNS site is the command-and-control design. Solar documented four routes out:

ChannelMechanismRole
Telegram Bot APIVasilek polls a Telegram group with getUpdates; operators post as the group, exposing no personal account. Chat ID -1002113172843Primary. Degraded, because Telegram is blocked by Russian ISPs
DNSCat2Off-the-shelf open-source DNS tunnel. Domains c0ce[.]org, p7cp[.]org, f91j[.]org, w3a01[.]netFallback remote control
PartisanDNSAn actor-built DNS implant loaded from C:\Windows\System32\msadcs32.dll, run as the msadcs32 serviceFallback, bespoke
GOST + 3proxyEncrypted tunnel and proxy chain from rpctool32.exe, inheriting the corporate proxy settings so the traffic matched everything elseOne hour every Saturday, 22:00–23:00

Look at the domains: four and five characters, meaningless, on rented server infrastructure in two of the oldest and most reputable generic top-level domains on the internet. A policy built around newly registered domains or unusual TLDs would not have touched one of them, and a manual DNS lookup returns nothing remarkable. Their only distinguishing feature is the shape of the traffic underneath — a telemetry problem, not a blocklist problem.

Why a dormant DNS tunnel defeats volumetric detection

Here is the part that should change how teams tune. Almost all published DNS-tunnelling detection assumes the tunnel is busy: high query rates to one zone, long or high-entropy labels, elevated TXT and NULL ratios, sustained NXDOMAIN volume. They work because exfiltration over DNS is slow, so moving real data means moving a lot of it.

A backup channel has the opposite profile by design. DNSCat2 and PartisanDNS were not carrying a database out of this network — Telegram and the proxy chain were doing the work. They existed to be there when the others were not, so their expected traffic is a heartbeat: a few lookups, occasionally, to a domain that resolves normally. Every volumetric threshold in the stack is tuned to ignore exactly that.

Volumetric reasoning is correct for a DDoS attack, where the volume is the signal. It inverts for a channel built to stay under the volume at which anyone looks. The detectable property is not magnitude but persistence: one host asking for one unremarkable domain, in small amounts, across months. That needs resolver logs that exist, are attributable to a host, and are retained long enough to span the behaviour. Two years is longer than most organisations keep DNS telemetry.

One caveat, increasingly relevant: this only holds where the endpoint actually uses your resolver. A host resolving over DNS over HTTPS to an external provider takes its queries out of your logs entirely, and a tunnel on it goes invisible. DoH is good for users on hostile networks and bad for this detection at the same time.

A ward building at the Botkin Hospital in Moscow, representative of the Russian healthcare sector targeted in this data breach update
A ward building at the Botkin Hospital in Moscow, photographed in April 2025. This is a representative image of the Russian hospital sector — the organisation in Solar's report was not named and is not pictured here.

The trust graph is the blast radius

Solar's explanation for the absence of destruction is explicitly a hypothesis: the access was likely worth more intact, for espionage and for onward attacks through the victim's trusted relationships. That reframes what was breached. The valuable asset was not the hosts but the organisation's position as a hub holding bidirectional trust into subsidiary medical institutions. Machines touched is the wrong measure of damage; organisations reachable through them is the right one.

In most federated estates that trust lives in plumbing an administrator set up years ago and has not revisited: forest and domain trusts, conditional forwarders and stub zones pointing at a partner's name servers, links kept open for a shared clinical application. Those forwarders are both the map and the road — they name the other organisations and their internal namespaces, and they are already permitted, so using them raises nothing. A group that cannot list every conditional forwarder and trust its directory holds does not know the size of its own blast radius.

What IT security teams should do this week

  1. Inventory installed-but-unused agents. Anything with a vendor directory and no owner is a candidate.
  2. Verify signatures inside trusted software directories. An unsigned DLL in a vendor path is the low-noise signal that would have fired here.
  3. Alert on Event ID 7045 for services launching from application directories. Legitimate services rarely start from a guest-agent folder.
  4. Re-tune DNS detection for persistence, not volume, and confirm retention actually spans months.
  5. Enumerate conditional forwarders, stub zones and directory trusts, and reconcile each against a current business reason — the IT security task with the best effort-to-risk ratio here.
  6. Confirm which resolver your managed endpoints really use, not which one policy says they should. Benchmarking from the endpoint settles it.
  7. Re-open old antivirus hits. Detections for Vasilek and GOST already existed here. Alerts deployed but never investigated are how a two-year intrusion stays one.
DNS Benchmark Pro results ranking public resolvers by DNS server performance for teams enforcing query logging and resolver policy
Resolver rankings by DNS server performance. A logging resolver is only a control while it is fast enough that nobody on the network goes looking for a way around it.
Network latency comparison across public DNS resolvers, a network diagnostic tool for confirming which resolver a managed endpoint really uses
Per-resolver network latency distribution. A resolver benchmark is the fastest network diagnostic tool for establishing which resolver an endpoint is genuinely talking to before you rely on its logs.

Industry impact

Read alongside the rest of this month, this data breach update completes a pair. Two weeks ago a credential-stealing campaign in GitHub Actions posted everything it took to a hard-coded address, so the exfiltration generated no DNS query at all. Here the opposite holds: two of four channels are nothing but DNS. Resolution is a checkpoint attackers decide about deliberately, and the decision goes both ways. Smash-and-grab skips it; multi-year espionage builds on it, because DNS is the egress path still working once the firewall rules are tightened and the messenger apps blocked.

What organisations can plan around is duller. There was no exploit, no CVE and no new technique; the intrusion needed several ordinary controls absent in one place at once — signature checking in application directories, service-creation review, long-horizon DNS baselining, and an accurate map of inter-organisational trust. The useful reading of this data breach update is that dwell time measured in years is rarely one spectacular failure. It is four boring gaps that overlapped, and the one open longest was the resolver that answered every question and kept no record worth reading.

Sources

Related articles

Browse every DNS news article by month →

DNS angle

Review resolver logs for the systems discussed above and compare unexpected names with your approved services. A successful lookup does not establish that a destination is safe. Use the DNS lookup tool to inspect current answers, then compare them with your own resolver and incident records.

Source: Cyber Security News — Hackers Hide Vasilek Backdoor Inside VMware Tools to Target Medical Organizations ().