US no. |
점검항목 |
점검 방법 |
위험도 |
점검결과 |
조치사항 |
① |
계정 관리 |
/etc/passwd, /etc/group |
중 |
조치 필요 |
sync, halt, shutdown 계정 nologin 처리 |
② |
비밀번호 관리 |
/etc/passwd, /etc/shadow, /etc/login.defs |
상 |
조치 필요 |
login.defs 수정 조치 |
③ |
로그인 통제 |
/etc/pam.d/password-auth /etc/pam.d/system-auth |
중 |
조치 필요 |
system-auth 조치 |
④ |
관리자 계정(root) 원격 접속 통제 |
/etc/ssh/sshd_config /etc/securetty /etc/pam.d/login |
상 |
조치 필요 |
sshd 포트 변경 및 PermitRootLogin 옵션, /etc/pam.d/login 조치 |
⑤ |
일반 사용자의 SU 명령 사용 제한 |
/usr/bin/su /etc/group /etc/pam.d/su |
중 |
조치 필요 |
wheel 그룹에 **** 추가 PAM모듈 wheel 주석제거 |
⑥ |
서버연결 타임아웃 설정 |
/etc/profile |
하 |
조치 필요 |
TMOUT=300 export TMOUT |
⑦ |
IP 기반 네트워크 접근 통제 |
/etc/hosts.allow /etc/hosts.deny |
중 |
조치 필요 |
기존 시스템과 동일하게 적용 |
⑧ |
UMASK, PATH 설정 |
/etc/profile |
중 |
해당 없음 |
필요 시 각 계정 profile에 |
⑨ |
디렉터리 권한 설정 |
/etc/passwd /home/cssa /sbin, /etc, /bin, /usr/bin, /usr/sbin /tmp, /var/tmp |
중 |
해당 없음 |
기 조치된 사항 확인 |
⑩ |
장치 디렉터리 점검 |
/dev |
중 |
해당 없음 |
해당 내용 없음 |
⑪ |
소유자가 없는 파일/디렉터리 점검 |
|
하 |
해당 없음 |
해당 내용 없음 |
⑫ |
시스템 파일 접근 권한 |
$HOME/.bashrc $HOME/.cshrc $HOME/.tcshrc $HOME/.bash_profile /etc/at.deny |
상 |
조치 필요 |
권고사항에 적힌 권한 조치 |
⑬ |
SUID, SGID 설정 파일 점검 |
#chmod 755 /usr/sbin/unix_chkpwd #chmod 755 /usr/bin/newgrp #chmod 755 /usr/bin/at |
상 |
조치 필요 |
해당 파일 s권한 제거 |
⑭ |
스케줄링 점검 |
|
상 |
해당 없음 |
등록된 스케줄링 없음 |
⑮ |
서비스 보안 설정 |
|
상 |
해당 없음 |
사용 중인 대상서비스 없음 |
⑯ |
NFS, RPC 서비스 관리 |
systemctl stop rpcbind systemctl disable rpcbind.socket |
중 |
조치 필요 |
RPC port mapper(111) 및 서비스 종료 조치 |
⑰ |
(x)Inetd.d 데몬 보안 설정 |
|
상 |
해당 없음 |
기동중인 슈퍼 데몬 없음 |
⑱ |
웹서버 기본 보안 설정 |
|
중 |
해당 없음 |
웹서버 운용하지 않음 |
⑲ |
주요 로그 관리 |
/etc/rsyslog.conf |
중 |
조치 필요 |
alert 내용 추가 조치 |
⑳ |
보안패치 적용 |
|
중 |
해당 없음 |
ProLinux7.5는 3.10.0-862 |
|
서버용 백신 프로그램 운용 |
|
중 |
해당 없음 |
별도 서버 백신 필요 |
별 |
IPv6 비사용 조치 |
|
|
|
|
Call Center:1544-5533 http://technet.tmaxsoft.com
Better Technology, Better Tomorrow
US No.1 |
계정 관리 |
조치 방법 |
/etc/passwd 파일에서 halt, shutdown, sync 계정에 대하여 /sbin/nologin 처리
|
참고 사항 |
|
US No.2 |
비밀번호 관리 |
조치 방법 |
/etc/group과 /etc/shadow에 대한 변동은 없음. 기본적으로 보안 조치 되어 있음 /etc/login.defs 수정 조치 필요 PASS_MIN_LEN 5 -> 9 PASS_MAX_DAYS 99999 -> 31 PASS_MIN_DAYS 0 -> 1 |
참고 사항 |
|
US No.3 |
로그인 통제 |
조치 방법 |
/etc/pam.d/password-auth /etc/pam.d/system-auth에서
auth required /usr/lib64/security/pam_tally2.so deny=5 unlock_time=120 account required /usr/lib64/security/pam_tally2.so
|
참고 사항 |
no_magic_root 및 reset 옵션은 Redhat 계열 7버전부터 사용하지 않는 옵션. default로 적용되었기 때문. 그리고 가장 각 문단의 첫 째줄에 위치해야함. |
US No.4 |
관리자 계정(root) 원격 접속 통제 |
조치 방법 |
1. /etc/pam.d/login 파일 최하단에 auth required /usr/lib64/security/pam_securetty.so 추가
2. /etc/ssh/sshd_config 파일에서 #PermitRootLogin yes의 주석을 해제하고 yes -> no 처리 |
참고 사항 |
/etc/securetty의 pts/0 ~ pts/x는 기본적으로 설정되어 있지 않음 |
US No.5 |
일반 사용자의 SU 명령 사용 제한 |
조치 방법 |
1. /etc/group에서 wheel 그룹에 ‘****’ 계정을 추가함 #chgrp wheel /usr/bin/su #chmod 4750 /usr/bin/su
2. /etc/pam.d/su에서 6번행 #auth required pam_wheel.so use_uid 의 주석 처리를 주석 해제 적용 |
참고 사항 |
|
US No.6 |
서버연결 타임아웃 설정 |
조치 방법 |
/etc/profile 파일 최하단에 TMOUT=300 export TMOUT 기입 조치 |
참고 사항 |
|
US No.7 |
IP 기반 네트워크 접근통제 |
조치 방법 |
/etc/hosts.allow , /etc/hosts.deny의 경우 기 조치된 설정을 적용함 |
참고 사항 |
TCP Wrapper 설정 파일 |
US No.8 |
UMASK, PATH 설정 |
조치 방법 |
각 계정별 umask 설정이 필요하다면, /home/계정명/.bash_profile에 umask 022 export umask 추가한 후 source /home/****/.bash_profile 적용 umask 명령을 통해 현재 umask 값 확인 가능 |
참고 사항 |
PATH 내의 “.” 혹은 “::” 내용의 취약점은 없었음 root UMASK = 022, 일반계정 UMASK = 002 처리가 되어있음을 확인 |
US No.9 |
디렉터리 권한 설정 |
조치 방법 |
#chmod o-w /home/**** #chmod o-w /sbin /etc /bin /usr/bin /usr/sbin #chmod 1777 /tmp /var/tmp |
참고 사항 |
default로 설정이 되어 있는 상태를 확인 |
US No.10 |
장치 디렉터리 점검 |
조치 방법 |
#find /dev –type f –exec ls –al {} \; |
참고 사항 |
취약점으로 작용할만한 디바이스 없음을 확인 |
US No.11 |
소유자가 없는 파일/디렉터리 점검 |
조치 방법 |
#find / -nouser –print #find / -nogroup -print |
참고 사항 |
소유자 혹은 소유그룹이 없는 불필요 파일 없음을 확인 |
US No.12 |
시스템 파일 접근 권한 |
조치 방법 |
권고안에 해당하는 파일들을 Prolinux 7.5 기준으로 점검한 결과, chmod 600 권한으로 변경해야 할 리스트는 다음과 같음 $HOME/.bashrc $HOME/.cshrc $HOME/.tcshrc $HOME/.bash_profile
chmod 640 권한으로 변경해야 할 리스트는 다음과 같음 /etc/at.deny
위 사항 이외의 파일은 사용하지 않거나, 보다 높은 권한으로 조치 되어 있음을 확인 |
참고 사항 |
ProLinux 기본 파일에 속하지 않는 inetd.conf, xinetd.conf, hosts.lpd, cron.allow는 별도 점검 필요 |
US No.13 |
SUID, SGID 설정 파일 점검 |
조치 방법 |
#find / -user root -type f \( -perm -04000 -o -perm -02000 \) -xdev -exec ls -al {} \;
-r-xr-sr-x. 1 root tty 15440 Apr 12 2019 /usr/bin/wall -rwxr-sr-x. 1 root tty 19624 May 21 2019 /usr/bin/write ---x--s--x. 1 root nobody 382328 Apr 12 2019 /usr/bin/ssh-agent -rwx--s--x. 1 root slocate 40592 Apr 9 2019 /usr/bin/locate -rwxr-sr-x. 1 root root 7216 May 28 2019 /usr/sbin/netreport -rwx--s--x. 1 root lock 11296 Apr 9 2019 /usr/sbin/lockdev -rwxr-sr-x. 1 root postdrop 218632 May 21 2019 /usr/sbin/postdrop -rwxr-sr-x. 1 root postdrop 260104 May 21 2019 /usr/sbin/postqueue -rwx--s--x. 1 root utmp 15648 May 21 2019 /usr/lib64/vte-2.91/gnome-pty-helper -rwx--s--x. 1 root utmp 11288 Apr 12 2019 /usr/libexec/utempter/utempter ---x--s--x. 1 root ssh_keys 465848 Apr 12 2019 /usr/libexec/openssh/ssh-keysign
해당 그룹에만 SGID 권한을 유지시키고 이 외의 파일에는 chmod –s 파일명으로 s권한 삭제.
#chmod 755 /usr/sbin/unix_chkpwd #chmod 755 /usr/bin/newgrp #chmod 755 /usr/bin/at
혹은 #chmod –s 위 세 개 파일 처리하여 SUID 삭제
|
참고 사항 |
US No.14 |
스케줄링(Scheduling) 점검 |
조치 방법 |
점검 결과 등록된 스케줄링이 없음을 확인. |
참고 사항 |
#crontab –l 크론탭에 등록된 스케줄이 없음을 확인. |
US No.15 |
서비스 보안 설정 |
조치 방법 |
사용하는 서비스 중 점검대상 서비스가 없음 추후 서비스를 사용 시 별도의 점검이 필요할 수 있음 |
참고 사항 |
SNMP, FTP, Sendmail, DNS Zone Transfer, NIS+, automountd 점검을 위해 #ps -ef | egrep “snmp|ftp|sendmail|name|ypserv|ypbind|ypxfrd|auto” |
US No.16 |
NFS, RPC 서비스 관리 |
조치 방법 |
RPC 관련 서비스 기동 종료 #systemctl stop rpcbind #systemctl disable rpcbind #systemctl stop rpcbind.socket #systemctl disable rpcbind.socket
/etc/services에 rpc관련 포트를 확인 후 #netstat –anp | grep 111(기본설정포트)을 통해 rpc LISTEN port가 사용 중인지 점검 rebooting 후 #rpcinfo –p를 통해 portmapper가 기동중지 된 것을 확인 |
참고 사항 |
#ps -ef | egrep “nfsd|mountd|lockd|statd” 점검 결과 해당 서비스 이용하지 않음을 확인 /etc/exports 파일을 통해 NFS 설정에 나열된 공유 항목을 조사한 결과 없음을 확인 |
US No.17 |
(x)Inetd.d 데몬 보안 설정 |
조치 방법 |
cat /etc/inetd.conf cat /etc/xinetd.conf ls -al /etc/inetd.d ls -al /etc/xinetd.d |
참고 사항 |
점검 결과 슈퍼 데몬 실행 해당 없음을 확인 |
US No.18 |
웹 서버 기본 보안 설정 |
조치 방법 |
#ps –ef | grep httpd를 통해 웹서버를 사용하지 않음을 확인 만약, 웹서버 설치 이후 보안 조치가 필요하다면 가이드 서적에 따라 httpd.conf 파일 설정, .htaccess 파일 생성이 필요할 수 있음 |
참고 사항 |
웹서버를 사용하지 않음을 확인 |
US No.19 |
주요 로그 관리 |
조치 방법 |
/etc/rsyslog.conf에서 set nu기준 65번 행(cron.*과 *.emerg 사이)에 # DIDC Secure *.alert /dev/console 위 행을 추가하여 알림 로그 조치 완료
#ps –ef|grep rsyslog #kill –HUP [PID]를 통해 Syslog 데몬 재기동 |
참고 사항 |
|
US No.20 |
보안 패치 적용 |
조치 방법 |
RHEL 7.6 3.10.0-957 적용 여부 판단 ssh : OpenSSH7.4p1 ssl : OpenSSL 1.0.2k-fips bash : 4.2.46 |
참고 사항 |
ProLinux 7.5는 커널 3.10.0-862 버전임을 안내 |
US No.21 |
서버용 백신 프로그램 운용 |
참고 사항 |
ViRobot은 기본 제공 백신이 아니므로 별도 백신 운용 필요 |
별도 조치 1 |
IP ver.6 비활성화 조치 |
조치 방법 |
/etc/sysctl.conf 에 다음 3행 추가
#IPv6 Disable net.ipv6.conf.all.disable_ipv6 = 1 net.ipv6.conf.default.disable_ipv6 = 1 net.ipv6.conf.lo.disable_ipv6 = 1
#sudo sysctl –p
|
참고 사항 |
|
'Security' 카테고리의 다른 글
PAM 모듈 정리 (0) | 2021.01.12 |
---|---|
Linux 로그인 시 Login Incorrect가 반복되는 현상 (0) | 2020.12.29 |
pam.d 모듈 설명 (0) | 2020.12.17 |
OpenSSH 8.1 패치 (0) | 2020.11.22 |
pam_tally2.so 모듈 설정 관련 주의사항 (0) | 2020.11.16 |