침입 탐지 방법 및 절차

2019. 12. 3. 13:32IT/S . e . v . e . r . I . n . f . r . a

  1. 특별한 장소 또는 행위로부터의 접속에 대한 로그파일을 조사한다.
    • last, syslog, 프로세스 로그와 그밖에 다른 로그들을 조사한다.
    • 방화벽 또는 라우터에 의한 로그 기록이 있을 경우 조사한다.
  1. setuid, setgid 파일을 조사한다.

    • 침입자는 종종 추후에 루트권한으로 접속하기 위해 /bin/sh 또는
      /bin/time과 같은 백도어 파일을 남겨둔다.

    • 다음의 방법으로 setuid, setgid 파일을 찾는다.

        # find / -user root -perm -4000 -print  
        # find / -group kmem -perm -2000 -print  

      NFS/AFS 마운트 시스템에서는 다음과 같은 명령어를 이용한다.

        #find / -user root -perm -4000 -print -xdev  
    • setuid 파일을 찾는 다른 방법으로 각각의 파티션에 대해 적용하는
      ncheck 가 있다.

        # ncheck -s /dev/rsd0g
  1. 시스템의 바이너리 파일의 변경 여부를 조사한다.

    • 침입자는 /etc/inetd.conf 가 참조하는 다음과 같은 파일들을 변경한
      다.

        login, su, telnet, netstat, ifconfig, ls,  
        find, du, df, libc, sync 등
    • 백업된 초기 파일과 현재의 파일을 비교하기 위한 유닉스의 sum 명령
      어는 트로이목마프로그램에 의해 믿지못하는 결과를 나타낼 수 있으므
      로 다음 프로그램을 사용한다.
      cmp, MD5, Tripwire, 기타 다른 암호화 검사 유틸리티들

  1. 인가받지 않은 네트워크 모니터링 프로그램의 사용을 조사한다.
    • 침입자는 사용자의 계정과 패스워드 정보를 얻기 위해 sniffer 또는
      packet sniffer를 사용한다.
  1. cron과 at.으로 수행되는 모든 파일을 검사한다.
    • 침입자는 보통 cron과 at 명령으로 수행되는 파일들에 백도어 프로그램
      을 남겨둔다. 그러므로 이러한 프로그램으로 수행되는 파일들을 쓰기
      금지로 설정한다.
  1. 인가받지 않은 서비스를 조사한다.
    • /etc/inetd.conf를 조사하여 인가받지 않은 추가되거나 변경된 서비스
      를 조사한다. 특히 쉘을 수행할 수 있는 /bin/sh나 /bin/csh를 조사한
      다.
  1. /etc/passwd 파일을 조사하여 변경된 부분이 있는지 확인한다.
    • 추가된 계정, 패스워드의 생략, uid(0로의)의 변경여부를 확인한다.
  1. 시스템과 네트워크 설정 파일의 인가받지 않은 항목을 조사한다.
  1. 시스템에 숨겨지거나 '.' 으로 시작하는 특이한 파일이 있는지 조사한다.
    • ls 명령어로 보이지 않는 파일을 조사한다.
        # find / -name ".. " -print -xdev  
        # find / -name ".\*" -print -xdev | cat -v  
      일반적으로 '.xx' 파일이나 '.mail' 파일이 침입자에 의해 이용된다.
  1. 지역 네트워크의 모든 시스템을 조사한다.