New PureLogs Variant Uses MsBuild.exe Process Hollowing to Steal Windows Data


A new PureLogs phishing campaign is using malicious JavaScript, hidden PowerShell execution, and process hollowing through MsBuild.exe to steal sensitive data from Windows systems. The campaign starts with purchase-order-themed emails that try to convince victims to open a RAR archive containing an obfuscated JavaScript file.

Fortinet’s FortiGuard Labs analysis says the attack chain drops a PowerShell script, loads .NET modules in memory, hollows a legitimate MsBuild.exe process, and then runs a PureLogs plugin that collects credentials, browser data, cryptocurrency wallet files, and other information.

The campaign matters because it uses trusted Windows and .NET components to make detection harder. Instead of running the final payload as a clear standalone executable, the malware injects it into a legitimate process that many development and enterprise environments already allow.

How the PureLogs Attack Starts

The attack begins with a fake purchase order email. Fortinet observed an attached archive named PO 2026-P0803.rar, which carried a malicious JavaScript file called kpankocrs.js.

When the victim opens the script, it decrypts PowerShell code and writes it to a randomly named .ps1 file in the C:\Temp folder. The script then runs PowerShell with flags that bypass execution policy, hide the window, and avoid loading a user profile.

From there, the PowerShell stage decodes and decrypts more content. It loads .NET modules directly in memory, which helps the campaign reduce obvious files on disk and avoid simpler signature-based detection.

PureLogs Infection Chain at a Glance

StageWhat HappensWhy It Matters
Phishing emailThe victim receives a fake purchase order message with a RAR attachment.Business-themed lures increase the chance that employees will open the file.
JavaScript executionThe archive contains an obfuscated JavaScript file.The script starts the malware chain through Windows scripting components.
PowerShell stageThe script drops and executes an encrypted PowerShell file.The attack moves into memory-based execution.
.NET loaderThe PowerShell stage loads .NET modules in memory.The payload avoids a simple file-on-disk execution path.
Process hollowingThe malware injects code into MsBuild.exe.The final payload runs inside a trusted Windows process.
Data theftPureLogs steals browser, crypto wallet, app, and system data.Attackers can use the stolen data for account takeover and fraud.

Why MsBuild.exe Is Useful to Attackers

MsBuild.exe is a legitimate Microsoft build tool. The Microsoft MSBuild documentation describes the Microsoft Build Engine as a platform for building applications, and notes that Visual Studio uses MSBuild while MSBuild can also run without Visual Studio.

That legitimacy makes MsBuild.exe attractive for abuse. If defenders do not monitor how it starts, what launches it, and what network activity follows, malicious code can hide behind a process name that looks normal at first glance.

In this campaign, the loader uses the hardcoded path C:\Windows\Microsoft.NET\Framework\v4.0.30319\MsBuild.exe as the hollowed process. Fortinet reported that the PowerShell stage invokes .NET code that creates a suspended MsBuild.exe process and injects the next module into it.

How Process Hollowing Helps PureLogs Evade Detection

Process hollowing is a form of process injection. An attacker starts a legitimate process in a suspended state, removes or replaces parts of its memory, writes malicious code into that process, and then resumes execution.

MITRE ATT&CK describes process hollowing as a technique where attackers inject code into suspended and hollowed processes to evade process-based defenses. Fortinet saw APIs associated with this pattern, including CreateProcessA, ZwUnmapViewOfSection, WriteProcessMemory, SetThreadContext, and ResumeThread.

The result is a deceptive process tree. Security tools and analysts may see MsBuild.exe running, but the code inside that process no longer matches normal build activity.

What PureLogs Steals

PureLogs is a .NET-based information stealer. Once loaded by the downloader module, it collects system details and sensitive application data before compressing, encrypting, and sending the results to the command-and-control server.

The malware captures a screenshot, antivirus product details, operating system information, processor details, username, screen resolution, memory size, clipboard data, and the current date and time. It also targets browsers, messaging apps, crypto wallets, email clients, FTP tools, and VPN clients.

Target CategoryExamples of Data or Apps Targeted
BrowsersSaved logins, cookies, history, autofill data, payment data, and session tokens
Cryptocurrency walletsWallet files, private keys, cached sessions, wallet databases, and transaction-related data
Email clientsMicrosoft Outlook, Foxmail, MailBird, and MailMaster credentials
File transfer toolsFileZilla credentials and configuration data
VPN clientsOpenVPN and ProtonVPN data
System dataScreenshot, OS version, username, clipboard, installed security software, and hardware details

Encrypted C2 Traffic Makes Analysis Harder

The downloader contacts a command-and-control server and asks for plugin modules. Fortinet observed requests to a server at 77[.]83[.]39[.]211 over port 8443.

The malware sends a GET request to /ping and then posts encrypted data to /plugin to retrieve the PureLogs module. The collected data later travels through endpoints such as /userinfo, /browser, /discord, /crypto, and /application.

The FortiGuard Labs report says the plugin module is protected with commercial .NET obfuscation tools such as .NET Reactor or IntelliLock. That protection makes reverse engineering harder and slows down security analysis.

Key Indicators From the Campaign

