GHSA-72rm-x7xr-v679: Immich: Unauthenticated filesystem path injection (arbitrary directory write + recursive delete) in the machine-learning service
Immich is a high-performance self-hosted photo and video management solution. Prior to 3.3.0, the unauthenticated machine-learning /predict endpoint in machine-learning/immichml/main.py accepted an options object and passed its values into model construction in machine-learning/immichml/models/base.py without restricting security-sensitive parameters. An attacker with network access to the service could set cachedir to an arbitrary writable path, causing model downloads to write there and causing clearcache() to pass that path to shutil.rmtree() after selected model-loading failures. Depending on filesystem permissions and the selected path, this could modify files in mounted data locations or recursively delete an attacker-selected directory. The model-name allowlist prevents this issue from becoming arbitrary-model deserialization or code execution. This issue is fixed in version 3.3.0.
Affected Software
Remediation
Recommended actions to resolve this vulnerability, in priority order.
- Upgrade
Upgrade
Immichto a version that resolves this vulnerability.Fixed in 3.3.0