CTIPilot
AI-generated · no human review · verify critical claims against the linked source. how it works →

StyleSmuggler

trend · trend:stylesmuggler-magento-adobe-commerce-2026-09

Sansec's name for an unauthenticated RCE chain in Magento/Adobe Commerce (CVE-2026-75650, CVSS 10.0) that poisons a Magento-rendered log or report file with template code and detonates it via the platform's own failed-payment notification email; exploited in the wild from 2026-09-04, patched by Adobe on 2026-09-07 (Sansec, 2026-09-05).

Aliases: CVE-2026-75650 Magento/Adobe Commerce zero-day

Coverage
3
2 about it · 1 mention · first 2026-09-08 → last 2026-10-20
Latest activity
2026-10-20
Two exploited NetScaler zero-days: one in default configuration, one on by default on VPN servers; no…
Peak priority
critical
2 critical
Targets
public-sector
sectors: public-sector, retail · regions: europe, switzerland
Sources cited
39
29 hosts

Action items (6)

Do-now tasks recorded on the entries about StyleSmuggler, newest first. Check the date before acting on an older one.

  • Immediate action: Citrix confirms CVE-2026-88771 and CVE-2026-88772 are being exploited against unmitigated NetScaler ADC and NetScaler Gateway appliances right now, and Google's Mandiant reports exploitation since at least early September. CVE-2026-88771 requires no configuration at all: every default deployment is reachable by an unauthenticated attacker; CVE-2026-88772 is reachable wherever DTLS is enabled, which Citrix states is the default on any VPN virtual server. Citrix lists no workaround, and Mandiant's interim network controls (disable DTLS where it is not needed, block inbound UDP/443 upstream) cover CVE-2026-88772 only. Capture forensic evidence (logs, an instance snapshot where the appliance is virtual, a support bundle, a core dump) from each exposed appliance before patching, since the upgrade itself can destroy evidence of prior compromise, then upgrade to 14.1-73.37+ or 13.1-64.23+ (run show ns variable first on 13.1; if it returns any variables, install 13.1-64.24 instead to avoid a known reboot loop), going straight to 14.1-73.41+ or 13.1-64.28+ where the appliance is configured as a SAML service provider or identity provider (CVE-2026-88779), and to 14.1-73.46+ or 13.1-64.29+ where it is an identity provider (CVE-2026-107406), and run a compromise assessment on every appliance that was internet-facing.
    2026-09-28CVE-2026-88771 +7
  • Upgrade every internet-facing NetScaler ADC/Gateway to 14.1-73.37+ (14.1-FIPS 14.1-73.37 FIPS+) or 13.1-64.23+ (13.1-FIPS/NDcPP 13.1-37.279+) now (a SAML-configured appliance needs the later builds named for CVE-2026-88779, and an identity provider 14.1-73.46 or 13.1-64.29); on a 13.1-branch appliance run show ns variable first; if it returns any variables, install 13.1-64.24 instead to avoid a known reboot loop. Capture logs, an instance snapshot where the appliance is virtual, a support bundle and a core dump from each exposed appliance BEFORE patching, since the upgrade can remove forensic evidence of prior exploitation.
    2026-09-28CVE-2026-88771 +7
  • Run Mandiant's compromise checks, extended by the Unit 42 artifacts described in the update below, Zscaler's (appliance-initiated downloads to unfamiliar addresses, an unexpected executable under /var, a Perl CGI handler added to the web server configuration) and Rapid7's (the setuid bit on /bin/sh, nsaaad crashes followed by Pitboss reboots, an outbound agent polling an external endpoint every 15 seconds), on every NetScaler that was internet-facing and unpatched at any time since early September, patched or not; isolate any hit, check both nodes of an HA pair, halt HA configuration sync until both nodes are validated, and rotate the LDAP and RADIUS bind credentials, SSL private keys and key-encryption material held in the configuration, since Rapid7 saw the configuration and backups staged and exfiltrated.
    2026-09-28CVE-2026-88771 +7
  • Find any NetScaler ADC or Gateway still on the end-of-life 12.1 or 13.0 branches and decide isolation or replacement now: they receive no security updates and Citrix has not said whether they are affected.
    2026-09-28CVE-2026-88771 +7
  • Immediate action: Apply Adobe's VULN-39341 hotfix (APSB26-146) to every Adobe Commerce, Adobe Commerce B2B and Magento Open Source instance today, regardless of patch level, a fully patched 2.4.6-p15 store was compromised before the hotfix existed, and moving session storage to Redis or a database does not stop the attack. Where the hotfix cannot be applied immediately, Sansec's own interim advice for stores not running its Shield product is to temporarily disable GraphQL, since the observed chain arrives via a POST /graphql request; note this breaks headless and progressive-web-app storefronts, which depend on GraphQL, though most classic and Hyvä storefronts do not. Before assuming a store is clean, hunt for a background process masquerading as a kernel worker thread, fc-cache or chronyd, and for a cron entry written directly into the spool file rather than through the crontab command (an empty crontab -l is not evidence of a clean host). Where an implant is found, rotate the store's encryption key and every credential it protects (admin passwords, REST/SOAP/GraphQL tokens, OAuth secrets, payment-gateway API credentials, database and SSH/deploy keys) at the source system, since rotating the encryption key alone does not invalidate anything already read.
    2026-09-08CVE-2026-75650
1 older action item
  • Patch every Adobe Commerce, Adobe Commerce B2B and Magento Open Source instance to the VULN-39341 hotfix now, then hunt for a masquerading background process (kernel-worker-style name, fc-cache, or chronyd) and a cron entry written directly to the spool file before concluding the store is clean; rotate the encryption key and every credential it protects if either is found.
    2026-09-08CVE-2026-75650

Defender insights

What each entry about StyleSmuggler tells a defender to do, newest first.

2026-09-28CRITICALexploitedTwo exploited NetScaler zero-days: one in default configuration, one on by default on VPN servers; no workaround

Triage · detection

2026-09-08CRITICALexploitedAdobe rates its own emergency hotfix priority 1 for a flaw stores were already being compromised through since before Sansec published

Triage

Story timeline

Every entry that names StyleSmuggler, newest first. Rows tagged mention only name it in passing: they are listed for completeness and add nothing to the action items, pivots or ATT&CK profile on this page.

  1. 2026-10-14Adobe October 2026 bulletins: unauthenticated CVSS 9.0 to 10.0 flaws, most leading to code execution, in ColdFusion (APSB26-144), Experience Manager (APSB26-152) and Commerce and Magento (APSB26-153), none reported exploited
    mentiontrending-vulnerabilitiesAdobe fixes unauthenticated CVSS 10.0 flaws in ColdFusion, Experience Manager and Commerce; no exploitation known
  2. 2026-09-28CVE-2026-88771 / CVE-2026-88772, Citrix NetScaler ADC and Gateway: unauthenticated pre-auth RCE zero-days exploited before a patch existed (CVSS 4.0 9.5)
    deep-diveTwo exploited NetScaler zero-days: one in default configuration, one on by default on VPN servers; no workaround
  3. 2026-09-08CVE-2026-75650 ("StyleSmuggler"), Magento/Adobe Commerce: unauthenticated CVSS 10.0 RCE via template-engine injection, exploited three days before Adobe's hotfix existed
    deep-diveAdobe rates its own emergency hotfix priority 1 for a flaw stores were already being compromised through since before Sansec published
ATT&CK techniques (27 across 11 tactics)

