Skip to main content

ImageMagick CVE-2026-109279

| EUVDEUVD-2026-97581 LOW
Race Condition (CWE-362)
2026-10-12 VulnCheck GHSA-xg3c-hhwj-7xrg
2.0
CVSS 4.0 · Vendor: VulnCheck
View

Attack ChainAIDerived

Hypothetical attack flow derived from CVE metadata – not a confirmed exploit chain

  1. Access
    Gain local low-privileged execution
  2. Delivery
    Trigger concurrent security policy access
  3. Exploit
    Hit unsynchronized read/write race
  4. Execution
    Corrupt heap via buffer over-write
  5. Impact
    Crash application (denial of service)

Vulnerability Assessment

Weakness
CWE
OWASP Top 10:2025
A06:2025 - Insecure Design
ASVS 5.0
V15 - Secure Coding and Architecture Concurrency control, locking
MITRE ATT&CK

1 technique across 1 tactic: Privilege Escalation

The technique list with ATT&CK links and the kill-chain view is part of the Basic plan and up.

Exploitation Conditions

Exploitation requires local access and the ability to induce concurrent access to the ImageMagick security policy - specifically simultaneous reads and writes of the policy (e.g. via SetMagickSecurityPolicy) across multiple threads within a process embedding the library. The flaw lives in the unsynchronized policy_semaphore-guarded region of MagickCore/policy.c (magick/policy.c for ImageMagick6). Limiting factors: the attacker must already have local low-privileged code execution (PR:L, AV:L), the target application must perform multi-threaded policy modification at runtime (not a default for most single-policy deployments, which load policy once at startup), and success depends on winning a probabilistic timing race (AT:P), making reliable triggering non-trivial. Impact is limited to a crash - no confidentiality or integrity effect.

Impact

This is a genuinely low-priority issue despite being a memory-corruption bug. The CVSS 4.0 vector (AV:L/AC:L/AT:P/PR:L/UI:N) and the vendor-assigned base score of 2.0 align consistently: exploitation is local, requires low privileges (PR:L), and carries an Attack Requirement (AT:P) reflecting the non-deterministic timing window inherent to a race condition. Impact is confined to availability (VA:L) with no confidentiality or integrity consequence - the outcome is an application crash (DoS), not code execution, despite the underlying heap buffer over-write. No EPSS score, KEV listing, or public POC is present in the provided data, so there is no evidence of exploitation: no public exploit identified at time of analysis. The signals are internally consistent and do not conflict - a race-condition DoS requiring local concurrent access to the security policy is a robustness/hardening fix, not an urgent threat. Note the CVSS 4.0 vector uses AC:L with AT:P to model the race timing; a CVSS 3.1 translation would more naturally render this as AC:H since 3.1 has no Attack Requirement metric.

Exploit ScenarioDerived

A local, low-privileged user (or co-tenant process) interacts with a multi-threaded application embedding ImageMagick and induces simultaneous reads and writes of the security policy across threads. By repeatedly triggering concurrent SetMagickSecurityPolicy calls alongside policy reads, the attacker hits the unsynchronized window and corrupts the heap, crashing the process. No public exploit code is identified; the low attack complexity is offset by the probabilistic race window (AT:P).

Monitor Track and reassess. Why: LOW severity (CVSS 0.1-3.9).
Patch available 0.1% exploitation probability (EPSS)

Get an e-mail when this CVE is exploited, patched or re-scored. Free account.

Alert me

AnalysisAIv1 – Oct 12, 2026

Heap buffer over-write in ImageMagick versions before 6.9.13-57 (6.x) and before 7.1.2-32 (7.x) is triggered when the security policy is read and written concurrently by multiple threads, crashing the application and causing a denial of service. Exploitation requires local low-privileged code execution (CVSS:4.0 AV:L/PR:L) inside a process that embeds the library and that modifies its policy at runtime, combined with winning a probabilistic timing race (AT:P); the flaw yields no confidentiality or integrity impact, only availability loss. No public exploit code has been identified at time of analysis, and vendor-released patches are available as 6.9.13-57 and 7.1.2-32.

RemediationAI