TypeIndicatorContext
Filekpankocrs.jsObfuscated JavaScript file in the phishing attachment
Fileps_qnSEGUkU0LIY_1777592585573.ps1Dropped PowerShell stage
FilezgSGkYYzqVe.dllPureLogs plugin module
ProcessMsBuild.exeLegitimate process hollowed by the malware
C277[.]83[.]39[.]211:8443Command-and-control server observed by Fortinet
TechniqueProcess hollowingMemory injection used to run the payload inside MsBuild.exe

Why This Campaign Is Harder to Spot

The PureLogs chain combines several evasion layers. The phishing file is obfuscated, the PowerShell stage is encrypted and decoded at runtime, the .NET loader runs in memory, and the final payload executes from a hollowed trusted process.

POST packet with encrypted user info (Source – Fortinet)

The campaign also blends into common enterprise noise. Purchase orders are normal business documents, PowerShell exists on Windows endpoints, and MsBuild.exe may appear legitimate on developer machines or systems with .NET tooling.

MITRE ATT&CK’s process hollowing entry explains why this approach can evade process-based defenses: malicious code runs inside the address space of another live process. That means defenders need memory, parent-child process, and behavior-based telemetry, not only file names.

Detection Ideas for Security Teams

  • Block or quarantine JavaScript files inside email attachments and compressed archives.
  • Watch for wscript.exe launching PowerShell with hidden windows or execution policy bypass flags.
  • Alert when PowerShell loads .NET assemblies in memory from suspicious scripts.
  • Monitor MsBuild.exe when it starts without normal build arguments or from unusual parent processes.
  • Investigate MsBuild.exe making outbound HTTPS connections to unknown servers.
  • Detect process hollowing patterns involving suspended processes and memory writes.
  • Search for the observed C2 endpoints and PureLogs-related file names in endpoint logs.

Microsoft’s MSBuild documentation makes clear that msbuild.exe has a legitimate development purpose. That is why organizations should avoid blindly blocking it everywhere and instead apply context-aware controls based on parent process, command line, location, and network behavior.

Developer systems may need MsBuild.exe, but finance, HR, and general office endpoints often do not. Limiting where MsBuild.exe can run can reduce the attack surface without disrupting all users.

How Organizations Can Reduce the Risk

Security teams should focus first on the delivery vector. Purchase-order-themed phishing works because it blends into everyday business communication, so email security controls and employee reporting workflows matter.

Organizations should also harden Windows scripting. If users do not need JavaScript execution through Windows Script Host, administrators can restrict wscript.exe and cscript.exe through application control tools. PowerShell logging, constrained language mode, and script block logging can help reveal later stages.

Displaying the sensitive data collected from the Microsoft Edge browser (Source – Fortinet)

Endpoint tools should treat MsBuild.exe as a process that needs monitoring, not automatic trust. Process hollowing through a legitimate tool can hide malware, but the surrounding behavior still leaves useful clues.

Why PureLogs Remains a Serious Threat

PureLogs is dangerous because it targets data that attackers can monetize quickly. Browser cookies and session tokens can help bypass passwords. Crypto wallet files can lead directly to financial theft. VPN and email credentials can support deeper compromise inside a company.

Commodity stealers also spread quickly because many actors can buy, rent, or modify them. That creates more campaigns, more delivery themes, and more chances for a single employee click to turn into a broader incident.

The uploaded campaign summary also highlights the same chain: phishing, obfuscated JavaScript, PowerShell, in-memory .NET loading, MsBuild.exe process hollowing, and PureLogs data theft across browsers, wallets, email clients, FTP tools, and VPN clients. :contentReference[oaicite:0]{index=0}

FAQ

What is the new PureLogs campaign?

The new PureLogs campaign is a phishing attack that uses purchase-order-themed emails, an obfuscated JavaScript attachment, hidden PowerShell execution, in-memory .NET loaders, and MsBuild.exe process hollowing to deploy an information stealer on Windows systems.

Why does PureLogs use MsBuild.exe?

PureLogs uses MsBuild.exe because it is a legitimate Microsoft build tool. By injecting malware into MsBuild.exe through process hollowing, the payload can hide inside a trusted process and make detection harder.

What data can PureLogs steal?

PureLogs can steal browser credentials, cookies, session tokens, autofill data, payment information, cryptocurrency wallet files, email client credentials, FTP credentials, VPN data, screenshots, clipboard content, and system details.

What is process hollowing?

Process hollowing is a technique where malware starts a legitimate process in a suspended state, replaces memory inside that process with malicious code, and then resumes execution so the malware runs under the trusted process name.

How can organizations detect this PureLogs variant?

Organizations can monitor for JavaScript attachments, wscript.exe launching hidden PowerShell, PowerShell loading .NET assemblies in memory, MsBuild.exe spawned by unusual parent processes, MsBuild.exe network connections, and process hollowing behavior involving suspended processes and memory writes.

How can companies reduce the PureLogs risk?

Companies can block JavaScript attachments, inspect compressed archives, restrict Windows Script Host where possible, enable PowerShell logging, apply application control to MsBuild.exe, train users on purchase-order phishing, and monitor outbound traffic from unusual processes.

Readers help support VPNCentral. We may get a commission if you buy through our links. Tooltip Icon

Read our disclosure page to find out how can you help VPNCentral sustain the editorial team Read more

User forum

0 messages