27 techniques observed across 2 entries about this entity, derived from entry metadata and body evidence, never asserted without a published entry behind it · pinned to MITRE ATT&CK v20.0 · compare on the matrix · Navigator layer (JSON)

  • ReconnaissanceActive Scanning: Vulnerability Scanning
  • Initial AccessExploit Public-Facing Application
  • ExecutionScheduled Task/Job: Cron · Command and Scripting Interpreter: Unix Shell · Command and Scripting Interpreter: Python
  • PersistenceBoot or Logon Initialization Scripts: RC Scripts · Scheduled Task/Job: Cron · Server Software Component: Web Shell
  • Privilege EscalationBoot or Logon Initialization Scripts: RC Scripts · Scheduled Task/Job: Cron · Abuse Elevation Control Mechanism: Setuid and Setgid
  • StealthMasquerading: Match Legitimate Resource Name or Location · Masquerading: Masquerade File Type · Indicator Removal · Debugger Evasion
  • Credential AccessUnsecured Credentials: Credentials In Files
  • DiscoverySystem Network Configuration Discovery · Remote System Discovery · Network Service Discovery · System Information Discovery · Debugger Evasion
  • CollectionData Staged: Local Data Staging · Archive Collected Data: Archive via Utility
  • Command and ControlData Obfuscation: Protocol or Service Impersonation · Application Layer Protocol: Web Protocols · Application Layer Protocol: DNS · Proxy: Internal Proxy · Ingress Tool Transfer · Protocol Tunneling
  • ExfiltrationAutomated Exfiltration · Exfiltration Over C2 Channel

Reconnaissance TA0043

T1595.002Active Scanning: Vulnerability Scanning×1

Adversaries may scan victims for vulnerabilities that can be used during targeting. Vulnerability scans typically check if the configuration of a target host/application (ex: software and version) potentially aligns with the target of a specific exploit the adversary may seek to use.

Evidence: 2026-09-28/cve-2026-88771-citrix-netscaler-preauth-rce-zero-day-kev · ATT&CK page ↗

Initial Access TA0001

T1190Exploit Public-Facing Application×2

Adversaries may attempt to exploit a weakness in an Internet-facing host or system to initially access a network. The weakness in the system can be a software bug, a temporary glitch, or a misconfiguration.

Evidence: 2026-09-28/cve-2026-88771-citrix-netscaler-preauth-rce-zero-day-kev · 2026-09-08/stylesmuggler-cve-2026-75650-magento-adobe-commerce-rce · ATT&CK page ↗

Execution TA0002

T1053.003Scheduled Task/Job: Cron×2

Adversaries may abuse the <code>cron</code> utility to perform task scheduling for initial or recurring execution of malicious code. The <code>cron</code> utility is a time-based job scheduler for Unix-like operating systems. The <code> crontab</code> file contains the schedule of cron entries to be run and the specified times for execution. Any <code>crontab</code> files are stored in operating system-specific file paths.

Evidence: 2026-09-28/cve-2026-88771-citrix-netscaler-preauth-rce-zero-day-kev · 2026-09-08/stylesmuggler-cve-2026-75650-magento-adobe-commerce-rce · ATT&CK page ↗

T1059.004Command and Scripting Interpreter: Unix Shell×1

Adversaries may abuse Unix shell commands and scripts for execution. Unix shells are the primary command prompt on Linux, macOS, and ESXi systems, though many variations of the Unix shell exist (e.g. sh, ash, bash, zsh, etc.) depending on the specific OS or distribution. Unix shells can control every aspect of a system, with certain commands requiring elevated privileges.

Evidence: 2026-09-28/cve-2026-88771-citrix-netscaler-preauth-rce-zero-day-kev · ATT&CK page ↗

T1059.006Command and Scripting Interpreter: Python×1

Adversaries may abuse Python commands and scripts for execution. Python is a very popular scripting/programming language, with capabilities to perform many functions. Python can be executed interactively from the command-line (via the <code>python.exe</code> interpreter) or via scripts (.py) that can be written and distributed to different systems. Python code can also be compiled into binary executables.

Evidence: 2026-09-28/cve-2026-88771-citrix-netscaler-preauth-rce-zero-day-kev · ATT&CK page ↗

Persistence TA0003

T1037.004Boot or Logon Initialization Scripts: RC Scripts×1

Adversaries may establish persistence by modifying RC scripts, which are executed during a Unix-like system’s startup. These files allow system administrators to map and start custom services at startup for different run levels. RC scripts require root privileges to modify.

Evidence: 2026-09-28/cve-2026-88771-citrix-netscaler-preauth-rce-zero-day-kev · ATT&CK page ↗

T1053.003Scheduled Task/Job: Cron×2

Adversaries may abuse the <code>cron</code> utility to perform task scheduling for initial or recurring execution of malicious code. The <code>cron</code> utility is a time-based job scheduler for Unix-like operating systems. The <code> crontab</code> file contains the schedule of cron entries to be run and the specified times for execution. Any <code>crontab</code> files are stored in operating system-specific file paths.

Evidence: 2026-09-28/cve-2026-88771-citrix-netscaler-preauth-rce-zero-day-kev · 2026-09-08/stylesmuggler-cve-2026-75650-magento-adobe-commerce-rce · ATT&CK page ↗

T1505.003Server Software Component: Web Shell×2

Adversaries may backdoor web servers with web shells to establish persistent access to systems. A Web shell is a Web script that is placed on an openly accessible Web server to allow an adversary to access the Web server as a gateway into a network. A Web shell may provide a set of functions to execute or a command-line interface on the system that hosts the Web server.

Evidence: 2026-09-28/cve-2026-88771-citrix-netscaler-preauth-rce-zero-day-kev · 2026-09-08/stylesmuggler-cve-2026-75650-magento-adobe-commerce-rce · ATT&CK page ↗

Privilege Escalation TA0004

T1037.004Boot or Logon Initialization Scripts: RC Scripts×1

Adversaries may establish persistence by modifying RC scripts, which are executed during a Unix-like system’s startup. These files allow system administrators to map and start custom services at startup for different run levels. RC scripts require root privileges to modify.

Evidence: 2026-09-28/cve-2026-88771-citrix-netscaler-preauth-rce-zero-day-kev · ATT&CK page ↗

T1053.003Scheduled Task/Job: Cron×2

Adversaries may abuse the <code>cron</code> utility to perform task scheduling for initial or recurring execution of malicious code. The <code>cron</code> utility is a time-based job scheduler for Unix-like operating systems. The <code> crontab</code> file contains the schedule of cron entries to be run and the specified times for execution. Any <code>crontab</code> files are stored in operating system-specific file paths.

Evidence: 2026-09-28/cve-2026-88771-citrix-netscaler-preauth-rce-zero-day-kev · 2026-09-08/stylesmuggler-cve-2026-75650-magento-adobe-commerce-rce · ATT&CK page ↗

T1548.001Abuse Elevation Control Mechanism: Setuid and Setgid×1

An adversary may abuse configurations where an application has the setuid or setgid bits set in order to get code running in a different (and possibly more privileged) user’s context. On Linux or macOS, when the setuid or setgid bits are set for an application binary, the application will run with the privileges of the owning user or group respectively. Normally an application is run in the current user’s context, regardless of which user or group owns the application. However, there are instances where programs need to be executed in an elevated context to function properly, but the user running them may not have the specific required privileges.

Evidence: 2026-09-28/cve-2026-88771-citrix-netscaler-preauth-rce-zero-day-kev · ATT&CK page ↗

Stealth TA0005

T1036.005Masquerading: Match Legitimate Resource Name or Location×1

Adversaries may match or approximate the name or location of legitimate files, Registry keys, or other resources when naming/placing them. This is done for the sake of evading defenses and observation.

