이것은 다른 질문에 대한 의견에 나 왔으며 누군가 나 에게이 이유를 설명 할 수 있다면 좋겠습니다.
주어진 VHost에 대한 오류를 Apache가 사용자의 홈 디렉토리에 기록하도록 제안했습니다. 안전하지 않아이 문제가 발생했습니다. 왜?
답글 주석으로 설명을 요청했지만 루트가 소유하지 않은 폴더에 루트로 쓰는 것은 안전하지 않다는 것뿐입니다. 다시 누군가 누군가 설명 할 수 있습니까?
감사,
바트
이것은 다른 질문에 대한 의견에 나 왔으며 누군가 나 에게이 이유를 설명 할 수 있다면 좋겠습니다.
주어진 VHost에 대한 오류를 Apache가 사용자의 홈 디렉토리에 기록하도록 제안했습니다. 안전하지 않아이 문제가 발생했습니다. 왜?
답글 주석으로 설명을 요청했지만 루트가 소유하지 않은 폴더에 루트로 쓰는 것은 안전하지 않다는 것뿐입니다. 다시 누군가 누군가 설명 할 수 있습니까?
감사,
바트
답변:
때문에 악 사용자가 악의적으로 파일을 가리 키도록 시도 할 수 있습니다 다른 위치에 쓰고있다 . 이것은 간단하지 않지만 실제로 가능합니다.root
예를 들어, 사용자가 가정 된 Apache 로그에서 / etc / shadow 로 심볼릭 링크 를 만드는 방법을 찾으면 갑자기 사용할 수없는 시스템이 생깁니다. Apache ( )는 사용자의 자격 증명을 덮어 쓰기하여 시스템에 결함이 있습니다.root
ln -s /etc/shadow /home/eviluser/access.log
는 IF access.log의의 파일이 사용자가 쓰기 권한이 없습니다 그것을 납치하기 어려울 수 있지만, 가능성을 피하는 것이 낫다 수 있습니다!
logrotate 를 사용하여 작업을 수행하여 아직 존재하지 않는 파일에 대한 링크를 만들 수 있지만 로그가 커지 자마자 해당 logrotate 를 덮어 씁니다.
ln -s /etc/shadow /home/eviluser/access.log.1
참고 :
심볼릭 링크 방법은 단지 개념의 증거로서 주어진 하나의 가능한 공격이다.
우리 가 문제로 알고 있는 것을 블랙리스트에 올리지 않고 화이트리스트 마인드 로 보안을 만들어야 합니다.
+t
은 파일 자체에 대한 쓰기 권한이없는 경우에도 일반적으로 디렉토리에서 파일을 제거 할 수 있습니다 (스티커 비트가 설정되어 있지 않은 경우). 파일). root가 파일을 미리 생성하더라도 디렉토리 소유자는 여전히 파일을 삭제하고 다른 파일에 대한 심볼릭 링크로 바꿀 수 있습니다.