CTIPilot
AI-generated · no human review · verify critical claims against the linked source. how it works →
← Back to Daily brief 2026-09-28
NOTABLECVE-2019-18935exploitedupdatedNATOB2vulnerability

CVE-2019-18935, Progress Telerik UI for ASP.NET AJAX: a patched-since-2020 deserialization RCE still exploited, now via an in-memory Godzilla web shell registered on ASP.NET's VirtualPathProvider

AhnLab documents two attack cases still riding a Telerik deserialization bug, patched since 2020, into unpatched IIS servers

Analysis

AhnLab's ASEC documents two separate attack cases in Korea that both exploit CVE-2019-18935, a .NET deserialization vulnerability in the RadAsyncUpload file-upload feature of Telerik UI for ASP.NET AJAX, on unpatched IIS servers; successful exploitation executes code with the privileges of the w3wp.exe worker-process account (AhnLab ASEC, 2026-09-27). In the first case, the attacker used the flaw to launch a reverse shell, ran basic reconnaissance, and deployed modified Potato-family token-impersonation tools, including a web-shell-adapted build of SweetPotato, to escalate to SYSTEM. The intrusion culminated in a memory-resident, file-less web shell: a payload DLL locates the IIS worker thread that has already loaded Telerik.Web.UI, loads an embedded module into that process's memory, and registers a malicious request handler directly with ASP.NET's VirtualPathProvider extensibility point, so the web shell runs entirely in server memory with no .aspx file ever written to disk (AhnLab ASEC, 2026-09-27). The installed shell follows the Godzilla web-shell protocol: it distinguishes actions via an HTTP request's Type header, decrypts the request body, caches an attacker-supplied .NET payload in a cookie-bound session on first contact, and re-invokes that cached payload on each later request: an arbitrary, extensible in-memory .NET execution primitive that leaves minimal on-disk forensic trace.

The second case used the same CVE purely to launch a Rust-based reconnaissance scanner: it pulls a target list from an operator-controlled server, asynchronously probes each target across candidate URL paths for exposed WordPress installer/configuration pages, and reports any hit back to the operator over the Telegram Bot API, without dropping a reverse shell or web shell on the compromised Telerik host itself (AhnLab ASEC, 2026-09-27). ASEC notes this CVE has a long exploitation history: Blue Mockingbird's 2020 Monero-mining campaign, and a 2023 CISA/FBI/MS-ISAC advisory covering US federal-agency IIS servers, underscoring that a legacy, patched-since-2020 vulnerability in a still-deployed enterprise .NET web component remains a live, low-cost initial-access vector years after its fix shipped.

Detection and hunting. In process-creation telemetry, alert on w3wp.exe spawning cmd.exe or PowerShell with no corresponding legitimate application feature to explain it; the VirtualPathProvider registration technique means no new .aspx file appears on disk, so file-integrity monitoring over the web root will miss this shell entirely; in-memory module-loading detection (unusual modules loaded into the IIS worker process, or EDR visibility into .NET AppDomain assembly loads) is the telemetry class that catches it. ASEC says the installed shell tells its actions apart by the request's Type header, so a request carrying that header to a Telerik endpoint is worth checking (AhnLab ASEC, 2026-09-27). For the second case, look for outbound connections from an IIS host to api.telegram.org, a pattern with no legitimate counterpart on a production Telerik/IIS server.

Triage: SweetPotato and other Potato-family tools are dual-use privilege-escalation utilities also used in authorized red-team engagements, so the discriminator is context: their invocation from a web-shell process rather than an interactive administrative session, and their appearance immediately following exploitation of an unpatched RadAsyncUpload endpoint rather than a scheduled maintenance task.

Cited evidence

CVE-2019-18935 is a .NET deserialization vulnerability in RadAsyncUpload, a file upload feature; if exploited, a threat actor can perform remote code execution with the privileges of the w3wp.Exe process on an IIS web server.

It then registers a malicious request-handling function with ASP.NET's VirtualPathProvider, enabling the web shell to run in the web server process's memory without requiring a separate .Aspx file.