Evidence: 2026-09-08/stylesmuggler-cve-2026-75650-magento-adobe-commerce-rce · ATT&CK page ↗

T1036.008Masquerading: Masquerade File Type×1

Adversaries may masquerade malicious payloads as legitimate files through changes to the payload's formatting, including the file’s signature, extension, icon, and contents. Various file types have a typical standard format, including how they are encoded and organized. For example, a file’s signature (also known as header or magic bytes) is the beginning bytes of a file and is often used to identify the file’s type. For example, the header of a JPEG file, is <code> 0xFF 0xD8</code> and the file extension is either `.JPE`, `.JPEG` or `.JPG`.

Evidence: 2026-09-28/cve-2026-88771-citrix-netscaler-preauth-rce-zero-day-kev · ATT&CK page ↗

T1070Indicator Removal×1

Adversaries may selectively delete or modify artifacts generated to reduce indications of their presence and blend in with legitimate activity. Rather than broadly removing evidence, adversaries may target specific artifacts that appear anomalous or are likely to draw scrutiny, while leaving sufficient data intact to maintain the appearance of normal system behavior.

Evidence: 2026-09-28/cve-2026-88771-citrix-netscaler-preauth-rce-zero-day-kev · ATT&CK page ↗

T1622Debugger Evasion×1

Adversaries may employ various means to detect and avoid debuggers. Debuggers are typically used by defenders to trace and/or analyze the execution of potential malware payloads.

Evidence: 2026-09-08/stylesmuggler-cve-2026-75650-magento-adobe-commerce-rce · ATT&CK page ↗

Credential Access TA0006

T1552.001Unsecured Credentials: Credentials In Files×1

Adversaries may search local file systems and remote file shares for files containing insecurely stored credentials. These can be files created by users to store their own credentials, shared credential stores for a group of individuals, configuration files containing passwords for a system or service, or source code/binary files containing embedded passwords.

Evidence: 2026-09-28/cve-2026-88771-citrix-netscaler-preauth-rce-zero-day-kev · ATT&CK page ↗

Discovery TA0007

T1016System Network Configuration Discovery×1

Adversaries may look for details about the network configuration and settings, such as IP and/or MAC addresses, of systems they access or through information discovery of remote systems. Several operating system administration utilities exist that can be used to gather this information. Examples include Arp, ipconfig/ifconfig, nbtstat, and route.

Evidence: 2026-09-28/cve-2026-88771-citrix-netscaler-preauth-rce-zero-day-kev · ATT&CK page ↗

T1018Remote System Discovery×1

Adversaries may attempt to get a listing of other systems by IP address, hostname, or other logical identifier on a network that may be used for Lateral Movement from the current system. Functionality could exist within remote access tools to enable this, but utilities available on the operating system could also be used such as Ping, <code>net view</code> using Net, or, on ESXi servers, `esxcli network diag ping`.

Evidence: 2026-09-28/cve-2026-88771-citrix-netscaler-preauth-rce-zero-day-kev · ATT&CK page ↗

T1046Network Service Discovery×1

Adversaries may attempt to get a listing of services running on remote hosts and local network infrastructure devices, including those that may be vulnerable to remote software exploitation. Common methods to acquire this information include port, vulnerability, and/or wordlist scans using tools that are brought onto a system.

Evidence: 2026-09-28/cve-2026-88771-citrix-netscaler-preauth-rce-zero-day-kev · ATT&CK page ↗

T1082System Information Discovery×1

An adversary may attempt to get detailed information about the operating system and hardware, including version, patches, hotfixes, service packs, and architecture. Adversaries may use this information to shape follow-on behaviors, including whether or not the adversary fully infects the target and/or attempts specific actions. This behavior is distinct from Local Storage Discovery which is an adversary's discovery of local drive, disks and/or volumes.

Evidence: 2026-09-08/stylesmuggler-cve-2026-75650-magento-adobe-commerce-rce · ATT&CK page ↗

T1622Debugger Evasion×1

Adversaries may employ various means to detect and avoid debuggers. Debuggers are typically used by defenders to trace and/or analyze the execution of potential malware payloads.

Evidence: 2026-09-08/stylesmuggler-cve-2026-75650-magento-adobe-commerce-rce · ATT&CK page ↗

Collection TA0009

T1074.001Data Staged: Local Data Staging×1

Adversaries may stage collected data in a central location or directory on the local system prior to Exfiltration. Data may be kept in separate files or combined into one file through techniques such as Archive Collected Data. Interactive command shells may be used, and common functionality within cmd and bash may be used to copy data into a staging location.

Evidence: 2026-09-28/cve-2026-88771-citrix-netscaler-preauth-rce-zero-day-kev · ATT&CK page ↗

T1560.001Archive Collected Data: Archive via Utility×1

Adversaries may use utilities to compress and/or encrypt collected data prior to exfiltration. Many utilities include functionalities to compress, encrypt, or otherwise package data into a format that is easier/more secure to transport.

Evidence: 2026-09-28/cve-2026-88771-citrix-netscaler-preauth-rce-zero-day-kev · ATT&CK page ↗

Command and Control TA0011

T1001.003Data Obfuscation: Protocol or Service Impersonation×1

Adversaries may impersonate legitimate protocols or web service traffic to disguise command and control activity and thwart analysis efforts. By impersonating legitimate protocols or web services, adversaries can make their command and control traffic blend in with legitimate network traffic.

Evidence: 2026-09-08/stylesmuggler-cve-2026-75650-magento-adobe-commerce-rce · ATT&CK page ↗

T1071.001Application Layer Protocol: Web Protocols×1

Adversaries may communicate using application layer protocols associated with web traffic to avoid detection/network filtering by blending in with existing traffic. Commands to the remote system, and often the results of those commands, will be embedded within the protocol traffic between the client and server.

Evidence: 2026-09-28/cve-2026-88771-citrix-netscaler-preauth-rce-zero-day-kev · ATT&CK page ↗

T1071.004Application Layer Protocol: DNS×1

Adversaries may communicate using the Domain Name System (DNS) application layer protocol to avoid detection/network filtering by blending in with existing traffic. Commands to the remote system, and often the results of those commands, will be embedded within the protocol traffic between the client and server.

Evidence: 2026-09-08/stylesmuggler-cve-2026-75650-magento-adobe-commerce-rce · ATT&CK page ↗

T1090.001Proxy: Internal Proxy×1

Adversaries may use an internal proxy to direct command and control traffic between two or more systems in a compromised environment. Many tools exist that enable traffic redirection through proxies or port redirection, including HTRAN, ZXProxy, and ZXPortMap. Adversaries use internal proxies to manage command and control communications inside a compromised environment, to reduce the number of simultaneous outbound network connections, to provide resiliency in the face of connection loss, or to ride over existing trusted communications paths between infected systems to avoid suspicion. Internal proxy connections may use common peer-to-peer (p2p) networking protocols, such as SMB, to better blend in with the environment.

Evidence: 2026-09-28/cve-2026-88771-citrix-netscaler-preauth-rce-zero-day-kev · ATT&CK page ↗

T1105Ingress Tool Transfer×1

Adversaries may transfer tools or other files from an external system into a compromised environment. Tools or files may be copied from an external adversary-controlled system to the victim network through the command and control channel or through alternate protocols such as ftp. Once present, adversaries may also transfer/spread tools between victim devices within a compromised environment (i.e. Lateral Tool Transfer).

Evidence: 2026-09-28/cve-2026-88771-citrix-netscaler-preauth-rce-zero-day-kev · ATT&CK page ↗

T1572Protocol Tunneling×1

