
Имеют ли окна, созданные процессами root, какие-либо особые привилегии в X11? X-сервер и менеджер окон были созданы обычным пользовательским процессом.
решение1
Просто чтобы убедиться, что вы понимаете разницу между окном X11 и процессом, который выполняется в этом окне.
Для самого окна см. ответ пользователя user414777. Процесс, который создает окно (например xterm
, ), будет иметь дополнительные привилегии при запуске от имени root.
Однако обратите внимание на различия:
xterm -e bash
дает окно xterm с bash
. Оба bash
и xterm
запускаются под вашим собственным UID.
sudo xterm -e bash
также создаст окно с bash
, но теперь xterm
и bash
запустится от имени пользователя root.
xterm -e sudo bash
снова создает окно с bash
, но теперь оно xterm
работает под вашим собственным UID и bash
запускается от имени пользователя root.
решение2
Нет.
И если вы на самом деле имеете в виду X11клиентывместо окон X11, это все ещеНет.
Не существует понятия привилегированных клиентов X11, все они равны и имеют доступ к любому ресурсу X11.
Любой клиент может выполнять любые действия в любом окне, включая рисование на нем или изменение его свойств (например, заголовка или значка). Любой клиент может захватить клавиатуру или мышь. Любой клиент может подделывать ввод с клавиатуры или мыши с помощью расширения XTest.
И любой клиент может выгнать другого клиента с помощью XKillClient(3)
(не связанного с системным вызовом Unix kill(2)
).