Перейти к основному содержанию
Перейти к основному содержанию

Журнал изменений безопасности

Исправлено в ClickHouse v25.1.5.5, 2025-01-05

CVE-2025-1385

Когда включена функция library bridge, clickhouse-library-bridge поднимает HTTP API на localhost. Это позволяет clickhouse-server динамически загружать библиотеку по указанному пути и выполнять её в изолированном процессе. В сочетании с функциональностью движка таблиц ClickHouse, позволяющей загружать файлы в определённые директории, сервер с некорректной конфигурацией может быть скомпрометирован злоумышленником, обладающим привилегиями доступа к обоим этим движкам таблиц, что позволяет ему выполнять произвольный код на сервере ClickHouse.

Исправление было внесено в следующие версии с открытым исходным кодом: v24.3.18.6, v24.8.14.27, v24.11.5.34, v24.12.5.65, v25.1.5.5

ClickHouse Cloud не затронут данной уязвимостью.

Благодарности: Arseniy Dugin

Исправлено в ClickHouse v24.5, 2024-08-01

CVE-2024-6873

Возможно перенаправить поток выполнения серверного процесса ClickHouse с неаутентифицированного вектора атаки, отправив специально сформированный запрос на нативный интерфейс сервера ClickHouse. Это перенаправление ограничено тем, что доступно в 256-байтовом диапазоне памяти в момент выполнения. Уязвимость была обнаружена через нашу программу bug bounty, известного публичного рабочего кода Proof of Concept для удалённого выполнения кода (RCE) не создано и не использовалось.

Исправление было внесено в следующие версии с открытым исходным кодом: v23.8.15.35-lts, v24.3.4.147-lts, v24.4.2.141-stable, v24.5.1.1763, v24.6.1.4423-stable

ClickHouse Cloud использует иную схему версионирования, и исправление этой уязвимости было применено ко всем экземплярам, работающим на версии v24.2 и новее.

Благодарности: malacupa (независимый исследователь)

Исправлено в ClickHouse v24.1, 2024-01-30

CVE-2024-22412

При переключении между пользовательскими ролями при использовании ClickHouse с включённым кэшем запросов существует риск получения некорректных данных. ClickHouse рекомендует пользователям, работающим с уязвимыми версиями ClickHouse, не использовать кэш запросов, если их приложение динамически переключается между различными ролями.

Исправление было внесено в следующие версии с открытым исходным кодом: v24.1.1.2048, v24.1.8.22-stable, v23.12.6.19-stable, v23.8.12.13-lts, v23.3.22.3-lts

ClickHouse Cloud использует другую схему версионирования, и исправление для этой уязвимости было применено в v24.0.2.54535.

Благодарности: Evan Johnson и Alan Braithwaite из команды Runreveal — дополнительную информацию можно найти в их записи в блоге.

Исправлено в ClickHouse v23.10.5.20, 2023-11-26

CVE-2023-47118

Уязвимость переполнения буфера кучи, затрагивающая нативный интерфейс, по умолчанию работающий на порту 9000/tcp. Злоумышленник, спровоцировав ошибку в кодеке сжатия T64, может привести к аварийному завершению процесса сервера ClickHouse. Эта уязвимость может быть использована без необходимости проходить аутентификацию.

Исправление было внесено в следующие версии с открытым исходным кодом: v23.10.2.13, v23.9.4.11, v23.8.6.16, v23.3.16.7.

ClickHouse Cloud использует другую схему версионирования, и исправление этой уязвимости было применено в версии v23.9.2.47475.

Благодарности: malacupa (независимый исследователь)

CVE-2023-48298

Уязвимость целочисленного переполнения в меньшую сторону (integer underflow) в кодеке сжатия FPC. Злоумышленник может использовать её, чтобы вызвать аварийное завершение процесса сервера ClickHouse. Эта уязвимость может быть использована без необходимости проходить аутентификацию.

Исправление было внесено в следующие версии с открытым исходным кодом: v23.10.4.25, v23.9.5.29, v23.8.7.24, v23.3.17.13.