Adversaries may tunnel network communications to and from a victim system within a separate protocol to avoid detection/network filtering and/or enable access to otherwise unreachable systems. Tunneling involves explicitly encapsulating a protocol within another. This behavior may conceal malicious traffic by blending in with existing traffic and/or provide an outer layer of encryption (similar to a VPN). Tunneling could also enable routing of network packets that would otherwise not reach their intended destination, such as SMB, RDP, or other traffic that would be filtered by network appliances or not routed over the Internet.

Evidence: 2026-09-28/cve-2026-88771-citrix-netscaler-preauth-rce-zero-day-kev · ATT&CK page ↗

Exfiltration TA0010

T1020Automated Exfiltration×1

Adversaries may exfiltrate data, such as sensitive documents, through the use of automated processing after being gathered during Collection.

Evidence: 2026-09-28/cve-2026-88771-citrix-netscaler-preauth-rce-zero-day-kev · ATT&CK page ↗

T1041Exfiltration Over C2 Channel×1

Adversaries may steal data by exfiltrating it over an existing command and control channel. Stolen data is encoded into the normal communications channel using the same protocol as command and control communications.

Evidence: 2026-09-28/cve-2026-88771-citrix-netscaler-preauth-rce-zero-day-kev · ATT&CK page ↗

Entries about StyleSmuggler (2)

2026-09-28 · view entry permalink →

CRITICALCVE-2026-88771 +7exploitedupdatedNATOA1

CVE-2026-88771 / CVE-2026-88772, Citrix NetScaler ADC and Gateway: unauthenticated pre-auth RCE zero-days exploited before a patch existed (CVSS 4.0 9.5)

Citrix's security bulletin CTX697096, published 2026-09-27, fixes eight NetScaler ADC / NetScaler Gateway vulnerabilities, two of which Citrix says have been exploited (Citrix, 2026-09-27); watchTowr notes they were exploited as zero-days, "before any fix existed" (watchTowr, 2026-09-27). CVE-2026-88771 (CWE-20, improper input validation, CVSS 4.0 9.5) lets an unauthenticated remote attacker execute arbitrary commands on every NetScaler ADC/Gateway deployment in its default configuration; no feature needs to be enabled first. CVE-2026-88772 (CWE-119, memory overflow to RCE or DoS, CVSS 4.0 9.5) is reachable wherever DTLS is enabled, which Citrix states is the default on any VPN virtual server, so most VPN-fronting Gateway deployments meet the precondition unless DTLS was explicitly disabled. Citrix's own bulletin states plainly: "Exploits of CVE-2026-88771 and CVE-2026-88772 on unmitigated NetScaler deployments have been observed" (Citrix, 2026-09-27). CISA added both to its Known Exploited Vulnerabilities catalog on 2026-09-27 and flags them for forensic triage (CISA Known Exploited Vulnerabilities Catalog, 2026-09-27), and CERT-EU's advisory the same day states "Citrix has confirmed active exploitation of these 2 critical vulnerabilities in the wild" and recommends a compromise assessment on every internet-facing appliance (CERT-EU, 2026-09-27).

The disclosure path itself is a defender-relevant data point. NetScaler administrators reported being told by IT suppliers and security teams to shut appliances down over the weekend of 26-27 September, before any CVE identifier or vendor advisory existed; BleepingComputer reports that NCSC-NL reportedly sent a pre-notification to its constituency and that NCSC-NL declined to confirm the leaked notice's contents (BleepingComputer, 2026-09-27) but published its own public advisory NCSC-2026-0394 the same day once Citrix's bulletin shipped (NCSC-NL, 2026-09-27). watchTowr independently and publicly flagged credible rumors of unpatched, in-the-wild NetScaler RCEs on 2026-09-26, a day ahead of Citrix's own bulletin. No public attribution of the exploiting activity exists; watchTowr's FAQ states "No attribution has been made public," while noting NetScaler perimeter appliances have historically been targeted by both state-sponsored and ransomware-affiliated actors, consistent with the CitrixBleed (CVE-2023-4966) and CitrixBleed 2 (CVE-2025-5777) history on the same product line (watchTowr, 2026-09-27).

The same bulletin fixes six configuration-dependent companion flaws not reported exploited: an HTTP request-smuggling flaw (CVE-2026-88773, CVSS 9.3), a policy-bypass flaw via HTTP URL-based expressions (CVE-2026-88774, CVSS 7.0), three further memory-overflow conditions gated respectively on a Gateway/AAA virtual server, an Oracle-type load-balancing virtual server, or a non-HTTP Layer-7 protocol on an LB/CS/CGNAT-LSN/NAT64 device (CVE-2026-88775/88776/88777, each CVSS 8.8), and a predictable-TCP-ISN weakness (CVE-2026-88778, CVSS 8.8) whose remediation is not covered by the version upgrade alone: it additionally requires enabling Enhanced ISN Generation. This is a distinct CVE family from CVE-2026-19490 and from the CitrixBleed/CitrixBleed 2 lineage named above; watchTowr states directly that appliances already patched for CVE-2026-19490 remain vulnerable to CVE-2026-88771/88772 unless running one of the new fixed builds (watchTowr, 2026-09-27). Fixed builds are 14.1-73.37, 13.1-64.23, 14.1-73.37 FIPS and 13.1-37.279 (FIPS/NDcPP); watchTowr flags an upgrade caveat on the 13.1 branch: run show ns variable first, and if it returns any variables, install 13.1-64.24 instead to avoid a known reboot loop during the upgrade. A separate bulletin of 2026-10-03 adds CVE-2026-88779 for SAML-configured appliances, which these builds do not fix (see the 2026-10-04 update below).

Detection and hunting. Citrix has published no workaround for either exploited flaw (watchTowr, 2026-09-27); Mandiant's interim network controls are described in the update below, and its DTLS and UDP/443 controls address CVE-2026-88772 alone, so the priority is upgrading, not mitigating in place. Before patching, capture logs, an instance snapshot where the appliance is virtual, a support bundle and a core dump from every appliance that has been internet-facing, since the upgrade can overwrite forensic evidence of prior compromise (watchTowr, 2026-09-27; Unit 42, 2026-09-30). A limited IOC scan is available from 14.1-73.36+ with telemetry enabled via the NetScaler Console Security Advisory page or through Citrix Support, but Citrix itself cautions the indicators do not cover every exploitation technique (watchTowr, 2026-09-27), so a clean scan is not proof an appliance was not already compromised before patching, and CERT-EU recommends a compromise assessment on every internet-facing appliance (CERT-EU, 2026-09-27). Zscaler's telemetry adds appliance-initiated downloads to unfamiliar addresses, an unexpected executable under /var and a Perl CGI handler in the web server configuration to the post-exploitation checks (Zscaler ThreatLabz, 2026-10-16). Rapid7 adds, from one investigated intrusion, a setuid bit set on /bin/sh, web shells behind CSS-looking Apache aliases, nsaaad crashes followed by Pitboss reboots, an outbound agent that polls an external endpoint every 15 seconds and implant files synchronised to the HA peer, and says to inspect both nodes of every HA pair and to rotate the LDAP and RADIUS credentials, SSL private keys and key-encryption material held in the configuration, which that intrusion staged and exfiltrated (Rapid7, 2026-10-19).

