루트 프로세스에 의해 생성된 창에는 X11에서 특별한 권한이 있습니까? X 서버와 창 관리자는 일반 사용자 프로세스에 의해 생성됩니다.
답변1
X11 창과 해당 창에서 실행되는 프로세스의 차이점을 이해했는지 확인하십시오.
창 자체에 대해서는 user414777의 답변을 참조하십시오. 창을 생성하는 프로세스(예: xterm
)는 루트로 실행될 때 추가 권한을 갖습니다.
그러나 차이점은 다음과 같습니다.
xterm -e bash
xterm 창이 주어지면 bash
둘 다 자신의 UID bash
로 실행됩니다.xterm
sudo xterm -e bash
창도 생성되지만 이제 bash
루트로 xterm
실행됩니다 bash
.
xterm -e sudo bash
again 을 사용하여 창을 생성 bash
하지만 이제 xterm
자신의 UID 및 bash
루트로 실행됩니다.
답변2
아니요.
정말로 X11을 의미한다면고객X11 창 대신 여전히아니요.
권한이 있는 X11 클라이언트에 대한 개념은 없으며 모두 동일하며 모든 X11 리소스에 액세스할 수 있습니다.
모든 클라이언트는 창에 그림을 그리거나 속성(예: 제목이나 아이콘)을 변경하는 것을 포함하여 모든 창에서 모든 작업을 수행할 수 있습니다. 모든 클라이언트는 키보드나 마우스를 사용할 수 있습니다. 모든 클라이언트는 XTest 확장을 사용하여 키보드 또는 마우스 입력을 위조할 수 있습니다.
그리고 모든 클라이언트는 다른 클라이언트를 쫓아낼 수 있습니다 XKillClient(3)
(Unix 시스템 호출과는 아무 관련 없음 kill(2)
).