CVE-2026-44031: Uncontrolled recursion in the DCMTK DICOM dataset parser allows unauthenticated remote denial of service
Uncontrolled recursion in DcmSequenceOfItems::read() and DcmItem::read() in the dcmdata library of OFFIS DCMTK 3.7.0 allows a remote, unauthenticated attacker to cause a denial of service (stack exhaustion and process crash) via a DICOM dataset containing deeply nested sequences (SQ elements). The dataset can be sent in a C-STORE request to storescp, dcmrecv, dcmqrscp, or any other DICOM service built on DCMTK, because the received dataset is parsed before any authentication takes place. Local tools such as dcmdump also crash when opening such a file. The issue is fixed in commit 885ff0f10372bd589b5f44cea974f28a3964cb0f, which adds a configurable sequence nesting depth limit (default 64).
Affected Software
Remediation
Recommended actions to resolve this vulnerability, in priority order.
- Upgrade
Upgrade
OFFIS DCMTKto a version that resolves this vulnerability.Patch 885ff0f10372bd589b5f44cea974f28a3964cb0f
Event History
Frequently Asked Questions
Which deployments are exposed to remote exploitation?
Any network-accessible DICOM service built on DCMTK that accepts and parses incoming datasets is exposed, including storescp, dcmrecv, and dcmqrscp. The malformed dataset is parsed before authentication, so an unauthenticated remote sender can trigger the crash.
Can local workflows be affected too?
Yes. Local DCMTK tools such as dcmdump can crash when they open a DICOM file containing deeply nested SQ elements.
What mitigation is available if updating is not immediately possible?
The available fix adds a configurable sequence nesting-depth limit, with a default limit of 64. The provided information does not describe a workaround for builds that do not include this change.
How can I tell whether an installation includes the fix?
Check whether the deployed DCMTK source or build includes commit 885ff0f10372bd589b5f44cea974f28a3964cb0f, which introduces the configurable sequence nesting-depth limit.