알려드리자면, 나는 setuid/setgid/무엇이 무엇인지 거의 이해하지 못합니다. 나생각하다이는 프로그램이 실행되는 사용자의 신원과 관련됩니다. 이것 때문에 생각이 들었습니다 nosuid
.
존재하다Android 4.3의 보안 강화, 구글은 말한다
The /system partition is now mounted nosuid for zygote-spawned processes,
preventing Android applications from executing setuid programs.
나에게는 Linux의 파일 시스템이 마운트되는 방식이 프로세스나 실행 파일에 상대적일 수 있는 것처럼 "무엇을 위해" 마운트된다고 말하는 것이 이치에 맞지 않습니다. Android 장치의 시스템 파티션이 로 마운트된 경우 nosuid
시스템의 핵심 실행 파일이 부팅 초기 단계에서 수행해야 하는 루트로 어떻게 실행될 수 있습니까?
답변1
동일한 문서에 있는 이전의 관련 줄:
setuid/setgid 프로그램이 없습니다.Android 시스템 파일에 파일 시스템 기능에 대한 지원을 추가하고 모든 setuid/setguid 프로그램을 제거했습니다. 이렇게 하면 루트 공격 표면과 잠재적인 보안 취약성이 발생할 가능성이 줄어듭니다.
마지막 질문에 관해서:
Android 장치의 시스템 파티션이 nosuid로 마운트된 경우 부팅 초기 단계에서 수행해야 하는 시스템의 핵심 실행 파일이 어떻게 루트로 실행될 수 있습니까?
nosuid
멈출 수 없어root
실행 중인 프로세스에서. 이것은아니요와 동일합니다 noexec
. 이는 실행 파일의 일부가 적용되는 것을 방지할 뿐입니다 suid
. 이는 정의에 따라 사용자가 수행할 권한이 없는 작업을 수행할 권한이 있는 응용 프로그램을 실행할 수 없음을 의미합니다.
또한 "수정란"이 실제로 무엇인지 이해하는 것도 관련이 있습니다.https://android.stackexchange.com/a/77308
면책조항: 저는 Android 전문가가 아닙니다.