다른 사용자의 파일에 대한 하드 링크

다른 사용자의 파일에 대한 하드 링크

사용자 A와 사용자 B 모두의 디스크 할당량이 1GB라고 가정합니다.
또한 사용자 B가 권한 0666을 사용하여 900MB 파일을 생성한다고 가정합니다.
이를 통해 사용자 A는 일시적으로 파일에 액세스할 수 있습니다(특정 프로젝트 등의 경우).
이를 통해 사용자 A가 파일에 쓸 수도 있습니다.

사용자 A가 파일에 대한 하드 링크를 만든 다음 사용자 B가 파일을 삭제하는 경우 사용자 A가 본질적으로 할당량 시스템을 악용하여 사용자 B로부터 900MB의 저장소를 "훔치게"됩니까?

사용자 B가 이 상황을 관리자에게 보고하지 않았고 관리자도 이를 발견하지 못했다고 가정합니다.
또한 사용자 B는 사용자 A에게 어떤 것도 의심하지 않는다고 가정합니다. 즉, 사용자 B가 사용자 A의 디렉터리와 해당 파일을 열람하지 않는다고 가정합니다.

이전에 유사한 질문/답변이 있었다면 찾을 수 없어서 죄송합니다.

답변1

이는 Unix 권한 모델의 추악한 극단적인 사례 중 하나입니다. 파일에 대한 쓰기 액세스 권한을 부여하면 해당 파일에 대한 하드 링크가 허용됩니다. 사용자 A가 파일이 포함된 디렉터리에 대한 쓰기 액세스 권한을 갖고 있는 경우 해당 파일을 사용자 B가 액세스할 수 없는 디렉터리로 이동할 수 있습니다. 그러면 사용자 B는 더 이상 파일에 액세스할 수 없지만 할당량 목적상 여전히 사용자 B에 포함됩니다.

일부 구형 Unix 시스템에는 더 심각한 취약점이 있습니다. 사용자는 chown자신의 파일 중 하나를 다른 사용자에게 호출할 수 있습니다. 이전에 파일을 누구나 쓸 수 있게 만든 경우 해당 파일을 계속 사용할 수 있지만 파일은 다른 사용자에게로 계산됩니다. 사용자 할당량. 이것은현대 시스템이 chown루트 권한을 유지하는 한 가지 이유.

순수한 기술적 솔루션은 없습니다. 사용자 B는 자신의 디스크 사용량( du ~)이 할당량 사용량과 일치하지 않음을 발견하고 시스템 관리자에게 불만을 제기합니다. 시스템 관리자는 사용자 A를 조사하고 엄중하게 질책할 것입니다.

관련 정보