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

Progress Telerik UI for ASP.NET AJAX

product · product:progress-telerik-ui-for-asp-net-ajax single-source

Coverage
2
first 2026-08-23 → last 2026-10-11
Latest activity
2026-09-28
AhnLab documents two attack cases still riding a Telerik deserialization bug, patched since 2020, into…
Peak priority
notable
2 notable
Targets
public-sector
sectors: public-sector, technology, education · regions: europe
Sources cited
4
4 hosts

Action items (1)

Do-now tasks recorded on the entries about Progress Telerik UI for ASP.NET AJAX, newest first. Check the date before acting on an older one.

  • Check whether your web-application and WAF alerting suppresses or down-ranks HTTP 500 responses on ASP.NET endpoints; against ViewState deserialization the 500 with a cast exception is the success signal, so blanket 5xx suppression hides exactly the attempts that worked.
    2026-08-23Talos recovered the attacker's own generated…

Defender insights

What each entry about Progress Telerik UI for ASP.NET AJAX tells a defender to do, newest first.

2026-09-28NOTABLEexploitedAhnLab documents two attack cases still riding a Telerik deserialization bug, patched since 2020, into unpatched IIS servers

Exposure · triage · detection

2026-08-23NOTABLETalos recovered the attacker's own generated tradecraft notes from an open directory, and the most useful page is the one explaining how they confirm execution

Triage

Story timeline

  1. 2026-09-28CVE-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
    trending-vulnerabilitiesAhnLab documents two attack cases still riding a Telerik deserialization bug, patched since 2020, into unpatched IIS servers
  2. 2026-08-23An intrusion crew's AI-written playbook records why time-based blind testing fails against ViewState deserialization, and that a successful exploit returns HTTP 500, which is what most error-rate alerting is tuned to ignore
    researchTalos recovered the attacker's own generated tradecraft notes from an open directory, and the most useful page is the one explaining how they confirm execution

Hunting pivots

CVEs (exploited first)
Releases covered
Progress Telerik UI for ASP.NET AJAX ×2
ATT&CK techniques (12 across 8 tactics)

12 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: Scheduled Task
  • PersistenceScheduled Task/Job: Scheduled Task · Create Account: Local Account · Server Software Component: Web Shell
  • Privilege EscalationScheduled Task/Job: Scheduled Task · Exploitation for Privilege Escalation · Access Token Manipulation: Token Impersonation/Theft
  • StealthObfuscated Files or Information · Access Token Manipulation: Token Impersonation/Theft
  • Defense ImpairmentDisable or Modify Tools
  • Command and ControlApplication Layer Protocol: Web Protocols · Web Service · Ingress Tool Transfer

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-2019-18935-telerik-godzilla-webshell-virtualpathprovider · 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-2019-18935-telerik-godzilla-webshell-virtualpathprovider · 2026-08-23/uat-10147-agentic-ai-exploitation-oob-confirmation · ATT&CK page ↗

Execution TA0002

T1053.005Scheduled Task/Job: Scheduled Task×1

Adversaries may abuse the Windows Task Scheduler to perform task scheduling for initial or recurring execution of malicious code. There are multiple ways to access the Task Scheduler in Windows. The schtasks utility can be run directly on the command line, or the Task Scheduler can be opened through the GUI within the Administrator Tools section of the Control Panel. In some cases, adversaries have used a .NET wrapper for the Windows Task Scheduler, and alternatively, adversaries have used the Windows netapi32 library and Windows Management Instrumentation (WMI) to create a scheduled task. Adversaries may also utilize the Powershell Cmdlet `Invoke-CimMethod`, which leverages WMI class `PS_ScheduledTask` to create a scheduled task via an XML path.

Evidence: 2026-08-23/uat-10147-agentic-ai-exploitation-oob-confirmation · ATT&CK page ↗

Persistence TA0003

T1053.005Scheduled Task/Job: Scheduled Task×1

Adversaries may abuse the Windows Task Scheduler to perform task scheduling for initial or recurring execution of malicious code. There are multiple ways to access the Task Scheduler in Windows. The schtasks utility can be run directly on the command line, or the Task Scheduler can be opened through the GUI within the Administrator Tools section of the Control Panel. In some cases, adversaries have used a .NET wrapper for the Windows Task Scheduler, and alternatively, adversaries have used the Windows netapi32 library and Windows Management Instrumentation (WMI) to create a scheduled task. Adversaries may also utilize the Powershell Cmdlet `Invoke-CimMethod`, which leverages WMI class `PS_ScheduledTask` to create a scheduled task via an XML path.

Evidence: 2026-08-23/uat-10147-agentic-ai-exploitation-oob-confirmation · ATT&CK page ↗

T1136.001Create Account: Local Account×1

Adversaries may create a local account to maintain access to victim systems. Local accounts are those configured by an organization for use by users, remote support, services, or for administration on a single system or service.

Evidence: 2026-08-23/uat-10147-agentic-ai-exploitation-oob-confirmation · 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-2019-18935-telerik-godzilla-webshell-virtualpathprovider · 2026-08-23/uat-10147-agentic-ai-exploitation-oob-confirmation · ATT&CK page ↗

