Glances — это кроссплатформенный инструмент мониторинга системы с открытым исходным кодом. Система действий Glances позволяет администраторам настраивать команды оболочки, которые выполняются при превышении пороговых значений мониторинга. Эти команды поддерживают переменные шаблона Mustache (например, `{{name}}`, `{{key}}`, которые заполняются данными мониторинга во время выполнения.
Функция Secure_popen(), которая выполняет эти команды, реализует собственную обработку операторов канала, перенаправления и цепочки, разделяя командную строку перед передачей каждого сегмента в `subprocess.Popen(shell=False)`. До версии 4.5.2, когда отображаемое с помощью Mustache значение (например, имя процесса, точка монтирования файловой системы или имя контейнера) содержит метасимволы канала, перенаправления или цепочки, отображаемая команда разделяется непреднамеренным образом, что позволяет злоумышленнику, контролирующему имя процесса или имя контейнера, вводить произвольные команды. Версия 4.5.2 устраняет проблему.
Показать оригинальное описание (EN)
Glances is an open-source system cross-platform monitoring tool. The Glances action system allows administrators to configure shell commands that execute when monitoring thresholds are exceeded. These commands support Mustache template variables (e.g., `{{name}}`, `{{key}}`) that are populated with runtime monitoring data. The `secure_popen()` function, which executes these commands, implements its own pipe, redirect, and chain operator handling by splitting the command string before passing each segment to `subprocess.Popen(shell=False)`. Prior to 4.5.2, when a Mustache-rendered value (such as a process name, filesystem mount point, or container name) contains pipe, redirect, or chain metacharacters, the rendered command is split in unintended ways, allowing an attacker who controls a process name or container name to inject arbitrary commands. Version 4.5.2 fixes the issue.
Характеристики атаки
Последствия
Строка CVSS v3.1
Тип уязвимости (CWE)
Уязвимые продукты 1
| Конфигурация | От (включительно) | До (исключительно) |
|---|---|---|
|
Nicolargo Glances
cpe:2.3:a:nicolargo:glances:*:*:*:*:*:*:*:*
|
— |
4.5.2
|