# CVE-2026-109324: Grav memory exhaustion in image transforms

Source: https://junglewise.ai/threats/cve-2026-109324-grav-before-2-1-7-contains-a-denial-of-service-vulnerability  
Publisher: Junglewise Threat Intelligence, https://junglewise.ai/threats  
Published: 2026-10-12. Updated: 2026-10-16  
License: CC BY 4.0 with a link back

CVE-2026-109324 · Severity: medium · CVSS 6.5 · Published 2026-10-12

Grav is a flat-file content management system used to build websites. An authenticated author can upload oversized compressed images that exhaust server memory when referenced in page transforms, causing the website to become unavailable. Anonymous visitors can repeatedly trigger this by accessing the affected page, amplifying the damage from a single malicious upload.

Technologies: [Grav](https://junglewise.ai/threats/technologies/grav). Vendors: [Grav](https://junglewise.ai/threats/vendors/grav).

## Quick answers

**Is CVE-2026-109324 exploited in the wild?** No. Junglewise Threat Intelligence has no report of CVE-2026-109324 being exploited in the wild.

**How severe is CVE-2026-109324?** Medium severity, with a CVSS score of 6.5, published 12 October 2026.

**Which products and versions are affected?** Grav < 2.1.7.

**Is there a fix for CVE-2026-109324?** Yes: fixed in 2.1.7. Junglewise finds every place you run it, drafts the upgrade and applies it once you approve.

**How is CVE-2026-109324 attacked?** It is attacked over the network, in a web application.

**Am I affected by CVE-2026-109324?** Check whether you run Grav at an affected version. Junglewise does that check for you around the clock: connect your code, cloud and domains, and it matches new vulnerabilities like this one against what you actually run and tells you when one reaches you.

## How to fix

- Fixed in 2.1.7

## Technical details

The vulnerability exists in Grav's image transform handling for Twig and Markdown, where GD or Imagick decoders process the full source raster dimensions before resizing, without checking against the max_pixels limit. An authenticated media author uploads a highly compressed image; when any user references a transform that requires decoding, the uncompressed source exhausts memory. The issue affects Grav 2.x through 2.1.6; patched in 2.1.7 by validating source dimensions before adapter initialization.

## Affected products

- Grav Grav < 2.1.7

## Timeline

- 2026-09-23: disclosed: GitHub Security Advisory published
- 2026-10-12: advisory: NVD entry and CVE-2026-109324 published

## References

- [https://github.com/getgrav/grav/security/advisories/GHSA-h253-r5hw-95r5](https://github.com/getgrav/grav/security/advisories/GHSA-h253-r5hw-95r5)
- [https://www.vulncheck.com/advisories/grav-before-2.1.7-memory-exhaustion-via-oversized-image-transforms](https://www.vulncheck.com/advisories/grav-before-2.1.7-memory-exhaustion-via-oversized-image-transforms)

## Related threats

- [Grav allowlist bypass in Flex form processing](https://junglewise.ai/threats/cve-2026-116019-grav-2-0-15-before-2-2-13-contains-an-allowlist-bypass)
- [Grav improper access control in FlexDirectory::dynamicFlexField()](https://junglewise.ai/threats/cve-2026-114660-grav-from-2-0-0-before-2-2-5-contains-an-improper-access-control)
- [Grav information disclosure via Twig HTTP Basic credentials](https://junglewise.ai/threats/cve-2026-114657-grav-from-2-0-0-before-2-2-5-contains-an-information-disclosure)
- [Grav image pixel limit bypass allows resource exhaustion](https://junglewise.ai/threats/cve-2026-112782-grav-1-7-53-before-1-7-53-5-and-2-0-0-rc-8-before-2-2-2-contains)
- [Grav information disclosure via nested Git repositories](https://junglewise.ai/threats/cve-2026-109326-grav-before-2-1-7-contains-an-information-disclosure)
