CVE-2021-39228
Rust vulnerability analysis and mitigation

Overview

CVE-2021-39228 is a memory safety vulnerability discovered in Tremor and the tremor-script crate versions < 0.11.6 and > 0.7.2. The vulnerability occurs when using 'patch' or 'merge' operations on 'state' and assigning the result back to 'state', which could lead to maintaining references to memory that might have been freed (Tremor Advisory).

Technical details

The vulnerability affects two specific tremor-script language constructs: merge operations where the result is assigned back to the target expression and references the event (e.g., 'let state = merge state of event end'), and patch operations where the result is assigned back to the target expression and patch operations reference the event. The issue stems from an optimization that manipulated the target value in-place instead of cloning it, leading to potential access to freed memory regions (Tremor Advisory). The vulnerability has a CVSS v3.1 base score of 6.5 (Moderate) with vector: CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:L/I:L/A:N.

Impact

The vulnerability allows access to freed memory regions and potentially exposes their content over the network. When state data contains references to previous events that have been freed, these memory regions can be accessed and transmitted over TCP or HTTP, leading to potential information disclosure and integrity issues (Tremor Advisory).

Mitigation and workarounds

The issue has been patched in tremor-script version 0.11.6. If upgrading is not possible, a workaround is to avoid the optimization by introducing a temporary variable and not immediately reassigning to state (e.g., 'let tmp = merge state of event end; let state = tmp'). The fix removes the optimization and always clones the target expression of a Merge or Patch operation (Tremor Release).

Additional resources


SourceThis report was generated using AI

Related Rust vulnerabilities:

CVE ID

Severity

Score

Technologies

Component name

CISA KEV exploit

Has fix

Published date

CVE-2025-65807HIGH8.4
  • RustRust
  • sd
NoNoDec 10, 2025
CVE-2025-66627HIGH7.8
  • RustRust
  • typst
NoYesDec 09, 2025
CVE-2025-67487MEDIUM5.5
  • RustRust
  • static-web-server
NoYesDec 09, 2025
CVE-2025-66622LOW1.3
  • RustRust
  • matrix-sdk-base
NoYesDec 09, 2025
RUSTSEC-2025-0135N/AN/A
  • RustRust
  • matrix-sdk-base
NoYesDec 08, 2025

Free Vulnerability Assessment

Benchmark your Cloud Security Posture

Evaluate your cloud security practices across 9 security domains to benchmark your risk level and identify gaps in your defenses.

Request assessment

Get a personalized demo

Ready to see Wiz in action?

"Best User Experience I have ever seen, provides full visibility to cloud workloads."
David EstlickCISO
"Wiz provides a single pane of glass to see what is going on in our cloud environments."
Adam FletcherChief Security Officer
"We know that if Wiz identifies something as critical, it actually is."
Greg PoniatowskiHead of Threat and Vulnerability Management