Triage: for CVE-2026-88771 the precursor sits in the appliance's own logs: header, username or other request values carrying shell metacharacters (semicolons, backticks) together with Pitboss crash-message text such as "PPE unexpectedly died", which the crash-log monitor script later parses as root (watchTowr Labs, 2026-09-28). Legitimate clients have no reason to send crash-message text in a request field, so such a log line is the signal rather than a benign lookalike. For CVE-2026-88772, GTIG names a DTLS handshake-failure "Internal Error" line in the syslog, which successful exploitation produced, and packet-engine termination or watchdog "NOT restarting" lines in the FreeBSD system log, which NetScaler does not forward to a SIEM by default. A handshake failure followed within minutes by a packet-engine termination on the same appliance is a strong exploitation signal, but GTIG advises alerting on the watchdog messages and terminations independently rather than requiring both (GTIG/Mandiant, 2026-09-29).

Exploits of CVE-2026-88771 and CVE-2026-88772 on unmitigated NetScaler deployments have been observed.

A remote code execution vulnerability exists due to improper input validation, which can allow an unauthenticated attacker to execute arbitrary commands

Citrix (Cloud Software Group) 2026-09-27

Citrix has confirmed active exploitation of these 2 critical vulnerabilities in the wild.

CERT-EU 2026-09-27

No attribution has been made public.

watchTowr 2026-09-27

The Command Injection happens in the next line, when Perl interpolates that string into another backtick command

It is worth mentioning that this is not limited to a single endpoint. Any endpoint or port that logs data controlled in an HTTP header can trigger this vulnerability.

watchTowr Labs 2026-09-28

organizations in North America and Europe in the government, financial services, technology, education, and legal and professional services sectors were likely impacted by this exploitation campaign, which has been ongoing since at least early September

The DTLS and UDP/443 controls below are specific to CVE-2026-88772 and should not be relied on to mitigate CVE-2026-88771.

Google Threat Intelligence Group / Mandiant 2026-09-29

observed a threat actor exploiting CVE-2026-88771 against Internet-facing Citrix NetScaler Gateway appliances as early as September 5th, more than three weeks before the vulnerability was publicly disclosed

eSentire TRU 2026-09-29

The vulnerable function then copies that entire chain into the 35,840-byte scratch buffer without checking whether it fits.

watchTowr Labs 2026-09-28

NetScaler ADC and NetScaler Gateway versions 12.1 and 13.0 have reached end-of-life (EOL) and no longer receive security updates, and Citrix has not said whether they are affected by these vulnerabilities.

Tenable 2026-09-27

Patching does not remove persistence an attacker already installed.

Censys 2026-09-30

fueled by the publication of a root-cause analysis and a proof-of-concept exploit for CVE-2026-88771, which is remotely exploitable on unpatched devices with the default configuration

Help Net Security 2026-09-29

It is not a successful cyberattack, but a precaution to protect the data until the vulnerability is closed (translated from German)

Rhein-Zeitung (dpa) 2026-09-29

The IT teams probably brought the Citrix NetScaler software up to date. (translated from German)

heise online 2026-09-29

The earliest activity we identified occurred on Aug. 21, 2026

We believe any activity to this URL path is anomalous and worth investigating.

It is important to note that activity after Sept. 27, 2026 might not match the same indicators of compromise (IoCs) or tactics, techniques and procedures (TTPs) from the original zero-day activity.

Palo Alto Networks Unit 42 2026-09-30

NetScaler ADC and NetScaler Gateway 14.1-73.41 and later releases

Citrix (Cloud Software Group) 2026-09-27

please upgrade your deployment again

BleepingComputer (quoting Citrix)

ThreatLabz also observed a burst of exploitation attempts from at least 26 source IP addresses over approximately six to seven minutes.

This overlap provides an investigative lead but does not establish threat actor attribution.

Zscaler ThreatLabz 2026-10-16

A two-vulnerability sequence in which the SAML parsing flaw supplies a crash/reboot condition while the log-poisoning flaw supplies attacker-controlled command text.

After reboot, the NetScaler call-home crash handler processed the retained attacker-controlled text and executed a payload as root.

The attacker set /bin/sh to mode 6555, allowing an unprivileged web process to obtain effective root privileges.

NetScaler configuration, historical configurations, HTTP configuration, diagnostics and system backup material were staged for exfiltration.

Rapid7 2026-10-19
Updaterun 2026-09-29T0405Z-inteltechniquessourcesevidenceactionsbody

watchTowr Labs' root-cause analysis, published 2026-09-28, names the actual vulnerable component behind CVE-2026-88771: not the nsppe packet engine that has carried most historical NetScaler CVEs, but ns_monuploadd_err.pl, a Perl script that searches NetScaler system logs for Pitboss packet-engine crash messages, "missed too many heartbeats" or "unexpectedly died", to recover a core-dump filename (watchTowr Labs, 2026-09-28). The pre-patch script extracted that filename with an unsanitized shell pipeline and re-interpolated the attacker-influenced string into a second backtick command: "The Command Injection happens in the next line, when Perl interpolates that string into another backtick command" (watchTowr Labs, 2026-09-28), executing as root because nearly every NetScaler process runs with root privileges. Critically, the trigger is not confined to the SSLVPN/AAA login form watchTowr used to demonstrate it: "it is worth mentioning that this is not limited to a single endpoint. Any endpoint or port that logs data controlled in an HTTP header can trigger this vulnerability" (watchTowr Labs, 2026-09-28): failed logins, rate-limited requests and arbitrary request parameters or User-Agent headers can all poison the log the monitor script later parses. Citrix's fix replaces the unsafe pipeline with a strict regex capture that only accepts a well-formed PPE name and numeric PID and executes find via Perl's list form rather than shell interpolation. watchTowr also clarifies exploitation-status granularity across the eight-CVE bulletin: only CVE-2026-88771 and CVE-2026-88772 are confirmed exploited, matching Citrix's bulletin, and has published a public detection-artefact tool. NCSC Switzerland's Cyber Security Hub, NCSC UK and CERT-FR each published same-day advisories on 2026-09-28 relaying Citrix's confirmation of active exploitation (NCSC Switzerland, 2026-09-28; NCSC UK, 2026-09-28; CERT-FR, 2026-09-28).

Updaterun 2026-09-30T0404Z-intelsummaryimmediate_actiontagscvesentitiestechniquessourcesevidenceactionsbody

Exploitation predates the bulletin. Google's Mandiant and Threat Intelligence Group identified in-the-wild exploitation of CVE-2026-88772 and report that the campaign has run since at least early September, with organizations in North America and Europe in government, financial services, technology, education, and legal and professional services likely impacted (GTIG/Mandiant, 2026-09-29). eSentire independently reports CVE-2026-88771 exploited against internet-facing NetScaler Gateway appliances as early as 5 September (eSentire, 2026-09-29), and GreyNoise recorded a failed pre-disclosure attempt on 24 September that already used the setuid-and-handler playbook described below (GreyNoise, 2026-09-28). GTIG and GreyNoise name no actor. CERT-EU traced the activity through NetScaler logs from the European Court of Auditors and the European Central Bank, which showed requests carrying Base64-encoded shell commands in the HTTP User-Agent header (CERT-EU, 2026-09-28). An appliance upgraded after the 27 September bulletin may therefore already have been compromised: "Patching does not remove persistence an attacker already installed" (Censys, 2026-09-30).

What the actor leaves behind. After the DTLS exploit runs shellcode as root, a first-stage web shell rewrites the appliance web-server configuration so that files with non-script extensions run as PHP; in one variant an alias maps requests for image files under the VPN media path onto a staged shell, so the traffic looks like image fetches, and the shells answer with HTTP 404 while taking Base64 commands from HTTP request headers, including NSC-prefixed ones (GTIG/Mandiant, 2026-09-29). The installer sets the setuid bit on /bin/sh so later web requests run as root, scrubs its staging path from /etc/crontab and reboots the appliance to apply the change (GTIG/Mandiant, 2026-09-29). The PHP shell WHIPSHOT relays requests over loopback to SLAPSHOT, a Python TCP tunneler that Mandiant saw used for internal reconnaissance and credential theft in at least one intrusion (GTIG/Mandiant, 2026-09-29).

