<?xml version='1.0' encoding='UTF-8'?>
<?xml-stylesheet href="/static/style.xsl" type="text/xsl"?>
<feed xmlns="http://www.w3.org/2005/Atom" xml:lang="en">
  <id>https://cve.radiocsirt.org/rss/recent/all/10</id>
  <title>Most recent entries from all</title>
  <updated>2026-10-13T04:24:40.458484+00:00</updated>
  <author>
    <name>Vulnerability-Lookup</name>
    <email>csirt@opendfir.org</email>
  </author>
  <link href="https://cve.radiocsirt.org" rel="alternate"/>
  <generator uri="https://lkiesow.github.io/python-feedgen" version="1.0.0">python-feedgen</generator>
  <subtitle>Contains only the most 10 recent entries.</subtitle>
  <entry>
    <id>https://cve.radiocsirt.org/vuln/cve-2026-32711</id>
    <title>CVE-2026-32711 — pydicom: Path traversal in FileSet/DICOMDIR ReferencedFileID allows file access outside the File-set root</title>
    <updated>2026-10-13T04:24:40.460545+00:00</updated>
    <content type="xhtml">
      <div xmlns="http://www.w3.org/1999/xhtml"><p><strong>Affected:</strong> pydicom</p>
<p>pydicom is a pure Python package for working with DICOM files. Versions 2.0.0-rc.1 through 3.0.1 are vulnerable to Path Traversal through a maliciously crafted DICOMDIR ReferencedFileID when it is set to a path outside the File-set root. pydicom resolves the path only to confirm that it exists, but does not verify that the resolved path remains under the File-set root. Subsequent public FileSet operations such as copy(), write(), and remove()+write(use_existing=True) use that unchecked path in file I/O operations. This allows arbitrary file read/copy and, in some flows, move/delete outside the File-set root. This issue has been fixed in version 3.0.2.</p></div>
    </content>
    <link href="https://cve.radiocsirt.org/vuln/cve-2026-32711"/>
  </entry>
  <entry>
    <id>https://cve.radiocsirt.org/vuln/ghsa-v856-2rf8-9f28</id>
    <title>GHSA-v856-2rf8-9f28 — pydicom has a path traversal in FileSet/DICOMDIR ReferencedFileID allows file access outside the File-set root</title>
    <updated>2026-10-13T04:24:40.460598+00:00</updated>
    <content type="xhtml">
      <div xmlns="http://www.w3.org/1999/xhtml"><p><strong>Affected:</strong> PyPI: pydicom</p>
<p>### Summary
A crafted `DICOMDIR` can set `ReferencedFileID` to a path outside the File-set root. `pydicom` resolves the path only to confirm that it exists, but does not verify that the resolved path remains under the File-set root. Subsequent public `FileSet` operations such as `copy()`, `write()`, and `remove()+write(use_existing=True)` use that unchecked path in file I/O operations. This allows arbitrary file read/copy and, in some flows, move/delete outside the File-set root.</p>
<p>### Details
Verified on `pydicom 3.1.0.dev0`.</p>
<p>Relevant logic is in `src/pydicom/fileset.py`:</p>
<p>- `RecordNode._file_id` converts `ReferencedFileID` directly to `Path(...)`
- `FileSet.load()` checks only `(root / file_id).resolve(strict=True)` to confirm existence
- `FileSet.load()` does not verify that the final resolved path is contained within the File-set root
- `FileInstance.path` returns `self.file_set.path / self.node._file_id`
- `FileSet.copy()` uses `shutil.copyfile(instance.path, dst)`
- `FileSet.write()` uses `Path(instance.path).unlink()` and `shutil.move(...)`</p>
<p>Because there is no containment check such as `resolved.relative_to(root.resolve(strict=True))`, a malicious `DICOMDIR` can reference:</p>
<p>- absolute paths such as `/etc/passwd`
- traversal paths such as `../...`
- syntactically conformant file IDs that escape via symlinks</p>
<p>This is not limited to obviously invalid VR input. Even when `pydicom` emits warnings for invalid `ReferencedFileID` values, the operation is not blocked. I also…</p></div>
    </content>
    <link href="https://cve.radiocsirt.org/vuln/ghsa-v856-2rf8-9f28"/>
  </entry>
</feed>
