본문 바로가기

Hacking/[Infra] 인프라 취약점 점검

[UNIX] U-09 / "/etc/hosts" 파일 소유자 및 권한 설정

/etc/hosts 파일의 권한이 잘 되있나 점검한다

 

판단 기준 : /etc/hosts 파일의 소유자가 root이고 권한이 600(?)인 경우

 

/etc/hosts는 IP 주소랑 hostname을 매핑하는 파일인데.. 옛날 어르신들 시대엔 네임서버가 없어서 hosts 파일로 주소 매핑시켜서 접속했다고 한다.. 그래서 인터넷 통신할 때 DNS한테 주소 물어보기 전에 /etc/hosts를 먼저 참조한다.

 

그래서 파밍당하기가 쉽다. 192.168.1.239가 네이버야! 하면 파밍되기 좋음

 

솔라리스, 리눅스, AIX, HP-UX

ls -l /etc/hosts 했을 때 

rw------- root hosts 파일이 600이면 양호이다.

 

/etc/hosts의 퍼미션 관련해서 논란이 좀 있긴 한데

해당 서버가 hosts를 참조할 때 개발자가 직접 소스에 넣는게 아닌 was 서비스 자체가 바라본다고 하면

서비스가 /etc/hosts의 권한이 없어 접근을 못하니 서비스가 동작을 하는데 어려움이 존재할 수 있다고 본다.

더 딥하게 들어가면.. getaddrinfo같은 함수를 사용할 때 서비스에서 해당 함수를 쓰게 되면 그 함수에 속한 로직 중에 hosts를 가리키는 게있어서 권한이 부족하니 에러가 발생하는 등 현상이 생긴다.

 

따라서 고객님이랑 적절히 타협하셔서 /etc/hosts 644까지는 봐주도록 하자 44이니 쓸수도 없자나?