
[Предлагаемое описание] pdftoroff hovacui 1.1.0 подвержен: выполнению команд. Воздействие заключается в: выполнении произвольного кода (локально). Компонент: hovacui.c, строка 1574. Вектор атаки: чтобы использовать уязвимость, достаточно изменить переменную окружения HOME, указать некоторую команду как postsave, открыть PDF-файл и сохранить его. Была обнаружена уязвимость в hovacui, которая может позволить выполнение произвольных команд. строка 1574: 1574 system(command); Переменная окружения HOME считается доверенной, и атакующий может её подделать. Затем атакующий может ввести любую команду как
postsaveв конфигурационном файле, и останется только открыть PDF-файл и сохранить его. Это может привести к выполнению кода, отказу в обслуживании или повышению привилегий на машине.
[Дополнительная информация] hovacui Программа просмотра PDF hovacui для Linux framebuffer и X11 автоматически масштабирует блоки текста. Она предназначена для просмотра файлов на небольших экранах и особенно удобна для многостраничных документов.
hovacui является частью pdftoroff, ссылка: https://aur.archlinux.org/packages/pdftoroff
Путь к конфигурационному файлу формируется так
snprintf(configfile, 4096, "%s/.config/hovacui/hovacui.conf", 3358\t\t\tgetenv("HOME"));
Поэтому мы можем просто подделать HOME и создать свой собственный конфигурационный файл.
А чтобы добиться выполнения команд, нам достаточно сохранить PDF, потому что в функции savepdf() есть:
else { cairoui_printlabel(cairoui, output->help, NO_TIMEOUT, "saved to %s", path); if (post && output->postsave != NULL) { command = malloc(strlen(output->postsave) + 100); sprintf(command, output->postsave, fileno, fileno); system(command); free(command); } return CAIROUI_DONE; }}
output->postsave будет полностью контролироваться атакующим: if (sscanf(configline, "postsave %900[^
\r]", s) == 1) output.postsave = strdup(s); Чтобы сохранить, просто нажмите d, затем s веб-страница hovacui: http://sgerwk.altervista.org/hovacui/hovacui.html
[Тип уязвимости: другое] Выполнение команд
[Производитель продукта] pdftoroff
[Затронутая кодовая база продукта] hovacui - 1.1.0
[Затронутый компонент] hovacui.c, строка 1574
[Тип атаки] Локальная
[Воздействие: выполнение кода] true
[Воздействие: отказ в обслуживании] true
[Воздействие: повышение привилегий] true
[Векторы атаки] Чтобы использовать уязвимость, достаточно изменить переменную окружения HOME, указать некоторую команду как postsave, открыть PDF-файл и сохранить его.
[Обнаруживший] Maher Azzouzi
[Ссылка] http://hovacui.com http://pdftoroff.com http://sgerwk.altervista.org/hovacui/hovacui.html https://aur.archlinux.org/packages/pdftoroff