KDE: проблема с неофициальными глобальными темами и виджетами из каталога KDE Store после инцидента с удалением данных
Администрация проекта KDE предупредила пользователей о возможной проблеме безопасности данных после установки неофициальных глобальных тем оформления и виджетов к KDE из каталога KDE Store. Это произошло после инцидента с удалением всех личных файлов у одного пользователя, установившего тему оформления Grey Layout из каталога KDE Store. Эта тема насчитывала около 4000 загрузок и сейчас удалена из каталога.
Согласно анализу исследователей, проблемный код в тему была включён не по злому умыслу, а по ошибке, связанной с небезопасным использованием команды rm -rf.
По данным OpenNET, в глобальных темах оформления KDE предусмотрена возможность использования плазмоидов Plasma, запускающих произвольные команды, которые среди прочего могут использоваться для удаления файлов. При использовании в коде конструкций вида "rm -rf $ VAR/* ", может возникнуть ситуация, когда переменная $ VAR оказывается неинициализированной, что приведёт к фактическому выполнению команды "rm -rf /* ". Ранее похожие ошибки всплывали в скриптах инициализации Squid, Steam и bumblebee.
Произошедший инцидент связывается с вызовом кода из виджета PlasmaConfSaver, в котором имеется скрипт save.sh, выполняющий удаление старых файлов конфигурации, оставшихся после прошлой установки.
Файлы удаляются командой "rm - Rf $ configFolder", при том, что в коде отсутствует проверка установки переменной $ configFolder, значение которой передаётся через аргумент командной строки (configFolder=$2). Изначально код был рассчитан на использование в KDE 5, но из-за изменений в KDE 6 логика вызова обработчиков могла быть нарушена и в переменной оказалось значение, приводящее к удалению всех данных пользователя (например, вместо запуска "sh save. sh somepath/ ..." мог быть выполнен
Читать на habr.com

