특정 구성원 그룹만 읽기 및 쓰기 작업을 수행할 수 있도록 procfs에 제한을 두려고 합니다.
커널 파일hidepid
와 에서 설정하여 gid
이 작업을 수행 할 수 있다고 가정해 보겠습니다 /etc/fstab
. 이는 악의적인 사용자가 procfs에서 읽고 쓰는 것을 제한하지만, 악의적인 사용자(제한된)가 /etc/fstab
fs 작업(예: 읽기 및 쓰기) 대신 syscall을 사용하여 profs의 콘텐츠에 액세스할 수 있을지 의심됩니다.
답변1
/proc
예커널과 사용자 공간 사이의 인터페이스와 그 모든 내용, 그리고 대부분은 다른 방법으로는 사용할 수 없습니다(프로세스 외부의 pid 디렉토리에 있는 항목의 경우). 따라서 hidepid=2
명령줄, 프로세스 환경 등의 정보를 다른 사용자에게 효과적으로 숨길 수 있습니다.
일부 정보는 부작용을 통해 결정될 수 있습니다. 예를 들어, 주어진 pid를 가진 프로세스의 존재는 호출 프로세스에 올바른 권한이 없는 경우 프로세스가 존재하지 않는 경우 신호 0: kill()
실패를 사용하여 해당 프로세스를 종료하려고 시도하여 확인할 수 있습니다. 마찬가지로 열려 있는 포트는 연결을 시도하여 확인할 수 있습니다.ESRCH
EPERM