Vendor-released patch: upgrade to ImageMagick 6.9.13-57 (6.x branch) or 7.1.2-32 (7.x branch), which add semaphore locking around the security policy access in MagickCore/policy.c; the corresponding upstream fixes are commit 12db6f04e895deae4537ead10c771a244607794a (7.x) and commit 9ddc71abea5cbe7d18164fa0f0077a105cab514f (6.x), and the advisory is GHSA-8x3v-wr32-qqh4. If upgrading is not immediately possible, the most effective compensating control is to eliminate concurrent policy mutation: load the policy exactly once during single-threaded initialization and never invoke SetMagickSecurityPolicy() from more than one thread while other threads are processing images, which removes the race entirely at the cost of losing runtime policy reconfiguration (a trade-off that is harmless for the default single-policy deployments). Where dynamic policy changes are required, serialize all policy updates behind an application-level mutex that is also held by any code path that reads the policy, accepting the added lock contention and the risk that third-party bindings calling the library directly still bypass it. Because the issue is local and requires existing low-privileged code execution plus a timing race, network-facing mitigations are of limited value; reduce the number of untrusted local users or untrusted embedded workloads as a supplementary measure. No exploit code has been observed, but patching should still be applied as routine maintenance rather than treated as urgent.

Affected VersionsENISA

ImageMagick 0 <6.9.13-57
ImageMagick 7.0.0-0 <7.1.2-32

Affected Packages

euvd imagemagick fix: 6.9.13-57, 7.1.2-32

Source: OSV (Open Source Vulnerabilities)

Affects your stack

Affects 1 package in euvd

Checking this CVE against your own stacks and servers is part of the Basic plan and up.

Technical ContextAI · show details

The weakness is CWE-362 (Concurrent Execution using Shared Resource with Improper Synchronization), a classic race condition. ImageMagick maintains a global security policy object protected by a semaphore named policy_semaphore, but the code path in MagickCore/policy.c (magick/policy.c in the ImageMagick6 branch), specifically around SetMagickSecurityPolicy(), performs reads and writes of the policy object without consistently holding that lock. The upstream commit diffs show the fix simply wrapping the affected region with LockSemaphoreInfo(policy_semaphore) and UnlockSemaphoreInfo(policy_semaphore). Because the policy structure is heap-allocated and mutated in place, two threads racing a read against a write can observe a partially updated structure and write past the end of an allocated buffer, corrupting heap memory. In practice the corruption manifests as an application crash rather than a code-execution primitive, which is consistent with the assessed CVSS:3.1 vector AV:L/AC:H/PR:L/UI:N/S:U/C:N/I:N/A:L. The attack surface is the C library API used by embedders (for example, image-processing services and language bindings that call into MagickCore), not the command-line tool's typical one-shot policy load at startup. CPE data identifies the affected component family as cpe:2.3:a:imagemagick:imagemagick across both the 6.x and 7.x release lines.

Know when Imagemagick 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

Vendor (VulnCheck) PRIMARY 2.0 LOW
CVSS:4.0/AV:L/AC:L/AT:P/PR:L/UI:N/VC:N/VI:N/VA:L/SC:N/SI:N/SA:N
vuln.today AI 2.5 LOW

Local concurrent-thread access (AV:L) winning a non-deterministic race (AC:H) with low in-process privileges (PR:L); only a crash results, so A:L and C:N/I:N.

3.1 AV:L/AC:H/PR:L/UI:N/S:U/C:N/I:N/A:L
4.0 AV:L/AC:L/AT:P/PR:L/UI:N/VC:N/VI:N/VA:L/SC:N/SI:N/SA:N

Primary rating from Vendor (VulnCheck).

CVSS VectorVendor: VulnCheck

Attack Vector
Local
Attack Complexity
Low
Attack Requirements
Present
Privileges Required
Low
User Interaction
None
Vulnerable system: Confidentiality
None
Vulnerable system: Integrity
None
Vulnerable system: Availability
Low
Subsequent system: Confidentiality
None
Subsequent system: Integrity
None
Subsequent system: Availability
None

DescriptionCVE.org

ImageMagick before 6.9.13-57 and 7.x before 7.1.2-32 lacks proper synchronization when the security policy is accessed, so simultaneous reads and writes of the policy by multiple threads trigger a race condition that causes a heap buffer over-write. An attacker able to induce concurrent security policy access can crash the application, causing a denial of service.

Threat Intelligence Overview

EPSS Score
0.1%
Top 100% exploitable
Prevalence
High
image-processing library embedded in countless web and server stacks
Data Quality
5 sources
Confidence: Medium

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.

