On February 2, 2026, the developers of Notepad++ revealed that its update infrastructure was compromised in a sophisticated supply chain attack lasting from June to December 2025. Security researchers attribute the operation with high confidence to Lotus Blossom (also known as Billbug), a Chinese state-sponsored threat actor. The attackers compromised a shared hosting server, allowing them to intercept and redirect update requests from the Notepad++ client. This enabled the selective delivery of malicious payloads to a small, targeted set of victims, primarily for espionage purposes. The campaign utilized a previously undocumented backdoor called 'Chrysalis' and leveraged complex execution chains involving legitimate but vulnerable software to deploy payloads like Cobalt Strike.
The attack did not compromise the Notepad++ source code but instead targeted the distribution mechanism. By gaining control of the hosting server, Lotus Blossom could manipulate the update process. When a targeted user's Notepad++ instance checked for updates via the GUP.exe utility, the request was redirected to an attacker-controlled server. This server then delivered a malicious update.exe file instead of the legitimate update. The campaign was highly targeted, with victims identified in the Philippines, Vietnam, El Salvador, and Australia. Affected organizations included a government entity and a financial institution, underscoring the espionage focus of the operation. The breach was first detected and stopped on December 2, 2025, but the attackers demonstrated persistence by retaining access to some internal services even after their initial server access was revoked in September 2025.
The attack chain showcases the actor's sophistication and ability to adapt. Forensic analysis by Rapid7 indicates that the legitimate execution of notepad++.exe and GUP.exe was followed by the execution of the malicious update.exe downloaded from an attacker-controlled IP address. This led to the deployment of the 'Chrysalis' backdoor.
Researchers at Kaspersky observed multiple, distinct execution chains, indicating the attackers rotated their TTPs to evade detection:
T1195.002 - Compromise Software Supply Chain: The core of the attack involved compromising the Notepad++ update distribution infrastructure.T1588.002 - Tool: The attackers acquired and used tools like Cobalt Strike and Metasploit.T1071.001 - Web Protocols: Used for command and control (C2) communications and downloading malicious payloads.T1204.002 - Malicious File: The malicious update.exe was presented to the user as a legitimate update, requiring execution.T1574.002 - DLL Side-Loading: A vulnerable version of 'ProShow' was exploited to load a malicious DLL.T1105 - Ingress Tool Transfer: Payloads were downloaded from attacker-controlled servers.T1027 - Obfuscated Files or Information: The final payload was decrypted before execution.The primary impact of this campaign was espionage against targeted government and financial organizations. For the affected entities, the breach could lead to the loss of sensitive state or commercial secrets, intellectual property, and internal financial data. Although the number of victims was small, the impact on them is severe. For the wider user base of Notepad++, the incident erodes trust in the software's update mechanism and highlights the significant risks associated with software supply chains, even for popular open-source projects. Organizations that use Notepad++ must now consider the possibility of compromise and perform forensic analysis if they match the victim profile.
| Type | Value | Description |
|---|---|---|
| Process Name | update.exe |
Suspicious update process executed from a temporary or user-writable directory, not the standard Notepad++ program folder. |
| Network Traffic Pattern | Outbound connections from GUP.exe or notepad++.exe to non-official Notepad++ domains. |
Monitor for connections to unusual IP addresses or domains during the update check process. |
| File Path | %TEMP%\update.exe |
A common location for downloaded malicious updaters. |
| Process Chain | GUP.exe -> cmd.exe -> update.exe |
Unusual process creation chain originating from the Notepad++ updater. |
Security teams should proactively hunt for signs of this activity.
notepad++.exe or GUP.exe to suspicious or known malicious IP addresses between June and December 2025. Correlate this with process execution logs (e.g., Windows Event ID 4688) on those endpoints.GUP.exe spawns unexpected child processes like cmd.exe or powershell.exe, or writes an update.exe file to a temporary directory.ProShow software in unexpected locations, as this was used as part of an execution chain.D3-NTA - Network Traffic Analysis to baseline normal update traffic and detect anomalies. Use D3-FA - File Analysis to inspect downloaded update packages for malicious characteristics before execution.This attack highlights the importance of defense-in-depth, as compromising a single server led to a significant breach.
Immediate Actions:
Strategic Recommendations:
update.exe from running. This relates to D3FEND's D3-EAL - Executable Allowlisting.D3-OTF - Outbound Traffic Filtering.Use application control policies to prevent the execution of unauthorized updaters like the malicious 'update.exe'.
Mapped D3FEND Techniques:
Implement strict egress filtering to block outbound connections to unknown C2 servers, preventing payload delivery and data exfiltration.
Enable detailed process and network logging to detect anomalous behavior from legitimate applications like GUP.exe.
Mapped D3FEND Techniques:
While the code itself wasn't compromised, enforcing that all executables must be signed by trusted publishers can help mitigate the execution of unsigned malicious files.
Implement Network Traffic Analysis (NTA) solutions to monitor outbound connections from all endpoints, with a specific focus on traffic originating from software update utilities like Notepad++'s GUP.exe. Establish a baseline of normal update behavior, including destination domains (e.g., notepad-plus-plus.org) and typical data volumes. Configure alerts for any deviation from this baseline, such as connections to newly observed domains, IP addresses with poor reputation, or traffic patterns indicative of C2 communication. This technique is critical for detecting the initial redirection of the update request, which was the pivotal point in this supply chain attack. By flagging the anomalous connection before the malicious payload is downloaded, security teams can intervene early in the kill chain.
Deploy a robust application allowlisting policy, such as Windows Defender Application Control (WDAC), across all endpoints, especially servers and workstations handling sensitive data. In the context of this attack, a properly configured allowlisting rule would have prevented the malicious update.exe from executing, as it would be an unsigned or improperly signed binary originating from an untrusted location (e.g., a temporary user folder). The policy should enforce that only digitally signed executables from trusted publishers are allowed to run. This moves beyond simple hash-based allowlisting and provides a resilient defense against attackers dropping novel malicious files onto a system, effectively breaking the execution chain after the malicious download.

Cybersecurity professional with over 10 years of specialized experience in security operations, threat intelligence, incident response, and security automation. Expertise spans SOAR/XSOAR orchestration, threat intelligence platforms, SIEM/UEBA analytics, and building cyber fusion centers. Background includes technical enablement, solution architecture for enterprise and government clients, and implementing security automation workflows across IR, TIP, and SOC use cases.
Help others stay informed about cybersecurity threats