본문 바로가기
주요정보통신기반시설 취약점 진단/유닉스, 리눅스

주요정보통신기반시설 유닉스(Unix) 서버 U-17 $HOME/.rhosts, hosts.equiv 사용 금지

by 쏠-티 2026. 1. 7.

■ 개념

주요정보통신기반시설 취약점 분석 및 평가 중 점검대상 유닉스(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)에서 발행한 주요정보통신기반시설 평가기준을 바탕으로 작성했습니다.

수고하셨습니다.

궁금한 사항은 댓글로 남겨주세요.

반응형

댓글