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