모든 시스템 폴더에 대한 사용자 액세스를 제한해야 하는 내장형 시스템 개발 설정이 있습니다.
USB 스틱에 "/"(루트 폴더)를 가리키는 심볼릭 링크를 만들었고 파일 브라우저에서 이를 클릭하면 파일 관리자가 루트 디렉터리로 이동했습니다.
심볼릭 링크를 따르지 않는 것처럼 심볼릭 링크를 비활성화하는 mount 명령 옵션이 있습니까?
그렇다면 모든 파일 시스템이 동일한가요? 주로 fat32, NTFS 및 EXT3/4입니까?
답변1
사용자의 경우 심볼릭 링크 비활성화는 완전히 의미가 없습니다.할 수 있는access /
, 수천 가지 방법이 있습니다역방향 경로 탐색시스템에 대한 공격. 간단한 예: 파일 열기 대화 상자에 액세스할 수 있으면 입력만 하면 됩니다 /etc/passwd
. 일반 파일 브라우저에는 경로 등을 직접 입력할 수 있는 바로가기가 있습니다. HTML 페이지를 열 수 있는 경우 페이지에는 <frameset><frame src="file:///" /></frameset>
, 또는 link: 가 있을 수 있으며 <a href="../../../../../../../">foo</a>
브라우저에 / 디렉토리가 표시됩니다. 목록은 계속 이어지며, 여러분이 취하는 접근 방식(하나의 취약점을 차례로 연결)은 2000년대 초반에 컴퓨터 보안에 노출된 모든 사람이 "아, 이건 90년대 질문에서 나온 질문이군요!"라고 말할 취약점으로 이어지는 경우가 많습니다. " .
해결책은 간단합니다. 실현시키세요.불가능한사용자가 상호 작용하는 소프트웨어에 대한 실제 시스템을 보는 것도 가능합니다. 과거에는 전화로 할 수 있었지만 chroot
이제는 전화로 할 수 있습니다. 오늘날 Linux 커널 네임스페이스는 더 우수하고 광범위한 격리(소켓, 네트워크, PID, 사용자 등에 대한 액세스 불가 포함)를 허용합니다.
그래픽 인터페이스에 액세스할 수 있지만 호스트 시스템에 파일이 없는 사용자 소프트웨어를 배포하는 기성 방법은 bwrap
("Bubblewrap")이지만 다음과 같이 구축하는 것이 좋습니다.플랫 팩소프트웨어가 포함된 패키지이며 해당 패키지에 대한 파일 액세스 권한을 부여하지 않았습니다.