
Proof-of-concept for CVE-2026-23009 demonstrating unauthenticated DICOM image injection into vulnerable PACS servers using pynetdicom, with a simulated C-STORE SCP and exploit script.
# dicom_server_sim.py - DICOM C-STORE SCP with no AE title check
from pynetdicom import AE, evt, AllStoragePresentationContexts
def handle_store(event):
ds = event.dataset
# No authentication, accepts any image from any remote
ds.save_as(f"/tmp/{ds.SOPInstanceUID}.dcm")
return 0x0000
handlers = [(evt.EVT_C_STORE, handle_store)]
ae = AE()
ae.supported_contexts = AllStoragePresentationContexts
ae.start_server(('', 11112), evt_handlers=handlers)
A medical imaging server (PACS) accepts DICOM images from any remote host without authentication. An attacker on the hospital network can inject fabricated images containing malicious pixel data or patient information, leading to misdiagnosis or compromise of downstream systems.
pip install pynetdicom
python dicom_server_sim.py
python exploit_dicom_inject.py
The file appears in /tmp.