내 계획은 다음과 같습니다.
모든 소켓에서 수신 대기를 끄고 다음을 사용하여 X를 시작합니다. (
Xorg -nolisten tcp -nolisten inet -nolisten inet6 -nolisten unix -nolisten local :0 -seat seat0 vt7 -novtswitch
이 구성 없이 X가 실행되는 것을 완전히 방지하는 방법은 모르겠지만)루트 없이 Xorg 실행 - GNOME이나 GDM을 사용하고 싶지 않다는 점을 고려하면 보기보다 어렵습니다. 현재 저는 LightDM과 XFCE를 사용하고 있습니다. SDDM에서 루트 없는 Xorg를 작동시키는 데 성공했지만 문제가 많습니다. 이 광기는 나를 다시 혼란스럽게 만든다.
특정 입력(키보드, 마우스, 화면, Xepyr)을 통해서만 통신을 허용하는 FireJail Master X 서버입니다. 따라서 이를 수행하기 위해 이러한 응용 프로그램/장치 이외의 모든 것이 X 서버와 직접 통신하는 것을 차단하여 GUI 응용 프로그램이 Xepyr의 프록시를 사용하도록 강제합니다. 또한 제로데이 공격을 방지하기 위해 모든 것을 샌드박스에 넣어야 합니다.
애플리케이션과 X 서버 모두에서 FireJail을 통해 seccomp 네임스페이스를 사용하여 모든 것을 추가로 격리해 보세요.
그러나 이러한 조치를 구현하는 현실은 제가 상상했던 것보다 훨씬 더 어렵습니다. FireJail과 Xephyr에서 여전히 키 로깅을 방지할 수 없는 것을 본 적이 있기 때문입니다. 위 목록에 추가해야 할 것이 있나요? 동일한 문제를 겪고 있는 다른 사람들을 돕기 위해 이 스레드에서 가능한 모든 수정 사항 목록을 컴파일할 수 있다면 좋을 것입니다.
X11 및 Xorg에서 키로깅(및 기타 문제)을 방지하기 위해 어떤 보호 장치가 마련되어 있습니까? 이것은 Linux를 실행하는 거의 모든 GUI 컴퓨터에 영향을 미치는 큰 문제입니다. 따라서 저는 이 문제가 매우 악명 높기 때문에 이를 방지하기 위해 수행할 수 있는 어떤 것도 믿을 수 없으며 믿을 수 없습니다.
정말로 모든 사람의 생각을 듣고 싶습니다.
답변1
일반적으로 "맬웨어"를 실행하지 않으면 이러한 문제로부터 보호받을 수 있습니다. Xorg를 실행해야 하고 이 특정 문제가 매우 우려되는 경우 TTY
단순히 여러 서버를 다른 서버에서 실행하는 것을 고려할 수 있습니다(로그인에서는 작동하지 않음).
아직 시도하지는 않았지만 startxfce4
여러 TTY
.Systemd는 현재 사용자당 여러 세션을 지원하지 않습니다.
따라서 systemd 없이 이러한 세션을 생성할 수 있습니다. 또한 별도의 파일이 필요합니다 .Xauthority
. 예를 들어 이것은 제가 생각할 수 있는 유일한 테스트되지 않은 솔루션입니다. 이것으로 당신은~해야 한다여러 데스크톱 세션 가져오기해서는 안 된다서로 의사소통이 가능합니다.
그러나 여러 사용자(세션당 사용자 1명)의 경우 최소한의 변경만으로 systemd를 계속 사용할 수 있습니다. 또한 최적은 아니지만 작동해야 합니다.
DE가 systemd 및 일반 구성을 사용하지 않도록 하려면 약간의 작업이 필요할 수 있으며 시스템이 아닌 시스템이 필요할 수도 있습니다.
그러나 "악성 프로그램"을 실행하려는 경우 이는 유일한/최소 관심사가 아니며 시스템 하드웨어 측면을 격리할 수 있습니다.