Critical 9.8 Actively Exploited

AjaxPro RCE exploited in the wild (CVE-2021-23758) [PoC]

CVE-2021-23758

By Yazoul AI · automated

CVE-2021-23758: AjaxPro.2 deserialization RCE lets unauthenticated attackers execute code (CVSS 9.8, KEV). Remove the library or upgrade to a patched fork immediately.

Affected: Ajaxpro.2 Project Ajaxpro.2 Michaelschwarz Ajax.Net Professional

Actively exploited in the wild - CVE-2021-23758 is a critical deserialization vulnerability in all versions of the ajaxpro.2 package for .NET that grants unauthenticated remote code execution on the host server. This vulnerability is confirmed on CISA’s Known Exploited Vulnerabilities list, and with an EPSS score of 89.1%, exploitation attempts are expected within days.

Overview

CVE-2021-23758 affects every version of ajaxpro.2, a widely used .NET library that enables AJAX calls between web browsers and ASP.NET applications. The vulnerability stems from the library’s handling of serialized .NET objects in incoming HTTP requests. Because the deserialization process does not validate the data being processed, an attacker can craft a malicious payload that forces the server to instantiate arbitrary .NET classes.

The critical issue is not the library’s AJAX functionality, but its use of JavaScriptSerializer in a way that allows type inference from untrusted input. An attacker who can reach the AJAX endpoint can submit a serialized object that, when deserialized, triggers dangerous .NET gadgets. These gadgets can execute operating system commands, write files, or otherwise compromise the server with the privileges of the application pool.

The CVSS score of 9.8 reflects the severity: the attack requires no authentication, no user interaction, and can be launched over the network, though it does require some technical sophistication due to the high attack complexity. Successful exploitation gives the attacker complete control over the affected server.

Remediation

The original ajaxpro.2 package is no longer maintained and no patched version exists. Immediate action is required:

  • Remove or replace ajaxpro.2: Migrate to a maintained fork or an alternative AJAX library for ASP.NET. The community fork “AjaxPro” on GitHub includes fixes for this vulnerability.
  • Apply a WAF rule: If immediate removal is not possible, deploy a Web Application Firewall rule that blocks requests containing suspicious serialized .NET payloads bound for the AJAX handler.
  • Restrict network access: Limit access to AJAX endpoints to trusted networks only, reducing the attack surface.
  • Audit for compromise: Check affected servers for signs of post-exploitation activity, such as unexpected processes, new user accounts, or outbound connections to unfamiliar IPs.

For more context on recent exploitation campaigns, see the latest security news and review breach reports for indicators of compromise associated with this bug.

Security Insight

The persistence of CVE-2021-23758 in the KEV catalog despite its 2021 disclosure underscores a pattern: abandoned .NET libraries remain a silent liability in legacy applications. Unlike actively maintained frameworks where patches arrive within weeks, this vulnerability has no upstream fix, leaving every deployment permanently exposed. This mirrors the Log4j crisis - a ubiquitous library becomes a systemic risk when maintainers step away. Organizations must inventory third-party dependencies not just for known vulnerabilities, but for signs of project abandonment, and treat unmaintained components as technical debt that demands replacement, not monitoring.

Further Reading

Share:

Never miss a critical vulnerability

Get real-time security alerts delivered to your preferred platform.

Am I Affected by CVE-2021-23758?

Pick an ecosystem, paste your installed version, and we'll compare it against the fixed version published on OSV.dev. Browser-only — nothing is sent to a server.

Heuristic comparison only. Always cross-check against the vendor advisory before making patching decisions.

Metasploit Modules

Weaponized exploit code — authorized use only

The Metasploit Framework modules below are production-ready exploit code maintained by Rapid7. Unlike random GitHub PoCs, these are vetted by Metasploit maintainers and integrated into a point-and-click exploitation framework used by red teams worldwide. The presence of an MSF module means this CVE is trivially exploitable at scale — patch immediately.

Authorized use only. Run only against systems you own or have explicit written permission to test. Using exploit code against systems you do not own is illegal in most jurisdictions and violates Yazoul's terms of use.

Module Source
exploit/windows/http/ajaxpro_deserialization_rce View source

1 Metasploit module indexed for this CVE. Source: rapid7/metasploit-framework.

Public PoC References

Unverified third-party code

These repositories are publicly listed on GitHub and have not been audited by Yazoul Security. They may contain malware, backdoors, destructive payloads, or operational security risks (telemetry, exfiltration). Treat them as hostile binaries. Inspect source before execution. Run only in isolated, disposable lab environments (offline VM, no credentials, no production data).

Authorized use only. This information is provided for defensive research, detection engineering, and patch validation. Using exploit code against systems you do not own or do not have explicit written permission to test is illegal in most jurisdictions and violates Yazoul's terms of use.

Repository Stars
numanturle/CVE-2021-23758-POC ★ 17

Showing 1 of 1 known references. Source: nomi-sec/PoC-in-GitHub.

Related Advisories

Never Miss a Critical Alert

CVE advisories, breach reports, and threat intel — delivered daily to your inbox.