[Unix 서버] r 계열 서비스 비활성화

 

 

U-21 r 계열 서비스 비활성화

 

■ 항목 중요도 :

 

■ 점검내용

 

r-command 서비스 비활성화 여부 점검

 

■ 점검목적

 

r-command 사용을 통한 원격 접속은 NET Backup 또는 클러스터링 등 용도로 사용되기도 하나, 인증 없이 관리자 원격접속이 가능하여 이에 대한 보안위협을 방지하고자 함

 

■ 보안위협

 

rsh, rlogin, rexec 등의 r command를 이용하여 원격에서 인증절차 없이 터미널 접속, 쉘 명령어를 실행이 가능함

 

■ 참고

 

※ r-command : 인증 없이 관리자의 원격접속을 가능하게 하는 명령어들로 rsh(remsh), rlogin, rexec, rsync 등이 있음

 

 

점검대상 및 판단기준

 

■ 대상 : SOLARIS, LINUX, AIX, HP-UX 등

 

양호

불필요한 r 계열 서비스가 비활성화 되어 있는 경우

 

취약

불필요한 r 계열 서비스가 활성화 되어 있는 경우

 

■ 조치방법

 

NET Backup등 특별한 용도로 사용하지 않는다면 아래의 서비스 중지

shell(514)  login(513)  exec(512)

 

 

점검 방법

 

■ OS별 점검 파일 위치 및 점검 방법

 

SOLARIS 5.9이하 버전

r-command 서비스 활성화 여부 확인
#vi /etc/inetd.conf

 

AIX

#cat /etc/inetd.conf | grep rlogin (# 처리 되어 있으면 비활성화)
#cat /etc/inetd.conf | grep rsh (# 처리 되어 있으면 비활성화)

 

HP-UX

#vi /etc/inetd.conf
r로 시작하는 필드 존재 시 취약

 

SOLARIS 5.10이상 버전

#inetadm | egrep "shell|rlogin|rexec"
r command 관련 데몬 확인

 

LINUX(xinetd일 경우)

rsh, rlogin, rexec (shell, login, exec) 서비스 구동 확인
#ls -alL /etc/xinetd.d/* | egrep "rsh|rlogin|rexec"
| egrep -v "grep|klogin|kshell|kexec"

위에 제시된 파일 내 "r-command계열“ 서비스가 활성화 된 경우 아래의 보안설정 방법에 따라 서비스 중지

 

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/sbin/in.rexecd in.rexecd

 

■ LINUX


[Telnet 서비스 사용시]
Step 1) “/etc/securetty” 파일에서 pts/0 ~ pts/x 설정 제거 또는, 주석 처리
Step 2) “/etc/pam.d/login” 파일 수정 또는, 신규 삽입

(수정 전) #auth required /lib/security/pam_securetty.so
(수정 후) auth required /lib/security/pam_securetty.so

 

※ /etc/securetty : Telnet 접속 시 root 접근 제한 설정 파일
“/etc/securetty” 파일 내 *pts/x 관련 설정이 존재하는 경우 PAM 모듈 설정과 관계없이 root계정 접속을 허용하므로 

반드시 "securetty" 파일에서 pts/x 관련 설정 제거 필요

 

tty(terminal-teletype) : 서버와 연결된 모니터, 키보드 등을 통해 사용자가 콘솔로 직접 로그인함
pts(pseudo-terminal, 가상터미널) : Telnet, SSH, 터미널 등을 이용하여 접속함


[SSH 서비스 사용시]
Step 1) vi 편집기를 이용하여 “/etc/ssh/sshd_config” 파일 열기
Step 2) 아래와 같이 주석 제거 또는, 신규 삽입
(수정 전) #PermitRootLogin Yes
(수정 후) PermitRootLogin No

 

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)

 


■ 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 사용시 보안설정


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 파일에 설정 유무를 확인하여 해당 서비스 사용여부 확인 -

파일이 존재하지 않거나 해당파일 내에 설정이 없다면 사용하지 않는 것으로 파악)

 

 

댓글

Designed by JB FACTORY