Heap out-of-bounds read in Clickhouse’s LZ4 compression codec when parsing a malicious query. As part of the LZ4::decompressImpl() loop, a 16-bit unsigned user-supplied value (‘offset’) is read from the compressed data. The offset is later used in the length of a copy operation, without checking the lower bounds of the source of the copy operation.
[
{
"vendor": "yandex",
"product": "clickhouse",
"versions": [
{
"version": "unspecified",
"status": "affected",
"lessThan": "21.10.2.15-stable",
"versionType": "custom"
}
]
}
]