ClickHouse Cloud использует другую схему версионирования, и исправление этой уязвимости было применено в версии v23.9.2.47475.

Благодарности: malacupa (независимый исследователь)

CVE-2023-48704

Уязвимость переполнения буфера кучи, затрагивающая нативный интерфейс, по умолчанию работающий на порту 9000/tcp. Злоумышленник, спровоцировав ошибку в кодеке Gorilla, может привести к аварийному завершению процесса сервера ClickHouse. Эта уязвимость может быть использована без необходимости проходить аутентификацию.

Исправление было внесено в следующие версии с открытым исходным кодом: v23.10.5.20, v23.9.6.20, v23.8.8.20, v23.3.18.15.

ClickHouse Cloud использует другую схему версионирования, и исправление этой уязвимости было применено в версии v23.9.2.47551.

Благодарности: malacupa (независимый исследователь)

Исправлено в ClickHouse 22.9.1.2603, 2022-09-22

CVE-2022-44011

В сервере ClickHouse была обнаружена уязвимость, связанная с переполнением буфера в куче. Злоумышленник, имеющий возможность загружать данные в сервер ClickHouse, мог вызвать сбой сервера ClickHouse, вставив некорректный объект CapnProto.

Исправление включено в версии 22.9.1.2603, 22.8.2.11, 22.7.4.16, 22.6.6.16, 22.3.12.19

Благодарности: Kiojj (независимый исследователь)

CVE-2022-44010

В сервере ClickHouse была обнаружена уязвимость, связанная с переполнением буфера в куче. Злоумышленник мог отправить специально сформированный HTTP-запрос на HTTP-эндпоинт (по умолчанию прослушивает порт 8123), что приводило к переполнению буфера в куче и аварийному завершению процесса сервера ClickHouse. Для этой атаки не требуется аутентификация.

Исправление включено в версии 22.9.1.2603, 22.8.2.11, 22.7.4.16, 22.6.6.16, 22.3.12.19

Благодарности: Kiojj (независимый исследователь)

Исправлено в ClickHouse 21.10.2.15, 2021-10-18

CVE-2021-43304

Переполнение буфера кучи в кодеке сжатия LZ4 в ClickHouse при разборе вредоносного запроса. Отсутствует проверка того, что операции копирования в цикле LZ4::decompressImpl и особенно произвольная операция копирования wildCopy<copy_amount>(op, ip, copy_end) не выходят за пределы целевого буфера.

Благодарности: JFrog Security Research Team

CVE-2021-43305

Переполнение буфера кучи в кодеке сжатия LZ4 в ClickHouse при разборе вредоносного запроса. Отсутствует проверка того, что операции копирования в цикле LZ4::decompressImpl и особенно произвольная операция копирования wildCopy<copy_amount>(op, ip, copy_end) не выходят за пределы целевого буфера. Эта уязвимость очень похожа на CVE-2021-43304, но уязвимая операция копирования находится в другом вызове wildCopy.

Благодарности: JFrog Security Research Team

CVE-2021-42387

Чтение за пределами буфера кучи в кодеке сжатия LZ4 в ClickHouse при разборе вредоносного запроса. В рамках цикла LZ4::decompressImpl() из сжатых данных считывается 16-битное беззнаковое значение, задаваемое пользователем («offset»). Это смещение затем используется в длине операции копирования без проверки верхней границы источника операции копирования.

Благодарности: JFrog Security Research Team

CVE-2021-42388

Чтение за пределами буфера кучи в кодеке сжатия LZ4 в ClickHouse при разборе вредоносного запроса. В рамках цикла LZ4::decompressImpl() из сжатых данных считывается 16-битное беззнаковое значение, задаваемое пользователем («offset»). Это смещение затем используется в длине операции копирования без проверки нижней границы источника операции копирования.

Благодарности: JFrog Security Research Team

CVE-2021-42389

Деление на ноль в кодеке сжатия Delta в ClickHouse при разборе вредоносного запроса. Первый байт сжатого буфера используется в операции взятия по модулю без проверки на равенство 0.

Благодарности: JFrog Security Research Team

CVE-2021-42390