Exploit availability for CVE-2026-88772. GTIG states it holds no exploit code (GTIG/Mandiant, 2026-09-29). watchTowr published a root-cause analysis and a detection-artifact generator on 29 September: DTLS handshake reassembly keeps almost the whole record for each one-byte fragment, so after 120 records the buffer chain holds about 174 KB, which a packet-engine function copies into a 35,840-byte scratch buffer without a size check (watchTowr Labs, 2026-09-29). NCSC Switzerland's advisory now lists a proof of concept for both CVEs (NCSC-CH, 2026-09-29), and Help Net Security reports the activity turned into opportunistic mass exploitation after a public root-cause analysis and proof of concept for CVE-2026-88771, while its text says there was no public proof of concept for CVE-2026-88772 (Help Net Security, 2026-09-29).

Interim controls and containment. For appliances that cannot be patched at once Mandiant lists three network restrictions: disabling DTLS on internet-facing Gateway virtual servers where it is not needed and blocking inbound UDP/443 at an upstream firewall or edge router (local ACLs let the traffic reach the packet engine first) are specific to CVE-2026-88772 and "should not be relied on to mitigate CVE-2026-88771", while upstream IP allow-listing, where source ranges are predictable, is not scoped to one CVE and may be impractical for large remote workforces (GTIG/Mandiant, 2026-09-29). For a suspected compromise it advises isolating the node, halting high-availability configuration sync until both nodes are validated because a compromised node can replicate a modified web-server configuration to the standby, restricting appliance egress, and, after patching, rotating appliance and integration credentials and terminating Gateway and ICA sessions (GTIG/Mandiant, 2026-09-29). NetScaler 12.1 and 13.0 are end of life and no longer receive security updates, and Citrix has not said whether they are affected (Tenable, 2026-09-27). Censys counts 42,735 exposed NetScaler ADC and Gateway hosts, with Switzerland among the countries at roughly 4% each; these are exposed instances, not confirmed-vulnerable ones (Censys, 2026-09-30).

Hunting. By telemetry class: appliance web-server configuration containing handler or alias directives that point public paths at script directories; script content in the client plug-in and media directories, which should hold compiled clients and static assets; 404 responses with multi-kilobyte bodies or long processing times on media paths; the setuid bit on /bin/sh; lock and port-pointer files in the temp directory; and, for CVE-2026-88772, a DTLS handshake-failure "Internal Error" line in the syslog, and packet-engine termination or watchdog "NOT restarting" lines in the FreeBSD system log, which NetScaler does not forward to a SIEM by default (GTIG/Mandiant, 2026-09-29). GTIG treats a handshake failure followed within minutes by a packet-engine termination as a strong exploitation signal, but advises alerting on each event on its own rather than requiring both, alongside configuration drift (GTIG/Mandiant, 2026-09-29).

A shared municipal operator shut down as a precaution. The two municipal data centres of the Rhineland-Palatinate association ZIDKOR shut down centrally hosted specialist applications on Sunday 27 September after a security vulnerability became known, taking resident-registration, ID-card, vehicle-registration and civil-registry services offline across all 194 full-time administered municipalities, cities and counties while they installed the vendor's patches; the operators say no successful cyberattack occurred, and each administration ran its own continuity plan with no central instruction (ZIDKOR release via AK-Kurier, 2026-09-28). Mainz and Kaiserslautern reported regular service again on the morning of 29 September (dpa via Rhein-Zeitung, 2026-09-29). The operators name no vendor; heise assesses that the trigger was probably the NetScaler updates released that weekend, a link it added to its article after publication (heise online, 2026-09-29). Cantonal and communal IT providers that host citizen services behind a shared NetScaler front end face the same trade-off between shutting down to patch and staying reachable.

Updaterun 2026-10-02T0404Z-intelheadlinesummarytechniquessourcesevidenceactionsimmediate_actionbody

Unit 42's threat brief, updated 2026-09-30, adds first-party telemetry on the pre-disclosure activity (Unit 42, 2026-09-30). Its earliest observed activity is on 2026-08-21: requests for an admin-UI stylesheet and a Gateway language resource that those two hosts and a third address then repeated against more than 100 other systems on 21 and 22 August, which Unit 42 reads as version fingerprinting (Unit 42, 2026-09-30). Between 2026-09-04 and 2026-09-24 the DTLS exploitation delivered web shells as .deb packages that the actor repeatedly fetched from the appliance's /vpn/scripts/linux/ client-installer folder, rotating infrastructure over that period; the recovered PHP web shell offers command execution, file download and upload over an RC4-encrypted channel and uses the appliance's SUID helper for privilege escalation (Unit 42, 2026-09-30). From 2026-09-10 to 2026-09-27 a continuous stream of requests reached the Gateway's /logon/LogonPoint/Authentication/GetUserName page, which Unit 42 calls anomalous and worth investigating (Unit 42, 2026-09-30).

On 2026-09-21 Unit 42 saw a three-stage chain against a US-based target: a request with a Base64 dropper command in the User-Agent, answered with a 404 and written to the VPN HTTP access log; a login request whose extra text is logged in ns.log after the pitboss PPE missed too many heartbeatsNSPPE marker; and the vulnerable ns_monuploadd_err.pl script then running that text, which retrieves and decodes the staged payload and pipes it to sh or php (Unit 42, 2026-09-30). The payload sets the SUID and SGID bits on /bin/sh, creates a hidden PHP receiver under the Gateway's custom directory, adds Alias directives that present it as a versioned CSS file, switches php_flag engine to on in httpd.conf and reloads Apache with SIGHUP, leaving no restart entry (Unit 42, 2026-09-30). Unit 42 counted 50,277 exposed instances that could potentially be vulnerable as of 2026-09-27 and cautions that activity after that date may not match the original actors' indicators or TTPs (Unit 42, 2026-09-30).

Updaterun 2026-10-04T0405Z-intelsummaryimmediate_actionactionsreferencessourcesevidencebody

Citrix published a second NetScaler bulletin on 2026-10-03, CTX697174, for CVE-2026-88779, a memory overflow reachable when the appliance is configured as a SAML service provider or identity provider; Citrix says it has observed targeted attacks and scopes the impact to denial of service (Citrix, 2026-10-03; Citrix, 2026-10-03). The flaw is independent of the vulnerabilities disclosed in the earlier bulletin CTX697096 (Citrix, 2026-10-02), and Citrix tells operators who upgraded to the September builds and meet the SAML precondition to upgrade again (Citrix, 2026-10-03). The fixed builds are 14.1-73.41, 13.1-64.28, 14.1-73.41 FIPS and 13.1-37.282 (Citrix, 2026-10-03). A SAML-configured appliance on 14.1-73.37 or 13.1-64.23 is therefore fixed against the exploited command-injection and DTLS flaws described above but not against this one.

Correctionrun 2026-09-30T0639Z-auditheadlinebody

For CVE-2026-88771, the precursor in the appliance's own logs is header or username values carrying shell metacharacters together with crash-message text such as "PPE unexpectedly died" (watchTowr Labs, 2026-09-28). For CVE-2026-88772, GTIG names a DTLS handshake-failure line, packet-engine terminations and watchdog "NOT restarting" lines, and advises alerting on each on its own rather than requiring both (GTIG/Mandiant, 2026-09-29). Citrix has published no workaround (watchTowr, 2026-09-27), and Mandiant's DTLS and UDP/443 controls apply to CVE-2026-88772 only, while its upstream IP allow-listing is not scoped to one CVE (GTIG/Mandiant, 2026-09-29).

