본문 바로가기

리눅스/주요정보통신기반시설_UNIX

[파일 및 디렉토리 관리]2.5 CentOS 6.7 /etc/hosts 파일 소유자 및 권한 설정


/etc/hosts 파일은 Ip주소와 호스트네임을 매핑하는데 사용되는 파일이며, 이 파일에 비 인가자 쓰기 권한이 부여된 경우, 공격자는 /etc/hosts 파일에 악의적인 시스템을 등록하고, 이를 통해 정상적인 DNS를 우회하여 악성사이트로 접속을 유도하는 파밍(Pharming)공격 등에 악용될 수 있으므로 파일에 대한 접근권한을 제한하고 있는지 점검해야 한다.


/etc/hosts 파일 소유자 및 권한 설정(취약한 설정)



hosts 파일의 퍼미션을 확인했을 때 모든 계정에서 읽기, 쓰기, 실행 모두 가능한 것을 확인했다.



hosts 파일에 등록된 정보를 확인했을 때 googledns가 등록되어 있는 것을 확인했다.



이를 통해서, ping 통신을 시도했을 때 root 계정에서는 아무 이상 없이 통신이 가능한 것을 확인했다.



모든 계정에 읽기, 쓰기, 실행 권한이 부여되어 있으므로, 일반 사용자의 계정에서도 역시 아무이상 없이 통신이 가능하다.


이런 경우, 만약, 여기에 추가된 것이 Google의 DNS 서버의 IP주소가 아닌 악의적인 목적을 가진 사용자가 만들어 놓은
놓은 사이트의 IP주소라면 모든 사용자가 악의적인 시스템을 신뢰해 피해가 발생할 수 있다.


/etc/hosts 파일 소유자 및 권한 설정(양호한 설정)



chmod를 통해서 /etc/hosts 파일의 퍼미션을 600 즉, root 계정만이 읽고 쓸 수 있도록 퍼미션을 수정하였다.



hosts파일에 저장되어 있는 구글 DNS 서버로 ping을 시도해보면, root계정의 경우에는 통신이 원활한 것을 볼 수 있다.



반면, 일반 사용자가의 계정의 경우에는 ping 통신이 제한되는 것을 확인할 수 있다 .