■ 개념
주요정보통신기반시설 취약점 분석 및 평가 중 점검대상 유닉스(Unix) 서버의 U-17 $HOME/.rhosts, hosts.equiv 사용 금지 점검항목에 대해 알아보겠습니다. 해당 포스팅은 리눅스(CentOS 7)를 기준으로 진단 및 실습합니다.
| 항목명 |
$HOME/.rhosts, hosts.equiv 사용 금지
|
|
| 항목코드 | U-17 | |
| 위험도 | 상 | |
| 점검내용 |
/etc/hosts.equiv 파일 및 .rhosts 파일 사용자를 root 또는, 해당 계정으로 설정한 뒤 권한을 600으로 설정하고 해당파일 설정에 '+' 설정(모든 호스트 허용)이 포함되지 않도록 설정되어 있는지 점검
|
|
| 점검목적 |
'r' command 사용을 통한 원격 접속은 인증 없이 관리자 원격접속이 가능하므로 서비스 포트를 차단해야 함
|
|
| 보안위협 |
rlogin, rsh 등과 같은 'r' command의 보안 설정이 적용되지 않은 경우, 원격지의 공격자가 관리자 권한으로 목표 시스템상의 임의의 명령을 수행시킬 수 있으며, 명령어 원격 실행을 통해 중요 정보 유출 및 시스템 장애를 유발시킬 수 있음. 또한 공격자 백도어 등으로도 활용될 수 있음
'r'-command(rlogin, rsh등) 서비스의 접근통제에 관련된 파일로 권한설정을 미 적용한 경우 r-command 서비스 사용 권한을 임의로 등록하여 무단 사용이 가능함 ※ 'r'command: 인증 없이 관리자의 원격접속을 가능하게 하는 명령어들로 rsh(remsh), rlogin, rexec 등이 있으며, 포트번호 512,513,514 (TCP)를 사용함 |
|
|
판단기준
|
양호 |
login, shell, exec 서비스를 사용하지 않거나, 사용 시 아래와 같은 설정이 적용된 경우
1) /etc/hosts.equiv 및 $HOME/.rhosts 파일 소유자가 root 또는, 해당 계정인 경우 2) /etc/hosts.equiv 및 $HOME/.rhosts 파일 권한이 600 이하인 경우 3) /etc/hosts.equiv 및 $HOME/.rhosts 파일 설정에 '+' 설정이 없는 경우 |
| 취약 |
login, shell, exec 서비스를 사용하고, 위와 같은 설정이 적용되지 않은 경우
|
|
| 조치방법 |
1) /etc/hosts.equiv 및 $HOME/.rhosts 파일 소유자를 root 또는, 해당 계정으로 변경
2) /etc/hosts.equiv 및 $HOME/.rhosts 파일 권한을 600 이하로 변경 3) /etc/hosts.equiv 및 $HOME/.rhosts 파일에서 '+'를 제거하고 반드시 필요한 호스트 및 계정만 등록 (해당 내역 요청) |
|
■ 실습
우선 hosts.equiv 파일이나 $HOME/.rhosts 파일 등 이 파일들이 무슨 의미인지 알아보겠습니다.
| $HOME | 홈디렉터리 경로를 담은 환경변수 |
| .rhosts 파일 | $HOME/.rhosts 형태로 생성하는 파일로써, 원격으로 접속할 때 사용자 인증을 위한 파일 |
| /etc/host.equiv 파일 | 원격 접속에 대해 신뢰할 수 있는 호스트 목록이 기재되어 있는 파일 |
원격 접속에 관한 내용들이며 특히, 보안적인 측면에서는 꼼꼼히 점검해야 합니다.
해당 점검항목은 유닉스 서버의 원격 접속 명령어 사용 시 .rhosts파일 또는 /etc/hosts.equiv 파일에 호스트 등록 유무에 따라 양호/취약을 판단합니다. 대표적인 원격 접속 명령어는 r-command이고 r-command에는 rlogin, rsh, rshell 등 있습니다. 여기서 .rhosts 파일은 $HOME/.rhosts 형태의 개별 사용자 설정 파일로 원격으로 접속할 때 사용자 인증을 위한 파일이고, /etc/host.equiv 파일은 원격 접속에 대해 신뢰(인증)할 수 있는 호스트 목록이 기재되어 있는 서버 설정 파일입니다. 파일의 소유자는 root(관리자급 계정), 파일의 권한은 600 이하(rw-------)로 설정 바랍니다.
광고
■ 진단 확인
명령어 #ls -al /etc/hosts.equiv 그리고 $HOME/.rhosts을 통해서 소유자, 권한을 확인합니다. 그리고 명령어 #cat /etc/hosts.equiv 그리고 $HOME/.rhosts을 통해서 각 파일에서 '+' 확인 및 반드시 필요한 호스트 및 계정을 확인합니다.
■ 조치방법
파일의 소유자 변경은 #chown root $HOME/.rhosts 그리고 /etc/hosts.equiv이고 파일의 권한 변경은 #chmod 600 $HOME/.rhosts 그리고 /etc/hosts.equiv로 하면 됩니다. 그리고 각 파일에서 '+' 및 필요한 호스트 및 계정을 고객사 담당자와 인터뷰를 통해 불필요 여부를 판단합니다. 불필요 시 삭제해야 합니다. 아래 표는 +와 관련된 내용입니다.
| + + |
모든 호스트의 계정을 신뢰
|
| + test |
모든 호스트의 test 계정을 신뢰
|
| Web1 + |
Web1 호스트의 모든 계정을 신뢰
|
본 포스팅 내용은 한국인터넷진흥원(KISA)에서 발행한 주요정보통신기반시설 평가기준을 바탕으로 작성했습니다.
수고하셨습니다.
궁금한 사항은 댓글로 남겨주세요.
'주요정보통신기반시설 취약점 진단 > 유닉스, 리눅스' 카테고리의 다른 글
| 주요정보통신기반시설 유닉스(Unix) 서버 U-19 finger 서비스 비활성화 (0) | 2026.01.09 |
|---|---|
| 주요정보통신기반시설 유닉스(Unix) 서버 U-18 접속 IP 및 포트 제한 (0) | 2026.01.08 |
| 주요정보통신기반시설 유닉스(Unix) 서버 U-16 /dev에 존재하지 않는 device 파일 점검 (0) | 2026.01.04 |
| 주요정보통신기반시설 유닉스/리눅스 서버 U-15 SUID, SGID, 설정 파일점검 (0) | 2026.01.02 |
| 주요정보통신기반시설 유닉스/리눅스 서버 U-14 사용자, 시스템 시작파일 및 환경파일 소유자 및 권한 설정 (0) | 2026.01.01 |
댓글