%EC%9D%84%20%EA%B8%B0%EB%B0%98%EC%9C%BC%EB%A1%9C%20%EB%8B%A4%EB%A5%B8%20%EC%82%AC%EC%9A%A9%EC%9E%90%EC%97%90%EA%B2%8C%20%ED%94%84%EB%A1%9C%EC%84%B8%EC%8A%A4%EB%A5%BC%20%EC%88%A8%EA%B8%B0%EC%8B%9C%EA%B2%A0%EC%8A%B5%EB%8B%88%EA%B9%8C%3F.png)
Linux 시스템에서 특정 사용자 그룹에 대한 구성 프로세스를 숨길 수 있습니까?
예: 그룹 X의 사용자는 ps/top 또는 /proc에서 그룹 Y의 사용자가 소유한 프로세스를 볼 수 없습니다.
SELinux를 사용하여 이러한 설정을 구성할 수 있습니까?
(유사한 기능을 가진 흥미로운 grsecurity 패치 세트가 막연하게 기억나지만 IIRC는 더 일반적이며 사용자 정의 커널을 유지 관리할 필요 없이 기본 Linux 배포판을 구성하고 싶었습니다.)
편집하다:더 잘 설명하자면,솔라리스 10에도 비슷한 기능이 있습니다. 이 예는 그다지 일반적이지는 않지만 ps 등에서 자신의 프로세스에 대한 정보만 볼 수 있도록 사용자 또는 특정 사용자를 구성하는 것이 가능합니다.
답변1
실제로 SELinux는허용될 것 같습니다그런구성:
처음부터어떻게:
이번에는 해당 프로세스가 위치한 도메인에 관계없이 시스템의 모든 프로세스를 볼 수 있습니다. sysadm_t 도메인에 있는 동안 user_t 도메인이 액세스할 수 없는 다른 도메인에 액세스할 수 있습니다.
두 번째부터 시작하세요어떻게:
세 번째 줄에서는 Staff_t가 권한이 없는 사용자 도메인에서 ps를 실행하고 프로세스를 볼 수 있도록 허용합니다. Staff_t는 ps를 실행하고 user_t 및 기타 사용자 도메인(있는 경우)의 모든 내용을 볼 수 있지만 user_t는 그렇지 않습니다.
답변2
루트킷이 없거나 특별히 이 동작을 허용하도록 해킹된 커널이 없으면 사전 패키지된 옵션이 없습니다.
이러한 프로세스가 액세스 권한이 있는 코드에서 시작되면 프로그램에 전달된 argv[0] 인수를 변경하면서 이를 다시 컴파일할 수 있습니다. 이는 이름을 좋은 이름으로 효과적으로 변경하여 top 또는 ps 등을 확인하는 사람으로부터 "숨겨집니다".