본문 바로가기
정보보안

U-21) unix 서버취약점 > 서비스 관리 > r 계열 서비스 비활성화

by PUPPLESHARK 2023. 2. 8.
반응형

 

U-21 (상) 3. 서비스관리 > r 계열 서비스 비활성화
취약점 개요
점검내용 Ÿ r command 서비스 비활성화 여부 점검
점검목적 Ÿ 'r'command 사용을 통한 원격 접속은 NET Backup 또는 클러스터링 등 용도로 사용되기도 하나, 인증 없이 관리자 원격접속이 가능하여 이에 대한 보안위협을 방지하고자 함
보안위협 Ÿ 원격에서 인증절차 없이 터미널 접속, 쉘 명령어 실행이 가능하게 되어 중요 정보 유출 및 시스템 장애 발생 등 침해사고의 원인이 될 수 있음
참고 'r'command: 인증 없이 관리자의 원격접속을 가능하게 하는 명령어들로 rsh(remsh), rlogin, rexec 등이 있음
점검대상 및 판단기준
대상 Ÿ SOLARIS, Linux, AIX, HP-UX
판단기준 양호 : 불필요한 r 계열 서비스가 비활성화 되어있는 경우
취약 : 불필요한 r 계열 서비스가 활성화 되어있는 경우
조치방법 NET Backup등 특별한 용도로 사용하지 않는다면 아래의 서비스 중지

shell(514) login(513) exec(512)
점검 및 조치 사례


U-21 (상) 3. 서비스관리 > r 계열 서비스 비활성화
SOLARIS 5.9 이하, HP-UX
Step 1) r 계열 서비스 활성화 여부 확인
# vi /etc/inetd.conf
Step 2) r로 시작하는 필드 주석처리 후 재가동 (수정 )
shell         stream      tcp        nowait       root     /usr/sbin/in.rshd        in.rshd shell         stream      tcp6      nowait       root     /usr/sbin/in.rshd        in.rshd login        stream      tcp        nowait       root     /usr/sbin/in.rlogin.d    in.rlogind exec        stream      tcp        nowait       root     /usr/sbin/in.rexecd     in.rexecd exec        stream      tcp6      nowait       root     /usr/sbin/in.rexecd     in.rexecd
 
(수정 후)
#shell       stream       tcp       nowait       root     /usr/sbin/in.rshd        in.rshd
#shell       stream       tcp       nowait       root     /usr/sbin/in.rshd        in.rshd
#shell       stream       tcp6      nowait       root     /usr/sbin/in.rshd        in.rshd
#login      stream       tcp6      nowait       root     /usr/sbin/in.rlogind     in.rlogind
#exec      stream       tcp       nowait       root     /usr/sbin/in.rexecd     in.rexecd
#exec      stream      tcp6      nowait       root     /usr/escbin/in.rex   d     in.rexecd
 
SOLARIS) # kill -HUP [inetd PID]
HP-UX) # inetd -c
AIX
Step 1) r 계열 서비스 활성화 여부 확인
#cat /etc/inetd.conf |grep rlogin (# 처리 되어 있으면 비활성화)
#cat /etc/inetd.conf |grep rsh (# 처리 되어 있으면 비활성화)
#cat /etc/inetd.conf |grep exec (# 처리 되어 있으면 비활성화) Step 2) /etc/hosts.equiv 파일은 TRUSTED 시스템을 등록
Step 3) .rhosts 파일은 사용자 별로 'r'command를 통해 접근이 가능하도록 설정할 수 있음 ($HOME/.rhosts)

 

U-21 (상) 3. 서비스관리 > r 계열 서비스 비활성화
SOLARIS 5.10 이상 버전
Step 1) r'command 관련 데몬 확인
    svc:/network/login:rlogin
    svc:/network/rexec:default
    svc:/network/shell:kshell
 
Step 2) inetadm -d "중지하고자 하는 데몬" 명령으로 데몬 중지
#inetadm -d svc:/network/login:rlogin
#inetadm -d svc:/network/rexec:default
#inetadm -d svc:/network/shell:kshell
 
LINUX (xinetd일 경우)
Step 1) vi 편집기를 이용하여 "/etc/xinetd.d/" 디렉토리 내 rlogin, rsh, rexec 파일 열기  Step 2) 아래와 같이 설정 (Disable = yes 설정)
    /etc/xinetd.d/rlogin 파일
    /etc/xinetd.d/rsh 파일
    /etc/xinetd.d/rexec 파일
 
service      rlogin
{
socket_type               = stream
wait                      = no
user                      = nobody
log_on_success            += USERID
log_on_failure            += USERID
server                    = /usr/sdin/in.fingerd
disable                   = yes
}
 
Step 3) xinetd 서비스 재시작
#service xinetd restart
 
 
 
 
R-command 사용 보안설정(U-17 점검항목 참고)
Step 1) r command 사용을 허용하는 호스트 및 계정 설정
- .rhosts, hosts.equiv
파일에 접근을 허용하는 hostname(IP) 명시
     
IP 등록 공인 IP 설정은 금지

- .rhosts, hosts.equiv 파일의 퍼미션을 600 이하로 설정
- 필요 TCP_Wrapper 이용하여 접근을 허용하는 IP 등록하여 추가 보안 설정
 
조치 시 영향
rlogin, rshell, rexec 서비스는 backup, 클러스터링 등의 용도로 종종 사용되고 있으므로 해당 서비스 사용 유무를 확인하여 미사용시 서비스 중지
(/etc/hosts.equiv 또는 각 홈 디렉토리 밑에 있는 .rhosts 파일에 설정 유무를 확인하여 해당 서비스 사용여부 확인 - 파일이 존재하지 않거나 해당파일 내에 설정이 없다면 사용하지 않는 것으로 파악)

 

 

반응형

댓글