Деление на ноль в кодеке сжатия DeltaDouble в ClickHouse при разборе вредоносного запроса. Первый байт сжатого буфера используется в операции взятия по модулю без проверки на равенство 0.

Благодарности: JFrog Security Research Team

CVE-2021-42391

Деление на ноль в кодеке сжатия Gorilla в ClickHouse при разборе вредоносного запроса. Первый байт сжатого буфера используется в операции взятия по модулю без проверки на равенство 0.

Благодарности: JFrog Security Research Team

Исправлено в ClickHouse 21.4.3.21, 2021-04-12

CVE-2021-25263

Злоумышленник, имеющий привилегию CREATE DICTIONARY, может прочитать произвольный файл за пределами разрешённого каталога.

Исправление вошло в версии 20.8.18.32-lts, 21.1.9.41-stable, 21.2.9.41-stable, 21.3.6.55-lts, 21.4.3.21-stable и более поздние.

Благодарности: Vyacheslav Egoshin

Исправлено в релизе ClickHouse 19.14.3.3, 2019-09-10

CVE-2019-15024

Злоумышленник, имеющий права записи в ZooKeeper и возможность запустить собственный сервер, доступный из сети, в которой работает ClickHouse, может создать специально подготовленный вредоносный сервер, который будет выступать в роли реплики ClickHouse и зарегистрировать его в ZooKeeper. Когда другая реплика будет забирать часть данных с этой вредоносной реплики, это может привести к тому, что clickhouse-server будет записывать данные по произвольному пути в файловой системе.

Благодарности: Eldar Zaitov из команды информационной безопасности Yandex

CVE-2019-16535

OOB read, OOB write и целочисленное переполнение (underflow) в алгоритмах декомпрессии могут быть использованы для осуществления RCE или DoS через нативный протокол.

Благодарности: Eldar Zaitov из команды информационной безопасности Yandex

CVE-2019-16536

Переполнение стека, приводящее к DoS, может быть спровоцировано вредоносным аутентифицированным клиентом.

Благодарности: Eldar Zaitov из команды информационной безопасности Yandex

Исправлено в релизе ClickHouse 19.13.6.1, 2019-09-20

CVE-2019-18657

Табличная функция url содержала уязвимость, позволявшую злоумышленнику внедрять произвольные HTTP-заголовки в запрос.

Благодарности: Nikita Tikhomirov

Исправлено в релизе ClickHouse 18.12.13, 2018-09-10

CVE-2018-14672

Функции для загрузки моделей CatBoost допускали обход путей (path traversal) и чтение произвольных файлов через сообщения об ошибках.

Авторы: Андрей Красичков из команды информационной безопасности Яндекса (Yandex Information Security Team)

Исправлено в ClickHouse Release 18.10.3, 2018-08-13

CVE-2018-14671

unixODBC позволял загружать произвольные разделяемые библиотеки (shared objects) из файловой системы, что приводило к уязвимости удалённого выполнения кода (Remote Code Execution, RCE).

Благодарности: Андрей Красичков и Евгений Сидоров из команды информационной безопасности Яндекса

Исправлено в релизе ClickHouse 1.1.54388 от 2018-06-28

CVE-2018-14668

Табличная функция remote допускала произвольные символы в полях user, password и default_database, что приводило к атакам типа Cross-Protocol Request Forgery.

Благодарности: Андрей Красичков из команды информационной безопасности Яндекса

Исправлено в релизе ClickHouse 1.1.54390, 2018-07-06

CVE-2018-14669

MySQL-клиент ClickHouse поддерживал функцию "LOAD DATA LOCAL INFILE", которая позволяла злоумышленному серверу MySQL читать произвольные файлы на подключённом сервере ClickHouse.

Благодарности: Андрей Красичков и Евгений Сидоров, Команда информационной безопасности Яндекса

Исправлено в релизе ClickHouse 1.1.54131, 2017-01-10

CVE-2018-14670

Неправильная конфигурация в deb-пакете могла привести к несанкционированному использованию базы данных.

Благодарности: Национальный центр кибербезопасности Великобритании (NCSC)