Skip to main content
March 5, 2026

When “update” becomes the attack: what the Notepad++ incident teaches IT

  • Last updated 03/05/2026
  • View Author Bio
    Jeff Ulatoski
    Director of Product Management, Omnissa

    Jeff Ulatoski leads the product team at Omnissa driving the Apps Everywhere vision and strategy. He directs the development of the App Volumes, Dynamic Environment Manager, and ThinApp products, with a focus on delivering Apps on Demand to meet the evolving needs of modern enterprises. With over 25 years of experience in IT and software development, Jeff has extensive expertise in large-scale enterprise software deployments, business process analysis, and end-user computing systems. His leadership ensures that Omnissa’s solutions are innovative, scalable, and aligned with the future of app virtualization and management.

Most IT teams treat “keep apps up to date” as basic hygiene. The Notepad++ updater incident is a reminder that the updater itself can become the delivery vehicle for vulnerabilities—especially when endpoints pull updates directly from the internet outside your control plane. 

This isn’t just about one tool. It’s about Windows—and the machinery we’ve built around it over the years: packaging, testing, approvals, change windows, help desks, and incident response. When that machinery is slow, “control” turns into “damage control.” 

The takeaway isn’t, “patch faster”. It’s, own the distribution path—and make rollback easy. 

What happened (in plain terms)

Public reporting and vendor research describe a targeted campaign where some victims were selectively redirected from legitimate Notepad++ update traffic to attacker-controlled infrastructure and served tampered update content. 

National Institute of Standards and Technology (NIST) tracks the core issue as CVE-2025-15556: Notepad++ versions prior to 8.8.9, when using the WinGUp updater, did not adequately validate signatures in a way that could allow an attacker who can intercept/redirect update traffic to deliver an attacker-controlled installer. 

Why you should care (even if you don’t run Notepad++)

This pattern shows up everywhere: 

  • In-app updaters bypass governance: they skip your packaging standards, rings, change windows, and approvals.
  • “Version compliant” ≠ “delivered through a trusted path.”
  • Blast radius is shaped by how easily an app can update itself across your estate. 

Do we allow apps to self-update from the internet, or do we treat apps like governed enterprise artifacts? 

A safer model: Governed distribution + reversible change

If you want fewer “surprise updates,” you need two properties: 

  1. Governed distribution: updates come from your pipeline (not the app’s updater at runtime).
  2. Reversible change: you can revert quickly to a known-good version without uninstall/reinstall gymnastics. 

That’s the model modern IT wants—but many Windows estates struggle to achieve it because the surrounding process is slow: testing cycles, approvals, and the sheer number of hands in the chain. 

How this looks with App Volumes

Here’s a practical way to think about governed rollout with App Volumes. 

1) Updates don’t come from the app’s updater 

Apps are delivered as managed packages. Updates happen when IT publishes a new package—not when an endpoint reaches out to the internet at runtime. 

Two implications: 

  • You cut off a major class of risk: endpoints aren’t trusting upstream update paths on-demand.
  • If apps are delivered on demand (instead of being permanently present everywhere), your blast radius naturally shrinks to where apps are actually used—not where they happen to be installed. 

2) Package stages make lifecycle intent explicit 

Instead of treating releases as one big event, stages represent intent and state: 

  • New: captured, not yet validated
  • Tested: validated in a controlled environment
  • Published: approved for production use
  • Retired: kept for rollback/history, not active 

3) A “Current” marker communicates what’s live 

Stages tell you where a package is in its lifecycle. A marker tells you what users should get. 

A “Current” marker becomes a simple abstraction: 

  • Current = the version users should get by default
  • Roll forward = move Current to the newer Published package
  • Roll back = move Current back to the prior known-good package 

This matters in incidents because the fastest safe response is rarely “repackage everything.” It’s flip the estate back to known-good for a specific app while you investigate. 

DEM last-mile guardrails: Block risky execution paths

Even with governed packaging, you still want a safety net at execution time—especially for higher-risk populations (admins, privileged workstations, dev desktops). 

Dynamic Environment Manager (DEM) can add practical guardrails, for example: 

  • Block execution from temp-like locations where updater droppers often land
  • Allow by publisher / allow by hash for critical apps so only known-good binaries can run
  • Apply conditionally to reduce disruption 

Guardrails won’t fix a bad update by themselves—but they can reduce the success rate of update-path abuse. For higher assurance, you’d pair this with OS-level application control like WDAC or AppLocker. 

What I’d tell IT teams to do this week

  1. Inventory: where is the app used, who can install/update it, and is auto-update enabled?
  2. Block in-app updaters where feasible: standardize on managed delivery.
  3. Prove rollback: demonstrate you can revert an app version quickly across a pilot group.
  4. Add execution guardrails: focus on updater-like behaviors and risky paths.
  5. Institutionalize the model: apps are governed artifacts with a reversible change path—not ad-hoc internet downloads. 

One takeaway: Your real control isn’t “patch faster.” It’s own the distribution path—and have rollback. 

Where Apps Essentials fits

This is the scenario for Apps Essentials (App Volumes + DEM + ThinApp): apps as governed artifacts (not internet updaters), stage changes safely, and keep rollback fast—especially across Windows estates with a lot of legacy process around updates. 

Learn more:

Back to insights

You are now being redirected to an external domain. This is a temporary redirect while we build our new infrastructure and rebrand our legacy content.

This message will disappear in 10 seconds

CONTINUE