23.12.24 삭제예정/Unix 서버 취약점 점검

■ 리눅스 서버 점검 가이드 2-13 $HOME/.rhosts. hosts.equiv 사용금지

몽블86 2017. 7. 5. 11:04

■ 점검분류항목: 파일 및 디렉터리

■ 세부점검항목: $HOME/.rhosts. hosts.equiv 사용금지

■ 위험분석

riogin, rsh, rcp는 패스워드를 입력하지 않고 원격서버로 신뢰받는 원격로그인을 하기 위한 명령어입니다. 참고로 이와같이 원격에서 수행되는 명령어들을 원격명령어 r-command라고 합니다.

이들 명령어들이 모두 원격에서 신뢰된 로그인 또는 접근을 할 수 있기 위해서는 접근할 원격서버의 /etc/hosts.equiv 또는 홈디렉터리에 있는 .rhosts파일의 접근허용설정이 있어야 정상적으로 수랭이 됩니다.


따라서 .rlogin과 함께 rsh, rcp등의 명령어 사용시에는 /etc/hosts.equiv 그리고 홈디렉터리내에 있는 .rhosts파일의 설정을 확인해야 합니다.

또한, 이들 명령어들은 모두 원격에서 패스워드 인증과정 없이 바로 실행될 수 있기 때문에 서버자체의 보안문제도 심각하게 고려합니다.


■ 불법적인 접속을 통한 시스템 접근


■ 접근방법

ls -l $HOME/.rhosts 명령으로 확인

ls -l hosts.equiv 명령으로 확인


■ 조치시기 단기적용

■ 조치방안 [기준] 양호: $HOME//rhosts, hosts.equiv 활성화를 시키지 않았을 경우

                         취약: $HOME/.rhosts, hosts.equiv 활성화를 시켰을 경우


■ 조치방법

[$HOME/.rhosts는 기본적으로 잘 쓰지 않음]

개인 계정의 홈 디렉터리에 .rhosts 파일을 가지고 있지 않도록 확인해야 함 이 파일들은 각각의 유저들에 의해 만들어질 수 있기 때문에 /etc/hosts.equiv 파일 보다 더 보안상 위험한 상태에 놓여지게 됨 그리고 주기적으로 cron을 사용하여 이것을 체크해주고 내용을 정리해서 $HOME/.rhosts 파일을 지워 주도록 해야 함


★ 만약 이 파일의 사용이 꼭 필요하다면

1) 파일의 첫번째 문자가 '-'로 시작하지 않도록 확인

2) 파일 퍼미션이 600으로 되어 있는지 확인

3) 파일의 소유자가 해당계정의 소유자인지 확인

4) 파일내에 어떤 라인에서도 '+'가 포함되지 않도록 해야 함 이것은 해당 계정에 다른 이용자의  로그인이 가능성이 있을 수 있기 때문

5) 이 파일은 주석문을 사용 할 수 없기  때문에 파일에 'ㅣ' 또는 '#'을 허용하지 않아야 함

6) HOME/.rhosts의 사용을 제한 할 수 있는 log daemon 을 사용할 수 있다는 점을 유의


/etc/hosts.equiv

rlogin과 같은 프로그램들은 패스워드의 적용없이 어떤 허가된 시스템으로부터 여러분의 시스템의 동일 계정으로 로그인하는데 사용될 수 있음

만약 r commadn를 사용하지 않거나 다른 시스템으로부터의 로그인 허용을 원하지 않을 경우에는 이 파일을 사용하지 않아도 되고 필요하다면 삭제 가능

이 파일이 존재하지 않는다면 그것은 r command들을 사용하더라도 큰 문제 없음


/etc/hosts.equiv 파일을 가지고 있어야만 한다면

1) 최소한의 신뢰된 호스트의 목록만을 유지하는지 확인

2) NIS 혹은NIS+를 사용한다면 좀 더 관리에 쉬운 네트윅 그룹을 사용

3) 관리하에 있거나 도메인 내부의 호스트들만을 허가해야 함

4) salsari.org 와 같은 완벽하게 사용되어지는 호스트 네임 등을 사용하는지 확인

5) 시스템을 access하는 유저의 허용때문에 파일 어느곳에도 "+"를 가지지 않도록 주의

6) 이 파일에서는 주석을 위한 어느 문자도 지원하지 않으므로 "ㅣ"혹은 "#"를 사용하지 않도록 주의

7) 파일의 퍼미션이 600으로 셋팅되어 있는지 확인

8) 파일의 소유자가 root인지 확인

9) o/s 인스톨이나 패치 후에는 꼭 체크