CVE-2026-70634
HighCVSS 8.1Exploitation Probability (EPSS)
Low risk34th percentile - higher than 34% of all known CVEs
Summary
TimescaleDB through 2.29.1 contains an out-of-bounds read in the Dictionary compression reverse row iterator, where the reverse path does not validate the Simple8b index, allowing attackers with DML access to a physical compressed relation to disclose backend memory including the shared buffer pool as a normal column value. Attackers can store a crafted datum and run a reverse-order scan, leading to memory disclosure that SQL access control does not cover.
Risk Assessment
Risk of sensitive data leakage from backend memory, potentially compromising data security and system integrity.
Recommendation
Update TimescaleDB to a version containing the fix (commit 517c13e). Restrict DML access to compressed relations and consider additional network-level protections.
Other vulnerabilities in TimescaleDB
See all- CVE-2026-70635High
TimescaleDB through 2.29.1 contains an out-of-bounds read vulnerability that allows authenticated attackers to cause query-result integrity failures or backend crashes by supplying a crafted Simple8b selector-11 value, which is stored in the signed int16 Arrow dictionary-index type and bypasses index validation checks in bulk text dictionary decompression. Attackers with direct DML access to a non-frozen physical compressed hypertable relation can trigger an out-of-bounds read, resulting in incorrect aggregation output, backend SIGSEGV, or PostgreSQL crash recovery.
- CVE-2026-70633Medium
In TimescaleDB through 2.29.1, fixed in commit 517c13e, there is an out-of-bounds read vulnerability in the Gorilla compression reverse row iterator that allows authenticated attackers to cause a denial of service by storing a crafted compressed datum with an internally inconsistent BitArray. Attackers with DML access to a compressed hypertable can trigger an unsigned integer wraparound in the reverse iterator bucket index computation, causing a read beyond the end of the bucket array, resulting in a SIGSEGV crash.
Original NVD description (English source)
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.

