CVE-2025-0570
Executive Summary
CVE-2025-0570 is a high-severity memory corruption vulnerability in Sante PACS Server’s Web Portal, specifically during the parsing of DCM (DICOM) files. An authenticated remote attacker can trigger a denial-of-service (DoS) condition by sending a specially crafted DCM file. The vulnerability stems from improper validation of user-supplied data, leading to memory corruption. With a CVSS score of 6.5, this issue poses a significant risk to healthcare environments relying on PACS systems for medical imaging. No public exploit or patch is currently available, but the vulnerability is confirmed by ZDI (ZDI-CAN-25304).
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
Supply Chain & Package Security
This vulnerability is not related to NPM, PyPI, Go, or Ruby packages. It affects a proprietary medical imaging server (Sante PACS Server). No open-source supply chain implications exist.
CVSS Breakdown & Threat Level
- CVSS Score: 6.5 (Medium)
- Vector: CVSS:3.1/AV:N/AC:L/PR:L/UI:N/S:U/C:N/I:N/A:H
- Attack Vector: Network (AV:N)
- Attack Complexity: Low (AC:L)
- Privileges Required: Low (PR:L) – Authentication required
- User Interaction: None (UI:N)
- Scope: Unchanged (S:U)
- Confidentiality Impact: None (C:N)
- Integrity Impact: None (I:N)
- Availability Impact: High (A:H)
Threat Level: Medium. Exploitation requires authentication, but the impact is a complete denial of service, which can disrupt medical imaging workflows.
Deep Dive & Mechanics
The vulnerability exists in the DCM file parsing component of the Sante PACS Server Web Portal. DCM files are standard medical imaging files (DICOM format). The parser fails to properly validate the size or structure of data within the file, leading to a memory corruption condition (likely a buffer overflow or out-of-bounds write). When an authenticated attacker uploads or submits a malicious DCM file, the parser writes beyond allocated memory, corrupting heap or stack structures. This corruption causes the server process to crash, resulting in a denial-of-service condition.
Root Cause: Lack of bounds checking on user-supplied data during DCM file parsing.
Attack Flow:
- Attacker authenticates to the Sante PACS Web Portal.
- Attacker crafts a DCM file with oversized or malformed fields (e.g., a large pixel data element).
- Attacker uploads or submits the file via the web interface.
- The server parses the file, triggering memory corruption.
- The server process crashes, denying service to legitimate users.
Vulnerable vs. Patched Code
No patch is available. The vulnerable code likely resides in the DCM parsing library used by Sante PACS Server. A hypothetical fix would involve adding input validation and bounds checking before writing to memory buffers.
Vulnerable Code (Conceptual):
void parse_dcm_element(char *buffer, size_t size) {
char *data = malloc(1024);
// No bounds check on size
memcpy(data, buffer, size); // Potential overflow
}
Patched Code (Conceptual):
void parse_dcm_element(char *buffer, size_t size) {
if (size > 1024) {
// Reject oversized element
return;
}
char *data = malloc(1024);
memcpy(data, buffer, size);
}
Exploitation & Lab Setup
Red Team (Exploitation)
No public exploit code is available. However, a proof-of-concept can be developed by crafting a malformed DCM file. Use a DICOM library (e.g., pydicom in Python) to create a file with an oversized pixel data element.
Example Python script to generate a malicious DCM file:
import pydicom
from pydicom.dataset import Dataset, FileDataset
ds = Dataset()
ds.PatientName = "Test"
ds.PixelData = b"A" * 1000000 # Oversized pixel data
ds.save_as("malicious.dcm")
Lab Setup:
- Install Sante PACS Server (vulnerable version) in a VM.
- Authenticate to the web portal.
- Upload the malicious DCM file via the web interface.
- Observe server crash.
Blue Team (Defense)
- Monitor for unusual DCM file uploads with abnormally large sizes.
- Implement network segmentation to limit access to PACS servers.
- Use Web Application Firewalls (WAF) to inspect file uploads for malformed DICOM headers.
- Deploy host-based intrusion detection (HIDS) to detect crashes of the PACS server process.
Indicators of Compromise (IOCs)
- Network: DCM file uploads with pixel data exceeding typical sizes (e.g., > 100 MB for a single image).
- Host: Crash dumps of the Sante PACS Server process (e.g.,
sante_pacs_server.exeorsante_pacs_server). - Logs: Error logs indicating memory corruption or segmentation faults during DCM parsing.
- File: Malicious DCM files with abnormal element lengths (e.g.,
(7fe0,0010)Pixel Data with length > 2^32).
Detection Engineering
YARA Rule
rule CVE_2025_0570_Sante_PACS_DCM_Memory_Corruption {
meta:
description = "Detects malformed DCM files targeting CVE-2025-0570"
author = "Valters IT"
date = "2025-01-01"
reference = "https://nvd.nist.gov/vuln/detail/CVE-2025-0570"
strings:
$dicom_magic = "DICM" at 128
$pixel_data_tag = { 7F E0 00 10 } // Pixel Data tag
condition:
$dicom_magic and $pixel_data_tag and filesize > 10000000 // 10 MB
}
Sigma Rule
title: Sante PACS Server DCM Parsing DoS
id: 12345678-1234-1234-1234-123456789012
status: experimental
description: Detects crashes of Sante PACS Server due to malformed DCM files
logsource:
category: process_creation
product: windows
detection:
selection:
Image|endswith: '\sante_pacs_server.exe'
CommandLine|contains: 'crash'
condition: selection
falsepositives:
- Unknown
level: high
Suricata Rule
alert http $HOME_NET any -> $EXTERNAL_NET any (msg:"CVE-2025-0570 Sante PACS DCM Upload Attempt"; flow:to_server,established; content:"POST"; http_method; content:"/upload"; http_uri; content:"multipart/form-data"; http_header; pcre:"/Content-Disposition:\s*form-data;\s*name=\"file\"/i"; fileext:"dcm"; threshold:type both, track by_src, count 1, seconds 60; sid:1000001; rev:1;)
Remediation & Mitigation
- Immediate: Disable the DCM file upload functionality if not required, or restrict access to trusted users only.
- Short-term: Monitor vendor for patches. Implement network segmentation and strict access controls.
- Long-term: Replace Sante PACS Server with a patched alternative if vendor does not release a fix.
- Workaround: Use a reverse proxy to inspect and reject oversized DCM files before they reach the server.
Valters IT
DevSecOps & Cyber Threat Intelligence
What is this? Security researchers use these exact search queries on Shodan.io (a search engine for internet-connected devices) to find vulnerable systems globally. You can copy these dorks to see if your organization's IP space is exposed.