Improvementrun 2026-10-09T0255Z-intelsummaryimmediate_actionactionssourcesbody

The pointers above to the 14.1-73.41 and 13.1-64.28 builds for SAML-configured appliances are not the end of the upgrade path for identity providers: Citrix's bulletin CTX697191 of 2026-10-08 lists those builds as affected by CVE-2026-107406 when the appliance is a SAML identity provider, and names 14.1-73.46, 13.1-64.29, 14.1-73.46 FIPS and 13.1.37.283 and later as fixed (Citrix, 2026-10-08).

Improvementrun 2026-10-18T0256Z-intelentitiesreferencesactionssourcesevidencebody

Zscaler ThreatLabz published first-party telemetry of exploitation of CVE-2026-88771 on 2026-10-16 (Zscaler ThreatLabz, 2026-10-16). The chain it captured matches the log-poisoning sequence in the sections above: a payload stored in the User-Agent of GET requests to four default logon and VPN paths, a forged packet-engine failure record in the authentication request that searches the access log for the marker, decodes the payload and runs it when the vendor's crash-log script selects that record (Zscaler ThreatLabz, 2026-10-16). Two post-exploitation behaviours are not described above: the payload writes PHP and Perl CGI web shells into six web-served directories and adds a handler that runs .pl files as CGI, besides switching PHP on in the web server configuration, and a shorter variant makes the appliance download a Rust-built 64-bit FreeBSD binary and run it from /var (Zscaler ThreatLabz, 2026-10-16). ThreatLabz saw at least 26 source addresses send the forged record together with that downloader within about six to seven minutes (Zscaler ThreatLabz, 2026-10-16). It says the download server also appeared in its earlier exploitation data for CVE-2026-75650, the Adobe Commerce and Magento flaw it tracks as StyleSmuggler, and calls the overlap an investigative lead that does not establish attribution, because shared hosting, a malware-distribution service or payload reuse by unrelated operators could explain it (Zscaler ThreatLabz, 2026-10-16).

Updaterun 2026-10-11T1307Z-auditsummarycvessourcesbody

Belgium's Centre for Cybersecurity reported on 2026-10-06 that a proof of concept is publicly available for CVE-2026-88773, the HTTP request-smuggling flaw in the same bulletin, which an unauthenticated attacker can use on appliances with the HTTP configuration enabled to view and edit restricted data; it had seen no exploitation in the wild by that date (CCB, 2026-10-06). Citrix lists 14.1-73.37 and 13.1-64.23 and later as fixed, so an appliance on the September builds needs nothing further for this flaw (Citrix CTX697096).

Contradiction: CCB's advisory lists the affected software as 14.1 - 14.1-73.37 and 13.1 - 13.1-64.23 (CCB, 2026-10-06), while Citrix names those builds as the first fixed releases (Citrix CTX697096); Citrix, as the vendor, is the authority on its own fixed builds.

Correctionrun 2026-10-18T1307Z-auditheadlinesourcesevidencebody

Only CVE-2026-88771 applies to every deployment in default configuration; CVE-2026-88772 needs DTLS, which is on by default only on VPN virtual servers, as described above, so the headline no longer calls both default-configuration. watchTowr shows the crash-log script searching the logs for two Pitboss packet-engine messages, "missed too many heartbeats" or "unexpectedly died", and says it can take up to 24 hours to run (watchTowr Labs, 2026-09-28). Citrix's instruction to customers who had already upgraded for CVE-2026-88771 through CVE-2026-88778 and meet the CVE-2026-88779 preconditions is to "upgrade your deployment again" (BleepingComputer, 2026-10-04); the quote now cites that report.

Updaterun 2026-10-20T0256Z-intelsummarytechniquesactionssourcesevidencebody

Rapid7 published an incident analysis on 2026-10-19 of an early-October compromise of a NetScaler ADC on an affected 14.1 build, build number not given (Rapid7, 2026-10-19). Its logs show CVE-2026-88771 chained with CVE-2026-88779: text similar to a Pitboss crash message was inserted into an authentication username, repeated nsaaad crashes and a Pitboss reboot followed, and after the reboot the call-home crash handler processed the retained text and executed a payload as root, a chaining that avoided waiting 24 hours for the injected payload to run (Rapid7, 2026-10-19). The crash-and-reboot cycle recurred over several days and let the operator refresh persistence and deploy new components (Rapid7, 2026-10-19).

After the first root execution the operator installed cookie-authenticated PHP web shells behind Apache aliases that look like CSS files and answer with HTTP 404 bodies, set /bin/sh to mode 6555, and kept access through cron entries, boot scripts, watchdog loops, an outbound agent that polls every 15 seconds and an HTTP-fronted TCP proxy, with logic that synchronises implant files to the HA peer and forces a failover so the implanted node stays active (Rapid7, 2026-10-19). A Go tool recovered from the appliance mapped routes, DNS, LDAP and Active Directory, management services and VMware vCenter, and the configuration, historical configurations and system backups were staged and exfiltrated, one archive through the web root; Rapid7 says the archive can hold encrypted credentials, LDAP and RADIUS bind information, SSL private keys and key-encryption material (Rapid7, 2026-10-19). Rapid7 says the activity overlaps public WHIPSHOT and SLAPSHOT reporting and names no actor (Rapid7, 2026-10-19).

Rapid7 recommends patching to the fixed builds for both CVEs and verifying the September builds, collecting volatile evidence before rebooting or rebuilding, inspecting both nodes of every HA pair, and rotating all credentials and keys exposed through the configuration (Rapid7, 2026-10-19).

