Тестирование оболочки KDE Plasma 5.10. Root-уязвимость в KAuth

Доступна для тестирования бета-версия пользовательской оболочки Plasma 5.10, построенной с использованием платформы KDE Frameworks 5 и библиотеки Qt 5 с применением OpenGL/OpenGL ES для ускорения отрисовки. Протестировать новый выпуск можно через Live-сборку от проекта openSUSE и сборки от проекта KDE neon. Пакеты для различных дистрибутивов можно найти на данной странице. Релиз ожидается 30 мая.

Основные улучшения:

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

    Кроме того, в менеджер задач добавлена возможность настройки размера пиктограмм при вертикальном размещении панели. Расширены средства идентификации и закрепления приложений, в том числе добавлено определение приложений, использующих StartupWMClass и perl-SDL. В обработчик файлового менеджера добавлена поддержка отображения списка типовых путей (Places), что позволяет при закреплении Dolphin в панели предоставить возможность быстрого перехода к часто используемым каталогам;

  • В качестве рабочего стола по умолчанию задействована оболочка Folder View. На рабочем столе теперь снова можно размещать ярлыки на файлы и каталоги. Из улучшений, появившихся в новой версии Folder View, отмечается режим быстрого перемещения между каталогами — в режиме drag&drop для раскрытия каталога достаточно подвести к нему перетаскиваемый ярлык, по аналогии с тем, как реализовано в Dolphin.

    Большое внимание также уделено оптимизации Folder View — ускорена прокрутка содержимого больших каталогов в крупных виджетах, снижены задержки при просмотре каталогов, значительно сокращено время запуска, сокращено потребление памяти. С учётом экономии свободного экранного пространства переработана компоновка сетки пиктограмм при отображении содержимого каталога.

    Добавлена возможность изменения размера виджетов на рабочем столе и их перемещения, по аналогии с аналогичными возможностями для окон. Проведена работа по улучшению эргономики операция с мышью — стало более предсказуемым поведение операций drag&drop и выделения областей. Переработан интерфейс переименования файлов и каталогов (улучшено управление с клавиатуры, реализовано окончание редактирования при клике вне текущей области). Унифицировано меню, отображаемое после перемещении файла — операции с файлами (копировать/переместить) теперь совмещены с действиями с виджетами (например, создать виджет на основе изображения).

  • На экран блокировки системы добавлены кнопки для управления воспроизведением мультимедийного контента. Например, перейти к следующей/предыдущей музыкальной композиции или приостановить воспроизведение теперь можно без разблокировки экрана. При переходе в спящий режим воспроизведение автоматически приостанавливается, что позволяет избежать казусов при выходе из спящего режима; 0_1494915235.png
  • В интерфейс поиска программ (KRunner) добавлен блок рекомендаций по установке приложений, отсутствующих в системе; 0_1494915591.png
  • В апплет управления громкостью для каждого из устройств добавлено меню, позволяющее закрепить устройство по умолчанию или переключить вывод на наушники; 0_1494915610.png
  • Улучшена поддержка сенсорных экранов: реализована возможность вызова виртуальной клавиатуры в хранителе экрана и интерфейсе входа в систему. Добавлена поддержка новых экранных жестов: показ автоматически скрываемой панели скользящим движением снизу вверх и переключение между окнами через листающих жест от левого края экрана; 0_1494917356.png
  • В настройки добавлен модуль для выбора оформления заставки, отображаемой в процессе загрузки; 0_1494917790.png
  • В Центр установки приложений (Discover) добавлены экспериментальные бэкенды для поддержки самодостаточных пакетов в форматах Flatpak и Snappy. Для интеграции приложений Flatpak c рабочим столом добавлен плагин xdg-desktop-portal-kde. Вместо ранее применяемого сервиса Ubuntu для оценки популярности контента, обмена рецензиями и комментариями, задействована система рейтингов GNOME (Open Desktop Rating); 0_1494918090.png
  • В уведомление о завершении копирования файла добавлено контекстное меню, предлагающее такие действия, как открытие файла при помощи выбранного приложения, переход в каталог с файлом и копирование файла;
  • В plasma-windowed добавлены средства для определения минимального размера апплета. Пиктограммы элементов панели (кнопки ланчеров и апплетов) теперь соответствуют выбранному в настройках размеру панели, что позволяет избежать отображения слишком больших пиктограмм, не соизмеримых с панелью;
  • В дополнение к секции «Недавно используемые приложения и документы» в меню приложений добавлен новый список «Наиболее часто используемые программы и документы»;
  • Переработан диалог ввода пароля в процессе аутентификации подключения к сети;
  • Архитектура хранителя экрана переработана и упрощена с целью повышения защищённости системы во время блокировки экрана. В Linux хранитель экрана теперь запускается в sandbox-окружении, изолированном при помощи технологии seccomp;
  • В оконном менеджере улучшена обработка ситуаций зависания приложений — если приложение не отвечает, связанное с ним окно затемняется;
  • Для дистрибутивов добавлена возможность блокировки и разблокировки оболочки из стартовых скриптов;
  • Продолжено усовершенствование работы с использованием протокола Wayland: В KWin добавлена поддержка корректного масштабирования для экранов с разной плотности размещения пикселей, например, при подключении HiDPI-экрана и обычного монитора. Реализована полноценная поддержка раскладок клавиатур, в том числе добавлен переключатель раскладки в системном лотке, горячие клавиши для смены раскладки, возможность смены раскладки в локальном контексте (для приложения, окна, виртуального рабочего стола), поддержка IPС-интерфейса для смены раскладки из приложений.

Дополнительно можно отметить выявление уязвимости (CVE-2017–8422) в KAuth, которая в сочетании с проблемами в привилегированных обработчиках может использоваться для запуска произвольных команд с правами root. Проблема связана с тем, что KAuth определял источник вызова операции на основе идентификатора сообщения DBus, который нельзя использовать в качестве ключа доступа. Таким образом подделав идентификатор можно отправить подставное сообщение для выполнения операции от имени службы, которой предоставлены расширенные полномочия. Прототип эксплоита продемонстрирован для повышения своих привилегий через обработчик smb4k (CVE-2017–8849), который не проверяет должным образом передаваемую команду монтирования, запуская поступающую через D-Bus команду с использованием suid-прослойки.

© OpenNet