---
id: CVE-2026-40504
title: Creolabs Gravity < 0.9.6 Heap Buffer Overflow via gravity_vm_exec
summary: >-
  Creolabs Gravity before 0.9.6 contains a heap buffer overflow vulnerability in
  the gravity_vm_exec function that allows attackers to write out-of-bounds
  memory by crafting scripts with many string literals at global scope.
  Attackers can …
severity: critical
cvss: 9.8
cvssVector: 'CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:H/A:H'
cvssSource: cna
cwe:
  - CWE-122
vendor: marcobambini
product: gravity
affected:
  - gravity < 0.9.6
  - gravity < 18b9195598d9b944376754c6d1ad76e38a4adca1
ssvc:
  exploitation: poc
  automatable: 'yes'
  technicalImpact: total
  timestamp: '2026-04-16T13:45:28.279979Z'
exploitAvailable: true
published: '2026-04-16'
updated: '2026-11-08'
sourceUpdated: '2026-11-08T14:02:50.663Z'
source: CVEORG
sourceUrl: 'https://www.cve.org/CVERecord?id=CVE-2026-40504'
references:
  - url: 'https://github.com/marcobambini/gravity/releases/tag/0.9.6'
    label: gravity 0.9.6 Release Notes
  - url: 'https://github.com/marcobambini/gravity/issues/437'
  - url: >-
      https://github.com/marcobambini/gravity/commit/18b9195598d9b944376754c6d1ad76e38a4adca1
  - url: >-
      https://www.vulncheck.com/advisories/creolabs-gravity-heap-buffer-overflow-via-gravity-vm-exec
tags:
  - cve.org
  - exploit-available
epss: 0.0064
epssPercentile: 0.50972
ingestedAt: '2026-11-08T14:51:22.444Z'
---

## Overview

Creolabs Gravity before 0.9.6 contains a heap buffer overflow vulnerability in the gravity_vm_exec function that allows attackers to write out-of-bounds memory by crafting scripts with many string literals at global scope. Attackers can exploit insufficient bounds checking in gravity_fiber_reassign() to corrupt heap metadata and achieve arbitrary code execution in applications that evaluate untrusted scripts.

## Affected

- `gravity < 0.9.6`
- `gravity < 18b9195598d9b944376754c6d1ad76e38a4adca1`

## Remediation

Refer to the linked advisories for vendor-supplied fixes and affected version ranges.
