CVE-2025-48707
Executive Summary
CVE-2025-48707 is a vulnerability in Stormshield Network Security (SNS) appliances that, under specific High Availability (HA) configurations, allows TPM (Trusted Platform Module) authentication information to be shared among administrators. This secret sharing can lead to unauthorized access or privilege escalation, as TPM secrets are intended to be unique per device and administrator. The vulnerability affects SNS versions prior to 5.0.1. No public proof-of-concept or exploit code is available, and the CVSS score is currently unassigned. The EPSS score is 0.0%, indicating low exploitation activity in the wild.
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 Score: 0.0 (Unassigned)
- Attack Vector (AV): UNKNOWN
- Attack Complexity (AC): UNKNOWN
- Privileges Required (PR): UNKNOWN
- User Interaction (UI): UNKNOWN
- Scope (S): UNKNOWN
- Confidentiality (C): UNKNOWN
- Integrity (I): UNKNOWN
- Availability (A): UNKNOWN
Threat Level: Medium (due to potential for secret sharing in HA environments, but no active exploitation observed).
Deep Dive & Mechanics
The vulnerability resides in the TPM authentication mechanism of Stormshield Network Security (SNS) appliances configured in High Availability (HA) mode. In such setups, TPM secrets (e.g., keys, certificates) that should be unique to each device and administrator are inadvertently shared across the HA cluster. This occurs because the HA synchronization process does not properly isolate TPM-bound credentials, allowing one administrator's authentication material to be accessible to others.
The root cause is a flaw in the HA state synchronization logic, where TPM-related data is replicated without proper access control checks. This can lead to:
- Unauthorized access to sensitive TPM-protected data.
- Privilege escalation if an administrator gains access to another's credentials.
- Potential lateral movement within the network if TPM secrets are used for authentication to other services.
Vulnerable vs. Patched Code
Vulnerable Code (SNS < 5.0.1): The HA synchronization module copies TPM authentication data (e.g., key handles, certificates) between nodes without verifying the target administrator's identity or permissions.
# Vulnerable HA sync function (pseudocode)
def sync_tpm_data(source_node, target_node):
tpm_data = source_node.get_tpm_authentication()
target_node.store_tpm_data(tpm_data) # No access control check
Patched Code (SNS >= 5.0.1): The patched version introduces a per-administrator TPM context that is not shared during HA synchronization. Each administrator's TPM data is isolated and only accessible to the originating user.
# Patched HA sync function (pseudocode)
def sync_tpm_data(source_node, target_node):
for admin in source_node.get_administrators():
tpm_data = source_node.get_tpm_authentication(admin)
target_node.store_tpm_data(admin, tpm_data) # Isolated per admin
Exploitation & Lab Setup
Red Team
Prerequisites:
- Access to two SNS appliances in an HA cluster (version < 5.0.1).
- Valid administrator credentials on one node.
Exploitation Steps:
- Log in to Node A as Admin1.
- Extract TPM authentication data (e.g., using
tpm2_getcapor similar). - Switch to Node B (HA peer) and log in as Admin2.
- Use the extracted TPM data from Admin1 to authenticate to services that trust that TPM identity.
No public exploit code is available.
Blue Team
Detection:
- Monitor for unusual TPM data access patterns across HA nodes.
- Alert on multiple administrators accessing the same TPM key handles.
- Review HA synchronization logs for unexpected TPM data transfers.
Hunting:
- Query for TPM-related events in system logs (e.g.,
tpm2_*commands). - Check for duplicate TPM certificates across different administrator profiles.
Indicators of Compromise (IOCs)
- Network: Unusual TPM-related traffic between HA nodes (e.g., port 443 or custom HA ports).
- Host: Multiple administrators sharing the same TPM key handle or certificate serial number.
- Logs: Repeated TPM authentication failures or unexpected TPM data synchronization events.
Detection Engineering
YARA Rule
rule CVE_2025_48707_TPM_Secret_Sharing {
meta:
description = "Detects TPM secret sharing in Stormshield SNS HA logs"
author = "Valters IT"
date = "2025-04-10"
reference = "CVE-2025-48707"
strings:
$tpm_sync = "TPM authentication data synchronized" nocase
$ha_sync = "HA sync completed" nocase
$admin_share = "shared among administrators" nocase
condition:
any of ($tpm_sync, $ha_sync, $admin_share)
}
Sigma Rule
title: Stormshield SNS TPM Secret Sharing Detection
id: 8a9b7c6d-5e4f-3a2b-1c0d-9e8f7a6b5c4d
status: experimental
description: Detects potential TPM secret sharing in Stormshield SNS HA environments
author: Valters IT
date: 2025-04-10
logsource:
product: stormshield
service: sns
detection:
selection:
EventID: 1001
Message|contains: 'TPM authentication data synchronized'
condition: selection
falsepositives:
- Legitimate HA synchronization of non-TPM data
level: medium
Suricata Rule
alert tcp $HOME_NET any -> $EXTERNAL_NET any (msg:"CVE-2025-48707 TPM Secret Sharing Attempt"; flow:to_server; content:"TPM authentication data"; nocase; sid:1000001; rev:1;)
Remediation & Mitigation
Immediate Actions:
- Upgrade all Stormshield SNS appliances to version 5.0.1 or later.
- If upgrade is not possible, disable HA synchronization of TPM data (if configurable).
- Review administrator accounts and TPM credentials for any signs of unauthorized sharing.
Long-term Measures:
- Implement strict access controls for TPM data in HA configurations.
- Regularly audit TPM authentication logs for anomalies.
- Monitor vendor advisories for related patches.
Workarounds:
- Use separate TPM modules per administrator (if supported).
- Limit HA cluster membership to trusted administrators only.
Valters IT
Securing Digital Frontiers