Skip to content

조회 수 8367 추천 수 0 댓글 0
?

단축키

Prev이전 문서

Next다음 문서

크게 작게 위로 아래로 댓글로 가기 인쇄
?

단축키

Prev이전 문서

Next다음 문서

크게 작게 위로 아래로 댓글로 가기 인쇄

서버점검사항

1. SUID 점검하기.(root 소유의 SetUID및 SetGID 파일들 점검)


# find / -user root -perm -4000 -ls          (SetUID)
# find / -user root -perm -2000 -print       (SetGID)

 

2. 사용량 점검

# repquota -av -ag
# df -h


3. 백도어 설치여부 점검.(/dev 체크 및 rootkit 점검)

# find /dev -type f -ls
# ./chkrootkit  -> http://www.chkrootkit.org/ 


4. 현재 열려진 포트 및 응답가능한 포트 점검.

# netstat -atp | grep LISTEN
# netstat -an | grep LISTEN

        사용 프로토콜 : TCP인가? 또는 UDP인가?
        사용중인 포트번호
        서버와 연결된 IP 및 도메인명
        생성 PID
        서비스중인 프로세스명
        현재 응답가능상태인가?

# lsof | grep LISTEN

        (현재 서비스 중인 프로세스명(데몬명)
        현재 생성중인 PID번호.
        현재 서비스중인 프로세스의 소유자
        프로토콜 버전 : Ipv4 또는 Ipv6
        TCP 또는 UDP의 여부
        응답가능 상태인가?


5. 실행중인 프로세스 및 데몬점검.(프로세스의 생성관계), 메모리

# pstree
# top -d2
# free -m
# cat /proc/meminfo  
(free 와 top 는 이 파일을 참조하여 보여준다.)


6. 스팸메일 점검.(메일큐 디렉토리 점검)

# /var/spool/mqueue    (동일한 날짜, 동일한 사이즈를 가진 다수 파일구분)


7. Core 점검. : 서버내에 긴급한 이상이 발생하였을 경우나 시스템의 정확한 분석을 위해 서버의 메모리 상태를 순간적으로 dump 받는 경우의 파일

# find / -name core -ls
# find / -name core -exec ls -l {} \;


8. 서버 접속자 점검.최후접속기록 점검.

# vi /var/log/secure
# last -n 10  최근 10번째까지의 접속기록을 확인.
# lastlog

       현재 /etc/passwd에 존재하는 모든 계정을 대상으로 하여 언제 마지막으로

       서버에 접속을 했는가를 확인.
       Mail, adm, bin 등의 계정들은 모두 "** Never logged in **" 이라고 되어 있는것이 정상.

# w         (telnet)
# ftpwho        (ftp)


9. root명령어 사용기록 점검.

vi /root/.bash_history  (.set nu)
cat /root/..bash_history | wc -l    (1000라인 이상 되어야 정상)


10. 계정별 사용명령어파일 점검.

# find / -name .bash_history -exec ls -l {} \;    (각 계정별 .bash_history 파일의 존재여부)
# find / -name .bash_history -exec cat {} \;     (파일의 내용까지 모두 확인해 볼 수 있음)


11. root소유자 점검(UID와 GID가 0인 사용자 점검)

# cat /etc/passwd | grep 0:0


12. .rhosts 파일 점검 : 원격에서 패스워드등의 확인과정없이 바로 접속하기 위해서 사용되는 파일

# find / -name .rhosts -exec ls -l {} \;
# find / -name .rhosts -exec cat {} \;


13. su 명령어를 이용한 root권한 사용자 점검. : su 명령어의 사용내역을 확인할 수 있음.

# cat /var/log/messages | grep root


14. 최근 n 일전 변경된 파일 점검. (단위는 일)

# find / -ctime -1 -ls | less


15. find 를 이용한 특정파일 점검하기.


.exec 파일찾기
# find / -name '.exec' -exec cat {} \; -print


.forward 파일체크
# find / -name '.forward' -exec cat {} \; -print


write 퍼미션이 있는 파일(디렉토리)찾기
# find / -type f  \( -perm -2 -o -perm -20 \) -exec ls -lg {} \;
# find / -type d \( -perm -2 -o -perm -20 \) -exec ls -ldg {} \;


SteUID SetGID 체크하기
# find / -type f \( -perm -004000 -o -perm -002000 \) -exec ls -lg {} \;


/dev 체크
# find /dev -type f -exec ls -l {} \;


소유자없는 파일 및 디렉토리 찾기
# find / -nouser -o -nogroup -ls


원격리모트 접속허용 파일(.rhosts)찾기
# find / -name .rhosts -ls


최근 변경된 파일들 찾기.(파일or디렉토리) 단위는 일
# find / -ctime -20 -type f or d


16 ping 을 이용한 DOS 공격 막는 방법.

# vi  /etc/sysctl.conf
net.ipv4.icmp_echo_ignore_broadcasts = 1

# sysctl -w
# /etc/rc.d/init.d/network restart
# sysctl -a | grep ignore_broadcasts


17. Nmap를 이용 포트스켄 하여 해킹가능성 체크.

# nmap -sS -p80 211.42.48.110 -O -v www.armian.net
# nmap -sS -O -v 211.42.48.114


18. chmod 400 /etc/shadow 점검 (패스워드파일)

19. umask 값 확인하기.

# umask
root의 umask 값 확인하기.
022 -->파일은 644 디렉토리는 755로 생성됨.
027 -->파일은 640 디렉토리는 750로 생성됨.


20. utmp, wtmp, lastlog 파일

 

utmp파일 : 현재시스템에 접속해 있는 사용자의 정보를 가지고 있음.

# strings utmp | more

정보 이용 명령어 : login(1), who(1), init(8), last(8), lastcomm(8)

 

wtmp파일 : 처음부터 접속했던 모든 사용자의 로그인정보와 로그아웃정보를 가지고 있음.

# strings wtmp | more

정보 이용 명령어 : login(1), who(1), init(8), last(8), lastcomm(8)


lastlog 파일 : 가장 최근에 로그인한 정보를 저장함.

# last


21. 중요 관리자용명령어 점검.

아래의 명령어들을 퍼미션을 100으로 설정한다. 변경 후 퍼미션 변경여부를 확인.

# chmod 100 /usr/bin/top
# chmod 100 /usr/bin/pstree
# chmod 100 /usr/bin/w
# chmod 100 /bin/ps
# chmod 100 /usr/bin/who
# chmod 100 /usr/bin/find
# chmod 100 /bin/df
# chmod 100 /bin/netstat
# chmod 100 /sbin/ifconfig
# chmod 100 /usr/sbin/lsof
# chmod 100 /usr/bin/make
# chmod 100 /usr/bin/gcc
# chmod 100 /usr/bin/g++
# chmod 100 /usr/bin/c++


22. 중요한 파일퍼미션과 소유권 제한 및 점검.

# chmod 644 /etc/service
# chmod 600 /etc/xinetd
# chmod 644 /etc/mail/aliases
# chmod 600 /etc/httpd/conf/httpd.conf
# chmod 644 /var/log/wtmp
# chmod 644 /var/run/utmp
# chmod 644 /etc/motd
# chmod 644 /etc/mtab
# chmod 600 /etc/syslog.conf

/etc, /usr/etc, /bin, /usr/bin, /sbin, /usr/sbin

# chmod 1777 /tmp
# chmod 1777 /var/tmp



23. 일반사용자의 명령어 패스

/usr/local/bin:usr/local/mysql/bin:/home/hosting/bin/
일반사용자가 사용가능한 명령어를 모두 이것에 둠.


24. 관리자의 명령어 패스

:/bin:/sbin:/usr/bin:/usr/sbin:/usr/local/bin:/usr/local/sbin:/usr/bin/X11:/usr/X11R6/bin:/usr/kerberos/bin:/root/bin


25. 시스템 기본로그파일.

/var/log/messages
/var/log/secure
/var/log/wtmp
/var/run/utmp
/var/log/lastlog


26. PortSentry를 이용한 실시간 해킹방어 구현.(잘못 사용할시 서버접속 안됨)

tar -xvzf portsentry-1.1.tar.gz
make linux
make install

/usr/local/psionic/portsentry/portsentry -tcp
/usr/local/psionic/portsentry/portsentry -udp
/usr/local/psionic/portsentry/portsentry -stcp
/usr/local/psionic/portsentry/portsentry -atcp
/usr/local/psionic/portsentry/portsentry -stdp

vi /etc/hosts.deny 점검.


27. 서버내에 중요한 디렉토리 점검

# /etc/xinetd.d/    (xinetd로 서비스되는 인터넷서비스 파일들이 존재하는 디렉토리)
# /etc/rc.d/           (부팅에 관계된 파일) (파일들을 복사 후 파일용량등을 비교하기) (커널패닉의원인)
# /etc/rc.d/init.d/ (부팅시에 특정 서비스나 데몬들을 시작시키는 스키립트 파일)


List of Articles
번호 제목 글쓴이 날짜 조회 수
28 파일 퍼미션 설정을 통한 로컬 공격 방지 l2zeo 2010.03.08 8168
27 LINUX 해킹당했을 때 대처요령 l2zeo 2010.03.08 8731
26 iptables 리눅스? NETFILTER관련 1 l2zeo 2010.03.08 10122
25 해킹이 의심될 때 사용되는 명령어들 l2zeo 2010.03.08 9864
24 Cisco/Tip/라우터,스위치에서 패킷 캡쳐하기 file l2zeo 2010.03.23 16122
23 리눅스 - iptables NAT rule ADMINPLAY 2010.03.24 9669
22 안티 루트킷 사용 예 l2zeo 2010.03.28 11573
21 리눅스 보안 - 권한설정에 주의해야할 명령어들은 ? l2zeo 2010.03.31 27743
20 매직키를 이용한 응급복구법 l2zeo 2010.03.31 32083
19 /etc/passwd 구조 l2zeo 2010.03.31 34919
18 보안 체킹 프로그램 - portsentry file ADMINPLAY 2010.04.27 16166
17 [적용] iptables 접속 차단 스크립트 ADMINPLAY 2010.05.03 25618
16 해킹 당했는지 알아보는 방법 ADMINPLAY 2010.05.03 19977
15 php.ini 보안 설정 ADMINPLAY 2010.05.03 20373
14 웹어플리케이션 보안 ADMINPLAY 2010.05.03 17148
13 denyhosts (ssh, ftp 등의 접근 차단) ADMINPLAY 2010.05.03 21358
12 php 수호신 설치 ADMINPLAY 2010.05.03 20824
11 PHP 보안관련 설정 권고사항 ADMINPLAY 2010.05.19 20208
10 iptables를 이용한 SSH brute force 공격방어 l2zeo 2010.05.29 19686
9 modsecurity-2.5 configure: *** apr library not found. ADMINPLAY 2010.09.12 21131
Board Pagination Prev 1 2 3 4 5 Next
/ 5

Copyright ADMINPLAY corp. All rights reserved.

abcXYZ, 세종대왕,1234

abcXYZ, 세종대왕,1234