Intel

AIKIDO-2026-134853

psd-tools is vulnerable to Path Traversal

Path TraversalGHSA-r6c8-3pw3-m54g Published Aug 12, 2026

55

Medium Risk

This Affects:

PYTHONpsd-tools
1.17.1 - 1.17.4
Fixed in 1.18.0
Are you affected? Scan for Free

TL;DR

psd-tools resolves an external smart object by opening the fullPath value stored in the PSD file, and applies confinement only when the caller passes external_dir. Accessing SmartObject.data, or calling open() or save() without that argument, follows an absolute path taken from an untrusted document. A crafted PSD makes the library read any file the process can access and return its bytes to the caller. The fix confines external reads to external_dir or the current working directory by default and adds a trust_full_path opt-in for trusted files.

Who does this affect?

You are affected if you are using a version that falls within the vulnerable range and your application reads external smart objects from untrusted PSD files.

Background info

psd-tools is vulnerable to Path Traversal in versions 1.17.1 - 1.17.4.

How to fix this

Upgrade the psd-tools library to the patch version.