Privilege Escalation TA0004

T1053.005Scheduled Task/Job: Scheduled Task×1

Adversaries may abuse the Windows Task Scheduler to perform task scheduling for initial or recurring execution of malicious code. There are multiple ways to access the Task Scheduler in Windows. The schtasks utility can be run directly on the command line, or the Task Scheduler can be opened through the GUI within the Administrator Tools section of the Control Panel. In some cases, adversaries have used a .NET wrapper for the Windows Task Scheduler, and alternatively, adversaries have used the Windows netapi32 library and Windows Management Instrumentation (WMI) to create a scheduled task. Adversaries may also utilize the Powershell Cmdlet `Invoke-CimMethod`, which leverages WMI class `PS_ScheduledTask` to create a scheduled task via an XML path.

Evidence: 2026-08-23/uat-10147-agentic-ai-exploitation-oob-confirmation · ATT&CK page ↗

T1068Exploitation for Privilege Escalation×1

Adversaries may exploit software vulnerabilities in an attempt to elevate privileges. Exploitation of a software vulnerability occurs when an adversary takes advantage of a programming error in a program, service, or within the operating system software or kernel itself to execute adversary-controlled code. Security constructs such as permission levels will often hinder access to information and use of certain techniques, so adversaries will likely need to perform privilege escalation to include use of software exploitation to circumvent those restrictions.

Evidence: 2026-08-23/uat-10147-agentic-ai-exploitation-oob-confirmation · ATT&CK page ↗

T1134.001Access Token Manipulation: Token Impersonation/Theft×1

Adversaries may duplicate then impersonate another user's existing token to escalate privileges and bypass access controls. For example, an adversary can duplicate an existing token using `DuplicateToken` or `DuplicateTokenEx`. The token can then be used with `ImpersonateLoggedOnUser` to allow the calling thread to impersonate a logged on user's security context, or with `SetThreadToken` to assign the impersonated token to a thread.

Evidence: 2026-09-28/cve-2019-18935-telerik-godzilla-webshell-virtualpathprovider · ATT&CK page ↗

Stealth TA0005

T1027Obfuscated Files or Information×1

Adversaries may attempt to make an executable or file difficult to discover or analyze by encrypting, encoding, or otherwise obfuscating its contents on the system or in transit. This is common behavior that can be used across different platforms and the network to evade defenses.

Evidence: 2026-08-23/uat-10147-agentic-ai-exploitation-oob-confirmation · ATT&CK page ↗

T1134.001Access Token Manipulation: Token Impersonation/Theft×1

Adversaries may duplicate then impersonate another user's existing token to escalate privileges and bypass access controls. For example, an adversary can duplicate an existing token using `DuplicateToken` or `DuplicateTokenEx`. The token can then be used with `ImpersonateLoggedOnUser` to allow the calling thread to impersonate a logged on user's security context, or with `SetThreadToken` to assign the impersonated token to a thread.

Evidence: 2026-09-28/cve-2019-18935-telerik-godzilla-webshell-virtualpathprovider · ATT&CK page ↗

Defense Impairment TA0112

T1685Disable or Modify Tools×1

Adversaries may disable, degrade, or tamper with security tools or applications (e.g., endpoint detection and response (EDR) tools, intrusion detection systems (IDS), antivirus, logging agents, sensors, etc.) to impair or reduce visibility of defensive capabilities. This may include stopping specific services, killing processes, modifying or deleting tool configuration files and Registry keys, or preventing tools from updating. This may also include impairing defenses more broadly by disrupting preventative, detection, and response mechanisms across host, network, and cloud environments.

Evidence: 2026-08-23/uat-10147-agentic-ai-exploitation-oob-confirmation · ATT&CK page ↗

Command and Control TA0011

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-08-23/uat-10147-agentic-ai-exploitation-oob-confirmation · ATT&CK page ↗

T1102Web Service×1

Adversaries may use an existing, legitimate external Web service as a means for relaying data to/from a compromised system. Popular websites, cloud services, and social media acting as a mechanism for C2 may give a significant amount of cover due to the likelihood that hosts within a network are already communicating with them prior to a compromise. Using common services, such as those offered by Google, Microsoft, or Twitter, makes it easier for adversaries to hide in expected noise. Web service providers commonly use SSL/TLS encryption, giving adversaries an added level of protection.

Evidence: 2026-09-28/cve-2019-18935-telerik-godzilla-webshell-virtualpathprovider · 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-08-23/uat-10147-agentic-ai-exploitation-oob-confirmation · ATT&CK page ↗

Entries about Progress Telerik UI for ASP.NET AJAX (2)

2026-09-28 · view entry permalink →

NOTABLECVE-2019-18935exploitedupdatedNATOB2

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'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, patched by the vendor since version 2020.1.114 but still reachable on unpatched IIS deployments; 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.

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
Correctionrun 2026-10-07T0404Z-intelheadlinesummarytagscvessourcesevidencesourcing_notebody

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.

Improvementrun 2026-10-11T1307Z-auditheadlinesourcesbody

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.

Builds on: Talos recovered the attacker's own generated tradecraft notes from an open directory, and the…

