
Консультация и proof-of-concept для CVE-2024-36057 — аутентифицированная инъекция OS-команд в библиотечном ПО Koha, демонстрирующая произвольное выполнение команд через специально сформированные имена ZIP-файлов.
CVE ID: CVE-2024-36057
Продукт: Koha Library Software
Тип уязвимости: Внедрение команд ОС (CWE-78)
Оценка CVSS: 9.8 (Критическая)
Уязвимые версии: Ниже 23.05.10
Авторы: Karolis Narvilas
Koha — это интегрированная библиотечная система с открытым исходным кодом. Уязвимость внедрения команд существует в функциональности загрузки обложек по адресу tools/upload-cover-image.pl. Приложение использует qx/unzip $filename -d $dirname/ для извлечения загруженных ZIP-архивов без очистки параметра filename.
Аутентифицированный пользователь с высокими привилегиями может создать ZIP-файл с вредоносным именем, содержащим символы обратных кавычек, для внедрения произвольных команд оболочки, которые выполняются на стороне сервера, когда пользователь нажимает «Process Images».
Воздействие: Удалённый аутентифицированный злоумышленник может использовать CVE-2024-36057 для выполнения произвольных команд ОС на базовом сервере, что приводит к полной компрометации системы, эксфильтрации данных и созданию постоянных бэкдоров или обратных оболочек.
https://{domain}/cgi-bin/koha/tools/upload-cover-image.plЗапрос:
POST /cgi-bin/koha/tools/upload-file.pl?temp=1 HTTP/1.1
Host: {domain}
Cookie: [High-Privilege Session]
Connection: close
------WebKitFormBoundaryP82Da5V6eaQOuBUT
Content-Disposition: form-data; name="file"; filename="execute`<INJECTED_COMMAND>`.zip"
Content-Type: application/x-zip-compressed
<zip file contents>
------WebKitFormBoundaryP82Da5V6eaQOuBUT--
