■ 점검분류 항목 파밀 및 디렉터리 관리

■ 세부점검 항목 NIS 서비스 비활성화

■ 위험도 중

■ 분류번호 U-31

■ 대상 유닉스

■ 위험분석

네트워크 정보 서비스(NetWork Information service, 예전의 YP)는 그룹의 컴퓨터들에

정보를 배포하는 한 가지 방식이다. NIS 주 서버는 정보표를 소유하며 그것들을 NIS

대응(map) 파일들로 변환한다. 이 대응 파일들이 네트워크를 통해 제공됨으로써 NIS 클라이언트 컴퓨터들은 로그인과 패스워드 홈, 디렉터리와 쉘에 대한 정보(즉 보통의 /etc/passwd 파일에 들어 있는 모든 정보)를 얻을 수 있게 된다. NIS를 이용하면 사용자들은 패스워드를 한 번만 바꾸면 그 NIS 영역에 들어있는 모든 컴퓨터에 (정보가 갱신되도록) 할 수 있다.

NIS는 안전한 것이 아니다. 원래부터 안전을 염두에 두고 만든 것이 아님

단지 간편하고 쓸모 있는 작업 역할을 위해서 만든 것뿐

(네트워크 상 어디에 있건) 여러분의 NIS 도메인의 이름을 알아맞힐 수 있는 사람은

여러분의 passwd 파일 복사본을 얻을 수 있고, 여러분의 사용자 패스워드를 깨기 위해

"크랙 (Crack)"과 "존 더 립퍼(John the ripper)"를 쓸 수 있게 된다.

NIS를 속여서 (spoof)온갖 지저분한 일을 하게 할 수도 있다. 꼭 NIS를 써야 겠다면

이런 위험들을 감수해야 한다.


■ 위험영향

서버 정보 유출 위험

■ 점검방법

ps -ef | grep yp

NIS 서버가 실행되는지 확인

■ 조치 시기

단기 적용

■ 조치방안

[기준]

양호: 불필요해 서비스를 비활성화 한 경우

취약: 불필요하지만 서비스를 활성화 한 경우


[조치방법]

NIS서비스가 필요하지 않다면 비활성화 필요

/usr/lib/netsvc/ypstop-->NIS 서비스 정지

ps -ef | grep yp -->서비스 확인

rm -r /var/yp/blue.org

rm /etc/ethers/etc/netgroup/etc/timezone/etc/bootparams

vi /etc/nsswitch.conf

NIS 설정 삭제


■ 조치영향

일반적으로 영향없음

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

■ 위험도 하

■ 분류번호 U-30

■ 세부점검항목: host.lpd 파일 소유자 및 권한설정

■ 대상: 유닉스


■ 위험분석

/etc/host.lpd 파일의 퍼미션을 600로 설정하여 일반 사용자가 접근 할 수 있다면 이 파일을 가지고 host 파일에 접근하여 snoof 공격을 할 수 있으므로 /etc/host.lpd 파일의 소유자와 설정이 중요함


■ 위험영향

외부에서 IP 스푸핑 공격 위험이 있음


■ 점검방법

ls -l /etc/hosts.lpd 명령으로 확인


■ 조치시기 단기적용

■ 조치방안

[기준]

양호 - 파일 퍼미션 600 소유자 root

취약 - 위와 동일한 퍼미션과 소유자가 아닐때


[조치방법]


solaris


파일의 퍼미셔을 바꾸어 줌

chmod 00 /etc/host.lpd


소유자를 root로 바꾸어 줌

chown root/etc/host.lpd


조치방안


[기준]

양호: 파일 퍼미션 600, 소유자 root

취약: 위와 동일한 퍼미션과 소유자가 아닐때


[solraris]

파일의 퍼미션을 바꾸어 줌


chmod 600 /etc/host.lpd


소유자를 root로 바꾸어 줌

chown root/etc/host.lpd


■ 조치영향

일반적으로 영향 없음


★ if

만약 hsot.lpd가 존재하지 않는다면 어떻게 해야 하나?

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

■ 위험도: 상

■ 세부점검항목: 접속 IP 및 포트 제한

■ 분류항목: U-29

■ 대상: UNIX

■ 위험분석: 원격지에서 서버를 관리하려면 안전하고 통재가 가능한 접속 방법을 찾는 것이 중요한데, TCP Wrapper 프로토콜이 사용됨

TCP Wrapper는 암호화는 지원하지 않지만 서버와 로그로의 외부 접근을 제한 할 수 있는 특징이 있음


TCP Wrapper 에는 2가지 권고사항이 존재하며 시행해야 함

1.시스템 이름이나 도메인 이름을 사용하지 않고 IP주소를 사용

2. etc/hosts.deny 을 deny ALL 설정한 후 접속을 허용할 주소만 /etc/hosts

allow 파일에 기록


■ 위험 영향

불법적인 시스템접근 및 스니핑 공격 우려


■ 점검방법

1. /etc/hosts.allow 명령어로 확인

2. /etc/hosts.deny 명령어로 확인


■ 조치시기

중기적용


■조치방안

[기준]

양호- 서버로 접속하는 접속IP를 설정했을 경우

취약- 서버로 접속하는 접속IP를 설정을 하지 않았을 경우


[조치사항]

1. /etc/hosts.allow <예문>

in.telnetd : 192.168.100.100, 192168.100.101

(192.168.100.100, 192168.100.101 IP에 대해서 telnet 접속 허용)

in.telnetd : 192.168.100

(192.168.100~255 네트워크에 대해서 telnet 접속 허용)

in.ftpd: 192.168.100.100

(192.168.100.100에 대해서 ftp 접속을 허용)


2. /etc/hosts.deny<예문>

ALL:ALL(inetd  서비스의 모든 서비스에 대해 접속 허용


■ 조치 영향

허용되지 않는 IP는 접속 불가


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

■ 세부점검항목: $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 인스톨이나 패치 후에는 꼭 체크


+ Recent posts