vulnerability28 Sep 04:04Zsingle-sourceOpen finding →

2026-08-23 · view entry permalink →

NOTABLENATOB2

An intrusion crew's AI-written playbook records why time-based blind testing fails against ViewState deserialization, and that a successful exploit returns HTTP 500, which is what most error-rate alerting is tuned to ignore

Cisco Talos's companion piece to its SPECTRE implant analysis, published the same day, covers how UAT-10147 works rather than what it deploys, and it is unusually well-evidenced because the actor left an open, browsable directory on a download server holding its own operational material (Cisco Talos, 2026-08-20). That in itself is a reminder worth a sentence: an operator's exposed staging directory remains one of the richest intelligence sources available, and Talos found the campaign by following a compromised host's traffic to it. Talos's assessment is stated at its own confidence level: "Talos assesses with moderate-to-high confidence that UAT-10147 is among an emerging class of financially motivated intrusion operators leveraging agentic AI systems to operationalize offensive tradecraft at scale."

Scale and target selection. The recovered material includes roughly 170,000 candidate URLs, which the actor had split into seventeen files of about ten thousand each because scanning the whole list at once was inefficient. Initial access is mass exploitation of long-public flaws rather than anything novel: a Zimbra Collaboration Suite flaw Talos labels an unauthenticated remote code execution path (CVE-2022-27925), an AjaxPro deserialization flaw (CVE-2021-23758), a pair of Nacos flaws chaining an authentication bypass into script-engine code execution (CVE-2021-29441 and CVE-2021-29442), and the well-known Telerik UI for ASP.NET AJAX deserialization flaw (CVE-2019-18935). A Linux privilege-escalation set covers Dirty Pipe, Baron Samedit and four older kernel and utility flaws. Every one is years old and patched; the novelty is entirely in the automation wrapped around them.

The finding that transfers. The AI-generated playbook is a nine-section document for ViewState deserialization attacks, and its most defender-relevant passage is a lesson the actor learned the hard way. Talos quotes it directly: "Time-based blind testing (e.g., ping -n 10 or timeout /t 10) is entirely ineffective for confirming ViewState RCE." The reason follows in the next sentence: "Because Process.Start() is asynchronous and returns immediately, no execution delay is observable from the HTTP response." Having established that, the playbook pivots to out-of-band confirmation (HTTP callbacks issued through the certificate utility or PowerShell, and DNS lookups polled against a public webhook service) to establish that code ran.

The second half of that lesson is the one to act on. The playbook records that a successful ViewState exploitation attempt returns an HTTP 500 carrying a cast exception, which proves the signing key was correct and the payload deserialized. Talos states the consequence plainly: "This inverted success condition is a defensive blind spot: network monitoring tools that alert on 5xx responses may generate excessive noise, while the actual exploit succeeds silently in the error stream." Most mature web-monitoring configurations suppress or aggregate 5xx noise precisely because it is noisy; against this technique that suppression removes the successful attempts and leaves the failures.

Post-exploitation. Four AI-generated Python scripts automate baseline write-capability testing, web-root permission enumeration and physical-path discovery through the IIS management utility, implant deployment with post-transfer verification of file presence and size, two-step web-shell staging, and encoded reconnaissance. Privilege escalation uses a renamed potato-family binary staged under an innocuous archive name. The actor then adds both IIS module directories to Defender's exclusion list, redundantly (once through the PowerShell preference cmdlet and once by writing the exclusion paths directly into the registry) before dropping its search-fraud module, creating a rogue local account placed in both the Administrators and Remote Desktop Users groups, and registering a deceptive scheduled task named after a browser start routine, set to run at every logon with highest privileges. Talos names two AI tools installed on the actor's own management server. The first is DeepAudit, a source-code vulnerability-scanning framework, of which it says "Consequently, we assess with high confidence that they intend to use it to identify vulnerabilities within target website source code or third-party package libraries", a higher confidence than the campaign-level assessment, and worth keeping distinct from it. The second is PentestGPT, an AI-driven penetration-testing tool used to scan web servers and run proof-of-concept exploits. Victims named span government, university, media, technology and gaming organisations in Brazil, Bolivia, China, Canada and Vietnam.

Talos assesses with moderate-to-high confidence that UAT-10147 is among an emerging class of financially motivated intrusion operators leveraging agentic AI systems to operationalize offensive tradecraft at scale.

Time-based blind testing (e.g., ping -n 10 or timeout /t 10) is entirely ineffective for confirming ViewState RCE.

Because Process.Start() is asynchronous and returns immediately, no execution delay is observable from the HTTP response.

This inverted success condition is a defensive blind spot: network monitoring tools that alert on 5xx responses may generate excessive noise, while the actual exploit succeeds silently in the error stream.

Cisco Talos 2026-08-20
research23 Aug 05:00Zsingle-sourceOpen finding →
Sources: Cisco Talos

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

  • Research1
  • Vulns1

Source distribution

  • asec.ahnlab.com1 (25%)
  • blog.talosintelligence.com1 (25%)
  • cisa.gov1 (25%)
  • telerik.com1 (25%)