Immich
CVE-2026-105764
HIGH
Attack ChainAIDerived
Hypothetical attack flow derived from CVE metadata – not a confirmed exploit chain
-
AccessAuthenticate as non-admin user
-
DeliveryUpload crafted MSL/VIDEO-coder asset
-
ExploitStore delayed-marker SVG referencing its path
-
ExecutionSVG bypasses libvips, falls to ImageMagick
-
PersistThumbnail job triggers coder operations
-
ImpactExecute code in immich-server container
Vulnerability Assessment
| Weakness |
CWE
OWASP Top 10:2025
A05:2025 - Injection
ASVS 5.0
V1 - Encoding and Sanitization Code injection prevention, sandbox exec
MITRE ATT&CK
2 techniques across 2 tactics: Execution, Initial Access The technique list with ATT&CK links and the kill-chain view is part of the Basic plan and up. |
| Exploitation Conditions | Requires an authenticated non-admin account on the Immich instance (PR:L) with the ability to upload assets. Exploitation depends on crafting an SVG that bypasses libvips' native SVG loader so that processing falls through to ImageMagick, where attacker-controlled <image href> values reach ImageMagick's unrestricted MSL and VIDEO coder operations. The attack specifically requires storing one crafted asset and then referencing its path from a second 'delayed-marker' SVG, and is only triggered when server-side thumbnail generation runs over the malicious file. Limiting factors: the multi-step crafted-file chain (reflected as AC:H and the AT:P attack requirement), the need for a valid account, and dependence on an ImageMagick fallback with MSL/VIDEO coders reachable; instances running version 3.2.4 or later are not affected. |
| Impact | This is a genuine high-priority issue for exposed Immich instances but with meaningful preconditions. The provided CVSS 4.0 vector (7.7 High) shows a network vector (AV:N) with no user interaction (UI:N) and only low privileges required (PR:L), meaning any authenticated non-admin account can reach the vulnerable thumbnail path - a low bar on multi-user instances or those with self-registration enabled. Impact is full RCE in the immich-server container (VC:H/VI:H/VA:H, CWE-94), which is severe. Tempering this, the vector carries AC:H and AT:P: exploitation is non-trivial, requiring a crafted SVG that bypasses the libvips native loader and falls through to ImageMagick's MSL/VIDEO coders, plus a two-asset 'delayed-marker' technique. No EPSS score was provided, the CVE is not in CISA KEV (no active-exploitation signal), and no public PoC is indicated - so this is high-impact but not currently a mass-exploitation event. Subsequent-system impact is None (SC:N/SI:N/SA:N), so the blast radius is the container itself rather than an automatic pivot. Net: prioritize patching for any internet-reachable or multi-tenant Immich deployment, but note that exploitation complexity and the authentication requirement make opportunistic mass exploitation less likely than a targeted attack by a user who already holds an account. |
| Exploit ScenarioDerived | An attacker with an ordinary (non-admin) Immich account uploads a crafted SVG whose <image href> references a second previously-stored asset, abusing the fact that files rejected by libvips' native SVG loader fall through to ImageMagick's unrestricted MSL and VIDEO coders. When the server's thumbnail-generation code processes the delayed-marker SVG, the attacker-controlled coder operations execute code inside the immich-server container. No public exploit is identified at time of analysis, and the AC:H/AT:P metrics indicate the crafted-file chain is non-trivial to construct. |
Get an e-mail when this CVE is exploited, patched or re-scored. Free account.
Alert meAnalysisAIv1 – Oct 05, 2026
Remote code execution in Immich before 3.2.4 lets any authenticated non-admin user with upload permission run arbitrary code inside the immich-server container. The exploit chains two crafted SVG assets: a stored reference asset and a second 'delayed-marker' SVG whose attacker-controlled <image href> value reaches ImageMagick's unrestricted MSL and VIDEO coders after the file bypasses libvips' native SVG loader, with execution occurring when the server generates a thumbnail. The attack is high-complexity and depends on the ImageMagick fallback path being reachable with those coders enabled; version 3.2.4 contains the fix, and no public exploit code was identified at time of analysis.
RemediationAI
Vendor-released patch: 3.2.4. Upgrade to Immich 3.2.4 or later (https://github.com/immich-app/immich/releases/tag/v3.2.4); the vendor advisory is GHSA-q89f-h332-8q2h. If immediate upgrade is not possible, harden the ImageMagick fallback path by disabling the MSL and VIDEO coders in ImageMagick's policy.xml, which blocks the specific coder operations used here but may break legitimate processing of those formats; alternatively, ensure libvips handles SVG natively (e.g., via librsvg) so that SVGs never fall through to ImageMagick, or restrict asset-upload permission to trusted users - each measure reduces exposure but does not replace patching.
Affects your stack
Find out whether the stacks and servers you run are on an affected version.
Checking this CVE against your own stacks and servers is part of the Basic plan and up.
Technical ContextAI · show details
The flaw is CWE-94 code injection in Immich's server-side thumbnail pipeline. In server/src/repositories/media.repository.ts, uploaded assets are passed to libvips for thumbnail generation; libvips normally handles SVG through its native loader, but crafted SVGs can bypass that loader and cause the file to be handed to ImageMagick instead. Once in ImageMagick, attacker-controlled <image href> values are processed by the unrestricted MSL (Magick Scripting Language) and VIDEO coders, which permit scripted coder operations and file access. Because the two-step chain requires a stored reference asset plus a delayed-marker SVG, the published CVSS 4.0 vector (AV:N/AC:H/AT:P/PR:L/UI:N/VC:H/VI:H/VA:H/SC:N/SI:N/SA:N) and the independent CVSS 3.1 assessment (AV:N/AC:H/PR:L/UI:N/S:U/C:H/I:H/A:H) both reflect high complexity and an authenticated attacker.
Know when Immich gets its next vulnerability
- Watch products and get an email when something new is published
- Check this CVE against your own stack and servers
- Exploit and PoC references, threat intelligence from 22 sources
No credit card · 7-day full trial
Severity by source
CVSS:4.0/AV:N/AC:H/AT:P/PR:L/UI:N/VC:H/VI:H/VA:H/SC:N/SI:N/SA:N
Network-reachable upload (AV:N) by any authenticated user (PR:L), no interaction (UI:N), but a non-trivial multi-asset libvips-bypass chain (AC:H); full container RCE yields C:H/I:H/A:H with no scope change (S:U).
Primary rating from Vendor (GitHub_M).
CVSS VectorVendor: GitHub_M
DescriptionCVE.org
Immich is a high-performance self-hosted photo and video management solution. Prior to 3.2.4, an authenticated non-admin user could upload SVG files that thumbnail-generation code in server/src/repositories/media.repository.ts passed to libvips. Files that bypassed libvips' native SVG loader fell through to ImageMagick, where attacker-controlled <image href> values reached unrestricted MSL and VIDEO coder operations. By storing one crafted asset and referencing its path from a second delayed-marker SVG, an attacker could execute code in the immich-server container when thumbnail processing ran. This issue is fixed in version 3.2.4.
Technical POC Analysis
CWE-94 (code injection).
Full technical POC analysis - root cause, step-by-step exploitation and patch breakdown - is part of the Pro and Business plans.
Executive ViewAI
Immich, a self-hosted photo and video management platform, contains a high-severity remote code execution flaw in immich-server that allows users with upload permission to run arbitrary code inside the server container. This could let a malicious or compromised uploader access stored media, move laterally, or disrupt the service, affecting the confidentiality and integrity of organizational assets. Leadership should prioritize mitigation because the flaw requires only upload permission and no public exploit identified at time of analysis, but the potential for container compromise is significant.
Restrict upload permissions to trusted users; disable ImageMagick MSL and VIDEO coders if configurable; run immich-server in a least-privilege container with read-only filesystem and no host mounts; segment network access to Immich; monitor for anomalous SVG uploads and thumbnail generation. No vendor-released patch identified at time of analysis.
Threat Intelligence Overview
How this decision was reached
The engine reads each signal below and applies a fixed list of rules from top to bottom. The first rule that matches sets the recommended action – like a statement, every line is shown.
What every action level means
SSVC AssessmentENISA
Priority Score
Attack Technique
Code injection occurs when an application accepts user input and passes it directly into a language interpreter or evaluator without proper sanitization.
Remote Code Execution represents the critical moment when an attacker successfully runs arbitrary code on a target system without physical access.
Affected Products (CPE)CVE.org
Album ownership takeover in immich before 3.0.3 allows a user with shared-album editor access to escalate to full owner
Immich versions prior to 2.5.0 contain an improper access control flaw that allows any authenticated API key to escalate
Reflected cross-site scripting in Immich (commits 4ffa26c9 through pre-4eb1003) allows a single-click account takeover o
Authenticated partners in Immich through 3.3.1 can read metadata from assets stored in another user's Locked Folder - in
Locked asset visibility bypass in Immich through 3.1.0 exposes private photo and video assets to unauthorized viewers vi
Improper authorization in Immich's Shared Link Preview Handler (server/src/utils/access.ts, function checkSharedLinkAcce
Immich prior to version 2.6.0 discloses shared album passwords in cleartext within URL query parameters during authentic
Stored Cross-Site Scripting in Immich photo management platform versions prior to 2.7.0 enables authenticated attackers
Open redirect vulnerability in Immich prior to version 2.7.3 allows authenticated attackers to craft malicious shared al
NVD
CVE.org
EPSS
Vulnrichment
GitHub
Exploit-DB