The scanner is a Rust-based tool that receives a list of targets from a remote server and asynchronously scans for URLs leading to WordPress installation and configuration pages.

AhnLab ASEC 2026-09-27

Progress Telerik UI for ASP.NET AJAX contains a deserialization of untrusted data vulnerability through RadAsyncUpload which leads to code execution on the server in the context of the w3wp.exe process.

CISA Known Exploited Vulnerabilities Catalog 2026-10-04

An attacker can break the RadAsyncUpload encryption (or have prior knowledge of your custom encryption keys) and stage a malicious request.

Progress Telerik knowledge base

Updates3

Correction

AhnLab's article of 2026-09-27 presents two separate attack cases in Korea and does not date the intrusions or call them unrelated; the wording above now follows it (AhnLab ASEC, 2026-09-27). ASEC says the first case's shell tells its actions apart by the request's Type header.

CISA's Known Exploited Vulnerabilities catalog has listed CVE-2019-18935 since 2021-11-03, and in catalog version 2026.10.04 its record marks the flaw as used in known ransomware campaigns; the catalog does not say when that flag was set (CISA KEV catalog, 2026-10-04). Because the CVE has been used in ransomware campaigns, a Telerik server where the web shell or the reconnaissance scanner turns up deserves a check for follow-on activity: assess what the w3wp.exe account and the SYSTEM-level escalation could reach, in addition to patching.

Improvement

Telerik's knowledge base states that on R1 2020 (2020.1.114) and later the attack is "Not possible through RadAsyncUpload, unless the attacker has access to your encryption keys", and recommends applying its RadAsyncUpload security settings on those versions too (Progress Telerik). The upgrade alone is therefore not the whole fix: a deployment whose encryption keys an attacker knows stays exposed where RadAsyncUpload type whitelisting is not enabled, Telerik's second prerequisite for the attack (Progress Telerik).

Improvement

Telerik's knowledge base lists two prerequisites for the attack: the attacker "can break the RadAsyncUpload encryption (or have prior knowledge of your custom encryption keys)", and the control's type whitelisting is not enabled. Telerik rates the encryption as breakable up to R2 2017 SP1 and as needing the keys from R2 2017 SP2; type whitelisting is unavailable before R3 2019 SP1, opt-in in that release and enabled by default from R1 2020 (2020.1.114), and Telerik recommends its RadAsyncUpload security settings on every version (Progress Telerik). AhnLab's mitigation is the upgrade to 2020.1.114 or later, the latest version where possible (AhnLab ASEC, 2026-09-27).

Sources3

Revision history

  1. Published 2026-09-28T0404Z-intel
  2. Correction 2026-10-07T0404Z-intel

    AhnLab presents two separate attack cases in Korea and does not date the intrusions or call them unrelated; the wording is corrected to match, and the shell's request header is stated as ASEC states it. CISA's Known Exploited Vulnerabilities catalog has listed CVE-2019-18935 since 2021-11-03 and, in version 2026.10.04, marks it as used in known ransomware campaigns; the catalog does not date that flag, so a server found exploited warrants a check for follow-on activity as a precaution, not only the patch.

    Changed: headline summary tags cves sources evidence sourcing_note body

  3. Improvement 2026-10-11T1307Z-audit

    Adds an Exposure line and the vendor's hardening step from Telerik's own knowledge-base article: on 2020.1.114 and later the RadAsyncUpload path stays closed only while the encryption keys are not known to the attacker, and Telerik recommends its security settings beyond the upgrade. The headline no longer calls the bug six years old; its fix is from 2020.

    Changed: headline sources body

  4. Improvement 2026-10-21T0800Z-audit

    Adds Telerik's two prerequisites for exploiting CVE-2019-18935, an upload encryption the attacker can break or keys it already knows plus RadAsyncUpload type whitelisting not enabled, and the per-version state of each, with 2020.1.114 the first release that enables whitelisting by default. The takeaway drops an interim handler restriction no source gives; AhnLab's mitigation is the upgrade.

    Changed: body cves evidence summary

PROVENANCE

AI-generated · no human review · this permalink is the shareable record for the finding · verify operationally critical claims against the linked primary source.