CVE-2026-70634

Summary

TimescaleDB through 2.29.1, fixed in commit 517c13e, contains an out-of-bounds read in the Dictionary compression reverse row iterator (tsl/src/compression/algorithms/dictionary.c). The forward path validates the decoded index; the reverse path uses an assertion compiled out of release builds, leaving the 64-bit Simple8b index unvalidated and the read offset attacker-controlled. Attackers with DML access to a physical compressed relation can store a crafted datum and run a reverse-order scan. With a pass-by-value column type the out-of-bounds Datum is returned to the client as a normal column value, disclosing backend memory including the shared buffer pool, which SQL access control does not cover.

Affected Software

VendorProductVersion RangeStatus
timescaletimescaledb0 <= 2.29.1affected
timescaletimescaledb517c13e7cc6afadb4a7deaa7a5a5a29065e5b5a3unaffected

Weaknesses

  • CWE-129: CWE-129 Improper validation of array index
  • CWE-125: CWE-125 Out-of-bounds read

References