Builds on: The precondition is wider than the headline version numbers suggest; on older builds a Gateway… · CVE-2026-8451, Citrix NetScaler ADC/Gateway: pre-auth SAML memory overread (CitrixBleed… · Citrix confirms attacks on a new NetScaler SAML flaw that the September fixed builds do not… · Adobe rates its own emergency hotfix priority 1 for a flaw stores were already being…

vulnerability28 Sep 04:04Zmulti-sourceOpen finding →

2026-09-08 · view entry permalink →

CRITICALCVE-2026-75650exploitedNATOA1

CVE-2026-75650 ("StyleSmuggler"), Magento/Adobe Commerce: unauthenticated CVSS 10.0 RCE via template-engine injection, exploited three days before Adobe's hotfix existed

Sansec found StyleSmuggler on 2026-09-04 at 22:40 UTC and published the following day specifically because stores were already being compromised, reproducing the full unauthenticated chain on clean Magento Open Source 2.4.7, 2.4.8 and 2.4.9 within hours (Sansec, 2026-09-05). The bug abuses Magento's own template engine through the styles property, reached via a POST /graphql request carrying the malicious styles parameter, to smuggle PHP past existing input safeguards, and runs in two stages: first the attacker poisons a location Magento itself writes to and later re-renders through its template filter; Sansec's own published check searches a failure report under var/report/, but Magento hosting firm Disrex Group, which handled two live compromises, found both of its infections instead poisoned var/log/system.log, a location Sansec's check misses entirely (The Hacker News, 2026-09-06), with attacker-controlled PHP; second, the attacker triggers Magento's built-in "Payment Transaction Failed Reminder" customer-notification email, and the poisoned content executes the moment Magento renders that template (Sansec, 2026-09-05). Nobody needs to open the email, and the attack succeeds even when delivery fails (Sansec, 2026-09-05). Adobe assigned CVE-2026-75650 (CVSS 10.0, CWE-1336 Improper Neutralization of Special Elements Used in a Template Engine) and shipped an emergency hotfix, APSB26-146, on 2026-09-07 at 20:20 UTC with its highest priority rating, three days after the first confirmed exploitation (Adobe PSIRT, 2026-09-07; Sansec, 2026-09-05). The fix ships as a composer patch (VULN-39341) rather than a full point release, tested against the 2026-aug release branch of Adobe Commerce, Adobe Commerce B2B and Magento Open Source 2.4.4 through 2.4.9; older versions in those branches are affected too, but Sansec reports the patch is unverified there (Sansec, 2026-09-05).

Disrex's own two compromises, reported independently of Sansec, sharpen the timeline and the triage picture. Both stores were breached inside the roughly eight-hour window between Sansec's first observed exploitation and the moment any defense existed, and Disrex states patch level was irrelevant during that window; one victim ran Magento Open Source 2.4.8 as a Sansec Shield customer with the module installed, enabled and licensed, and was still hit hours before Shield's first blocking rule went live (The Hacker News, 2026-09-06). Disrex reports a concrete false-negative worth defenders' attention: its own eComscan run on one compromised store returned clean eleven hours after the implant first executed, because the scheduled scan was scoped to the store's document root while the implant had installed itself one directory above it, under the site account's home directory, a scan-scope gap, not a detection-engine failure. Disrex also names a reliable success indicator the exploit itself leaves behind: a TypeError from array_merge() with an integer argument, logged immediately after the poisoned include executes; a stealthier variant instead returns an empty array and leaves nothing to find, so its absence does not clear a host. One of Disrex's two compromises first surfaced through exactly the "Payment Transaction Failed Reminder" tell this entry describes above: a merchant forwarded a failed-transaction email whose template variables had never resolved (raw {{var ...}} tags, a customer address on an invalid domain, a zero-value total) and that forward alone started the investigation that found the implant within the hour (The Hacker News, 2026-09-06).

Patch level offered no protection during the exposure window: the first confirmed victim ran Magento 2.4.6-p15 with the July and August 2026 security patches applied (the latest patch level Adobe offers for that release line) and a clean security:patch-status (Sansec, 2026-09-05; The Hacker News, 2026-09-06), and Sansec's own Shield product blocked a probe against an already-current 2.4.7-p10 store on 2026-09-07, confirming that current patch level was no defense during the exposure window (Sansec, 2026-09-05). Moving session storage to Redis or a database is not a mitigation either: one merchant's session-storage defense stopped one attempt, and the same operator succeeded eight seconds later by routing the poisoned payload through a file uploaded via Magento's custom options instead (Sansec, 2026-09-05). On success, the implant is a small Rust binary (Disrex describes the sample from its own compromises as stripped and statically linked) that installs itself under a hidden directory outside the web root and re-persists via a cron entry written directly into the cron spool file rather than through the crontab command, so the change leaves no corresponding audit line and an empty crontab -l is not evidence of a clean host (Sansec, 2026-09-05; The Hacker News, 2026-09-06). The implant renames its own process to masquerade as a kernel worker thread, the fontconfig cache builder, or the genuine NTP daemon, and one observed build re-dropped and renamed itself mid-run from one masquerade to another while keeping the same underlying agent identity, a process-naming change with no corresponding new infection (Sansec, 2026-09-05). It reads /proc/self/status for TracerPid before beaconing: if a debugger or tracer is attached, the implant still installs itself but never calls out, which matters for anyone attempting to reproduce or analyze it live (Sansec, 2026-09-05).

Command-and-control is disguised as time synchronization: every 60 seconds the implant sends short UDP datagrams to port 123 shaped to resemble NTP server replies, carrying a chunked telemetry record (host, user, operating system, resource usage, and implant version) rather than legitimate time data, traffic that passes most egress filtering unremarked because it looks like a routine NTP exchange (Sansec, 2026-09-05). Two details separate it from a genuine NTP client for a defender who does look: a real client issues one query per interval, where one observed build burst nine datagrams roughly ten milliseconds apart every sixty seconds; and every datagram is marked NTP server-mode, which a client has no legitimate reason to send at all (Sansec, 2026-09-05). Sansec has so far found no evidence the backdoor has been used beyond installation and beaconing (Sansec, 2026-09-05).

Sansec separately documents a second, apparently unrelated actor exploiting the same flaw: a reconnaissance probe sent as an ordinary-looking GraphQL request carries PHP code inside a request header rather than the request body, reads the host's kernel/OS string, PHP user, working directory, and whether the media directory is writable, then exfiltrates that single-line answer one fragment at a time as a sequence of externally-resolved hostname labels to a public callback service; a technique that needs no response body at all, since the operator reconstructs the answer from the callback log (Sansec, 2026-09-05). Only when that probe reports the media directory writable does the same actor follow up with a web shell planted inside the product-image cache directory, reachable solely with a custom request header (Sansec, 2026-09-05).

Every version of Adobe Commerce, Adobe Commerce B2B and Magento Open Source in the 2.4.4–2.4.9 line is affected with no authentication or user interaction required (Adobe PSIRT, 2026-09-07); Switzerland's NCSC has issued its own advisory confirming the exploitation and backdoor-persistence risk for its constituency (NCSC Switzerland / GovCERT.ch, 2026-09-07). Any public body or supplier running a storefront, ticketing portal or fee-payment system on this platform (tourism boards, cantonal shops, public-transport ticketing among them) is in the affected population even without a Swiss-specific victim yet reported.

Triage: the exploitation trigger is Magento's own "Payment Transaction Failed Reminder" email, so an unexplained burst of these messages (especially containing unresolved template placeholders or Magento's template-error fallback text) is a Magento-specific tell that costs no additional tooling to check; legitimate declined-payment traffic can produce the same notification, so treat the burst as a lead, not a confirmation. On the network side, a web-tier host that only ever needs outbound HTTPS suddenly emitting repeated small UDP datagrams to port 123 is not a legitimate NTP client, which issues a single periodic query rather than a burst of server-mode replies; filtering by process name alone is insufficient once an implant has renamed itself to match the very daemon a defender would otherwise exclude from suspicion.

Sansec is publishing early because stores are being compromised right now.

Sansec Forensics Team 2026-09-05

Adobe is aware of CVE-2026-75650 being exploited in the wild.

Adobe PSIRT (APSB26-146) 2026-09-07

The fix ships as a hotfix, not as a full release.

Moving sessions to Redis or the database does not stop the attack. One merchant reported an attempt that failed against session storage and, eight seconds later, a second attempt that succeeded by using a file uploaded through Magento's custom options instead.

Sansec Forensics Team 2026-09-05

Successful exploitation allows unauthenticated attackers to achieve remote code execution and establish persistent backdoors on affected e-commerce servers via network access.

NCSC Switzerland / GovCERT.ch, Cyber Security Hub 2026-09-07
vulnerability08 Sep 04:39Zmulti-sourceOpen finding →

Co-occurring entities

Derived: referenced by the same focused operational entries (weekly summaries and report roundups don't count); ×N counts the shared entries.

Where this entity is cited

  • Deep dive2
  • Vulns1

Source distribution

  • adobe.com3 (8%)
  • support.citrix.com3 (8%)
  • bleepingcomputer.com2 (5%)
  • cert.europa.eu2 (5%)
  • community.citrix.com2 (5%)
  • labs.watchtowr.com2 (5%)
  • sansec.io2 (5%)
  • security-hub.ncsc.admin.ch2 (5%)
  • other21 (54%)
All cited sources (39)