SignalValue
Severity LOW
CISA KEV No
Public POC No
EPSS 0.1%
Patch available Yes
Active threat No
Deciding rule
LOW severity (CVSS 0.1-3.9)
What every action level means
Emergency Immediate action required. Criteria: CRITICAL + in CISA KEV (actively exploited) without patch, OR CRITICAL + EPSS > 30% without patch, OR CRITICAL + active threat signals without patch.
Act Now Prioritize within 24-48h. Criteria: in KEV with patch available, OR CRITICAL + public POC, OR HIGH + EPSS > 10%, OR CRITICAL + active threat, OR any CRITICAL severity.
This Week Schedule remediation this week. Criteria: HIGH severity (CVSS 7.0-8.9). Patch within normal change window.
This Month Plan within 30 days. Criteria: MEDIUM severity (CVSS 4.0-6.9), lower exploitation probability. Include in regular patch cycle.
Monitor Track and reassess. Criteria: LOW severity (CVSS 0.1-3.9), minimal exploitation risk. No immediate action needed.

SSVC AssessmentENISA

SSVC Decision· derived
Defer
Exploitation· derived
None
System Exposure· derived
Small
Automatable· derived
No
Human Impact· derived
Low

Priority Score

10
Low Medium High Critical
KEV: 0
EPSS: 0
CVSS: +10
PoC: 0
Weaponized: 0
Threat intel: 0
Gov advisory: 0

Attack Technique

Race conditions occur when multiple concurrent requests exploit the brief time gap between checking a condition and acting upon it (TOCTOU - Time of Check, Time of Use).

Denial of Service attacks render applications or systems unavailable by overwhelming resources or triggering failure conditions.

CVE-2016-3714 HIGH POC
8.4 May 05

The (1) EPHEMERAL, (2) HTTPS, (3) MVG, (4) MSL, (5) TEXT, (6) SHOW, (7) WIN, and (8) PLT coders in ImageMagick before 6.

CVE-2016-3718 MEDIUM POC
5.5 May 05

The (1) HTTP and (2) FTP coders in ImageMagick before 6.9.3-10 and 7.x before 7.0.1-1 allow remote attackers to conduct

CVE-2016-3715 MEDIUM POC
5.5 May 05

The EPHEMERAL coder in ImageMagick before 6.9.3-10 and 7.x before 7.0.1-1 allows remote attackers to delete arbitrary fi

CVE-2017-15277 MEDIUM POC
6.5 Oct 12

ReadGIFImage in coders/gif.c in ImageMagick 7.0.6-1 and GraphicsMagick 1.3.26 leaves the palette uninitialized when proc

CVE-2016-5841 CRITICAL POC
9.8 Dec 13

Integer overflow in MagickCore/profile.c in ImageMagick before 7.0.2-1 allows remote attackers to cause a denial of serv

CVE-2016-3717 MEDIUM POC
5.5 May 05

The LABEL coder in ImageMagick before 6.9.3-10 and 7.x before 7.0.1-1 allows remote attackers to read arbitrary files vi

CVE-2016-5118 CRITICAL
9.8 Jun 10

The OpenBlob function in blob.c in GraphicsMagick before 1.3.24 and ImageMagick allows remote attackers to execute arbit

CVE-2016-5689 CRITICAL POC
9.8 Dec 13

The DCM reader in ImageMagick before 6.9.4-5 and 7.x before 7.0.1-7 allows remote attackers to have unspecified impact b

CVE-2016-5690 CRITICAL POC
9.8 Dec 13

The ReadDCMImage function in DCM reader in ImageMagick before 6.9.4-5 and 7.x before 7.0.1-7 allows remote attackers to

CVE-2016-5691 CRITICAL POC
9.8 Dec 13

The DCM reader in ImageMagick before 6.9.4-5 and 7.x before 7.0.1-7 allows remote attackers to have unspecified impact b

CVE-2017-14138 CRITICAL POC
9.8 Sep 04

ImageMagick 7.0.6-5 has a memory leak vulnerability in ReadWEBPImage in coders/webp.c because memory is not freed in cer

CVE-2026-23876 CRITICAL POC
9.8 Jan 20

Heap buffer overflow in ImageMagick's XBM image decoder (ReadXBMImage) lets remote attackers write attacker-controlled d

This site uses cookies essential for authentication and security. No tracking or analytics cookies are used. Privacy Policy