noexec가있을 때 nosuid로 파티션을 마운트해야하는 이유는 무엇입니까?


10

Fedora Core를 사용하고 있습니다. 사용자가 일부 데이터를 게시하는 파티션 / 데이터를 만들어야합니다 (모두 r + w 권한이 있음). 따라서 보안을 위해 실행 불가능하게 만들어야합니다.

Linux 보안 에서 마운트하는 동안 / data에 대해 활성화 noexec되어 nosuid있어야 한다는 것을 알고 있습니다 . 이해 noexec하고 활성화했습니다. 그러나 nosuid활성화 하지 않았습니다 .

모두 어떤 이유 noexecnosuid/ 데이터를 사용하도록 설정해야합니다? 단지 필요하지 않습니다 noexec충분할를 - 사용자가 스크립트와 다른 프로그램을 실행할 수 없습니다 및 것이기 때문에 nosuid중요하지 않습니다?


당신은 그렇게 생각할 것 nosuid입니다. 이미 활성화 된 nosuid경우에도 활성화해야한다고 권장하는 참조를 인용 할 수 있습니까 noexec?
Celada

실제로 나는 모든 곳에서 그것을 보았다. 심지어 CIS 벤치 마크에서도 / tmp 파티션에서 다른 검사를 수행한다고 주장합니다. 다른 참고 문헌은 인터넷 검색 : techrepublic.com/blog/opensource/…
zethra

1
나는 그들이 안전하다는 것을 추측해야합니다. 그래서 noexec적어도 설정을 잊어 버린 경우 여전히을 얻습니다 nosuid. 두 플래그가 같은 위치에 구성되어 있기 때문에 약한 논쟁입니다. 따라서 하나를 잊어 버린 경우 다른 하나도 잊어 버릴 수 있습니다!
Celada

답변:


2

마운트 매뉴얼 페이지에 따르면

noexec

마운트 된 파일 시스템에서 바이너리를 직접 실행하지 마십시오. (최근까지는 /lib/ld*.so / mnt / binary와 같은 명령을 사용하여 바이너리를 실행할 수있었습니다.이 방법은 Linux 2.4.25 / 2.6.0부터 실패합니다.)

따라서 noexec가 모든 바이너리 실행을 중지하지 않은 경우 적어도 루트 권한으로 실행되지 않았을 때의 오래된 조언처럼 보입니다.


1
해당 트릭으로 실행 파일을 실행 한 경우 set-uid 권한을 얻었습니까?
Barmar
당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.