What is Adobe BlazeDS?
Adobe BlazeDS is an open-source Java remoting and messaging technology that enables communication between server-side Java applications and Adobe Flex/Flash clients using the AMF (Action Message Format) binary protocol. BlazeDS was bundled with Adobe ColdFusion (Adobe's Java-based web application platform), Adobe LiveCycle (an enterprise forms and document management platform), and was available as a standalone Java library for other applications. In the late 2000s, BlazeDS-based applications were widely deployed in enterprise environments for data-rich Flex/Flash front-end applications — financial dashboards, HR portals, and enterprise reporting tools.
Overview
CVE-2009-3960 is a medium-severity information disclosure vulnerability (CVSS 6.5) in Adobe BlazeDS, as used in Adobe ColdFusion and LiveCycle. BlazeDS's XML processing fails to prevent XML External Entity (XXE) injection — a class of attack where a malicious XML document references external entities to cause the server to read local files or make server-side HTTP requests. An attacker who can submit XML to a BlazeDS-powered endpoint can exfiltrate server-side files (including configuration files, credential stores, and application data) or perform server-side request forgery (SSRF). Adobe patched this in APSB10-05 (February 2010). The ransomwareUse: true designation and unusually long 6-month CISA remediation deadline reflect its use in sophisticated attack chains that culminated in ransomware or other high-impact outcomes.
Affected Versions
| Product | Vulnerable | Fixed |
|---|---|---|
| Adobe BlazeDS 3.2 and earlier | Affected | Upgrade to 3.2.0.3958 or apply APSB10-05 |
| Adobe ColdFusion 7, 8, 9 | Affected | Apply APSB10-05 |
| Adobe LiveCycle Data Services 2.5.x, 2.6.x, 3.0.x, 3.1.x | Affected | Apply APSB10-05 |
Technical Details
The vulnerability is an XML External Entity (XXE) injection flaw in BlazeDS's XML processing code. XXE is a class of attacks that exploit insecure XML parser configurations. The XML specification supports "external entities" — references to external resources (files, URLs) that the XML parser resolves and substitutes into the document during processing.
In the vulnerable BlazeDS code path:
- A client submits a request to a BlazeDS-powered web endpoint with a crafted XML body
- The XML body defines an external entity reference pointing to a local file (e.g.,
file:///etc/passwdor Windows credential files) or an internal network URL - BlazeDS's XML parser resolves the external entity — reading the referenced file or making the HTTP request
- The resolved content is included in the XML document and returned in the response or processed by the application
- An attacker can read arbitrary files accessible to the Java application server process, including ColdFusion or LiveCycle configuration files containing database credentials, LDAP passwords, and other secrets
The SSRF aspect allows attackers to use the vulnerable server as a proxy to scan and interact with internal network resources not directly accessible from the attacker's position.
Discovery
Identified through security research into XML processing in enterprise Java applications. APSB10-05 was released in February 2010, addressing the XXE issue in BlazeDS and the products that embed it. XXE was a widespread vulnerability class in Java XML libraries of this era — Java's XML parsers enabled external entity resolution by default, requiring explicit configuration to disable it.
Exploitation Context
The ransomwareUse: true flag and the unusually long 6-month remediation deadline reflect how this vulnerability was used in sophisticated multi-stage attacks:
- RSA SecurID breach (2011): CVE-2009-3960 was identified as one of the vulnerabilities used in the 2011 attack against RSA Security, which ultimately compromised the seeds for RSA SecurID two-factor authentication tokens. Attackers used the Flash/BlazeDS XXE to exfiltrate data from RSA's internal servers as part of the broader intrusion campaign.
- Credential harvesting as ransomware precursor: XXE attacks against ColdFusion and LiveCycle servers often yielded database credentials, LDAP passwords, and application service account passwords stored in server configuration files. Attackers used these credentials to pivot laterally through enterprise networks before deploying ransomware.
- Enterprise application targeting: ColdFusion and LiveCycle were widely deployed in financial services, healthcare, and government — sectors with high-value data and systems targeted by ransomware operators.
- Long remediation window: CISA's 6-month deadline (vs. the typical 2–3 week window for critical vulnerabilities) reflects the operational complexity of patching enterprise ColdFusion/LiveCycle deployments without disrupting business applications.
Remediation
- Apply APSB10-05: Update Adobe BlazeDS, ColdFusion, and LiveCycle to patched versions per the security bulletin.
- Upgrade to current ColdFusion: ColdFusion 7 and 8 are end-of-life. Upgrade to current supported ColdFusion versions.
- Disable BlazeDS XXE at the XML parser level: Configure Java XML parsers to disable external entity resolution by setting
XMLConstants.FEATURE_SECURE_PROCESSINGand disabling DTD processing. This is a defense-in-depth measure even on patched systems. - Review exposed BlazeDS endpoints: Audit which BlazeDS AMF/XML endpoints are accessible to untrusted clients and implement authentication and input validation at those endpoints.
- Monitor for XXE exploitation: Log and alert on XML processing errors and unusual file access patterns from the Java application server process — indicators of XXE exploitation attempts.
Key Details
| Property | Value |
|---|---|
| CVE ID | CVE-2009-3960 |
| Vendor / Product | Adobe — BlazeDS |
| NVD Published | 2010-02-15 |
| NVD Last Modified | 2025-10-22 |
| CVSS 3.1 Score | 6.5 |
| CVSS 3.1 Vector | CVSS:3.1/AV:N/AC:L/PR:N/UI:R/S:U/C:H/I:N/A:N |
| Severity | MEDIUM |
| CISA KEV Added | 2022-03-07 |
| CISA KEV Deadline | 2022-09-07 |
| Known Ransomware Use | ⚠️ Yes |
CVSS 3.1 Breakdown
Required Action
Timeline
| Date | Event |
|---|---|
| 2010-02-11 | Adobe released Security Bulletin APSB10-05 patching the BlazeDS XXE vulnerability in ColdFusion, LiveCycle, and BlazeDS |
| 2010-02-15 | CVE-2009-3960 published (2009 CVE number; published February 2010) |
| 2022-03-07 | CISA added to KEV with ransomwareUse: true designation; unusually long 6-month remediation deadline |
| 2022-09-07 | CISA BOD 22-01 remediation deadline |
References
| Resource | Type |
|---|---|
| NVD — CVE-2009-3960 | Vulnerability Database |
| CISA KEV Catalog Entry | US Government |
| Adobe Security Bulletin APSB10-05 | Vendor Advisory |