윈도우 보안점검 가이드

2014.02.19 10:53

소울 조회 수:3731

보안관리자로써 경력이 3-4년 된 분들이라면 침입차단시스템과 침입탐지시스템과 같은 기본적인 보안장비 자체에 대한 지식과 운영경험은 아주 뛰어나리라 생각된다. 하지만 그런 중급 보안관리자라 하더라도 쉽게 접근하기 어렵다고 느끼는 분야가 있다면

 "침해사고 분석(Forensic)"이 아닌가 한다. 

본 문서에는 Windows 2000 서버를 대상으로 보안관리자는 물론 일반 IT관리자들도 손쉽게 접근할 수 있는

"침해사고 분석" 절차에 대해서 알아보겠다. 


비정상 네트워크 확인 

1. 비정상 네트워크 연결 확인 

1) 목적 
- 대상 시스템에서 네트워크를 통하여 열려 있는 서비스를 확인하고 불필요한 서비스가 동작 중인지의 여부를 확인한다. 

2) 점검 방법 

① [시작] →[실행] →cmd 입력 후 엔터 
② cmd창에서 netstat 실행 

C:\>netstat -na


③ -na 옵션을 통해서 열려있거나 연결된 TCP/UDP 포트 확인 가능 
④ cmd창에서 netstat -na | findstr LISTENING 실행하여 Listen하고 있는 TCP 포트 확인 

C:\>netstat -na | findstr LISTENING


⑤ cmd창에서 netstat -na | findstr LISTENING 실행하여 Listen하고 있는 UDP 포트 확인 

C:\>netstat -na -p udp | findstr *:*



2. 비정상 네트워크와 매핑된 프로세스 확인 

1) 목적 
- 공개 툴인 fport를 이용하여 TCP/UDP 포트와 매핑된 프로그램(프로세스)를 확인한다. 

2) 점검 방법 

① [시작] →[실행] →cmd 입력 후 엔터 
② cmd창에서 fport 실행 

C:\>fport


③ 다운로드 사이트 
http://www.foundstone.com/resources/freetools.htm 


3. 비정상 NetBIOS 연결 확인 

1) 목적 
- 대상 시스템에서 네트워크를 통하여 열려 있는 서비스 중에서 비정상적인 NetBIOS 연결을 확인한다. 

2) 점검 방법 

① 시작] a [실행] a cmd 입력 후 엔터 
② cmd창에서 net share 실행 a 공유된 자원 확인 

C:\>net share


③ cmd창에서 net view 실행 a 공유된 자원 확인 

C:\>net view \\127.0.0.1


④ cmd창에서 net session 실행 a 연결되어 있는 세션 확인 

C:\>net session


⑤ cmd창에서 net use 실행 a 연결되어 있는 네트워크 자원 확인 

C:\>net use



비정상 프로세스 확인 

1. 비정상 프로세스 확인 

1) 목적 
- 대상 시스템에서 실행중인 프로세스를 점검하여 트로이안목마/백도어 등 관리자가 실행하지 않았거나 인지하고 있지 못하는 의심스러운 프로세스를 점검한다. 

2) 점검 방법 
- Windows 리소스 KIT에서 제공하고 있는 프로세스, 서비스 관련 툴을 사용한다. 

  • Tlist 

    ① [시작] →[실행] →cmd 입력 후 엔터 
    ② cmd창에서 tlist 실행 

    C:\>tlist -t

    ③ 실행중인 프로세스와 해당 작업명을 확인 가능 

  • Pulist 
    ① [시작] →[실행] →cmd 입력 후 엔터 
    ② cmd창에서 pulist 실행 

    C:\>pulist

    ③ 실행중인 프로세스와 해당 소유자 확인 가능 


    비정상 서비스 확인 

    1. 가동 중인 서비스 확인 

    1) 목적 
    - 대상 시스템에서 실행중인 서비스를 점검하여 트로이안목마 서비스와 같이 관리자가 실행하지 않았거나 인지하고 있지 못하는 의심스러운 서비스를 점검한다. 

    2) 점검 방법 
    - Windows 리소스 KIT에서 제공하고 있는 프로세스, 서비스 관련 툴을 사용한다. 

  • sclist 
    ① [시작] →[실행] →cmd 입력 후 엔터 
    ② cmd창에서 sclist실행 

    C:\>sclist

    ③ 실행중인 프로세스와 해당 소유자 확인 가능 

  • Net start 
    ① [시작] →[실행] →cmd 입력 후 엔터 
    ② cmd창에서 net start실행 

    C:\>net start

    ③ 실행 중인 서비스만 확인 가능 


    레지스트리에 등록된 자동실행 프로그램 확인 

    1) 목적 
    - 침입에 성공한 해커가 사용자나 관리자의 로그온 시, 또는 시스템이 부팅될 때 트로이안목마/백도어를 자동 실행하기 위해 시작 프로그램에 자신의 스크립트를 넣어 놓거나 startup 레지스트리(REGISTRY)에 등록시킬 수 있다. 

    2) 점검 방법 

    ① [시작] → [실행] → cmd 입력 후 엔터 
    ② cmd창에서 reg 명령을 통해서 startup 레지스트리 내용 확인 

    C:\>reg query HKLM\SOFTWARE\Microsoft\Windows\CurrentVersion\Run /s

    ③ 다음과 같은 레지스트리에 대해서 확인 
    - HKLM\SOFTWARE\Microsoft\Windows\CurrentVersion\Run 
    - HKLM\SOFTWARE\Microsoft\Windows\CurrentVersion\RunOnce 
    - HKLM\SOFTWARE\Microsoft\Windows\CurrentVersion\RunOnceEx 
    - HKLM\SOFTWARE\Microsoft\Windows\CurrentVersion\Runservices 
    - HKLM\SOFTWARE\Microsoft\Windows\CurrentVersion\RunservicesOnce 


    비정상 사용자 계정 및 그룹 확인 

    1. 등록된 사용자 계정 확인 

    1) 목적 
    - 관리자 권한을 갖는 불법적인 사용자의 추가가 이루어졌는지를 검사한다. 

    2) 점검 방법 

    ① 사용자 목록 점검 
       ⒜ [시작] →[실행] →cmd 입력 후 엔터 
       ⒝ cmd창에서 sclist실행 

    C:\>net user


    ② 로컬 사용자 그룹 점검 

       ⒜ [시작] →[실행] →cmd 입력 후 엔터 
       ⒝ cmd창에서 sclist실행 

    C:\>net localgroup


    ③ Administrators에 속한 사용자 점검 

       ⒜ [시작] →[실행] →cmd 입력 후 엔터 
       ⒝ cmd창에서 sclist실행 

    C:\>net localgroup administrators



    2. 로그온 관련 이벤트 확인 

    1) 목적 
    - 로그온 관련 이벤트를 확인하여 비정상적인 접속 시도가 없었는지를 확인한다. 

    2) 점검 방법 

    ① [시작] →[실행] →cmd 입력 후 엔터 
    ② cmd창에서 sclist실행 

    C:\>ntlast -f


    ③ 실패한 로그온 정보 가운데 의심스러운 접속 시도를 확인 

     



    비정상 예약 작업 확인 

    1. 비정상 예약 작업 확인 

    1) 목적 
    - 일정 시간마다 미리 설정해둔 프로그램을 실행할 수 있는 예약된 작업은 시작 프로그램과 더불어 해커들이 트로이목마/백도어를 설치하기 좋은 방법이다. 

    2) 점검 방법 

    ① GUI로 확인 

       ⒜ [시작] →[설정] →[제어판] →[예약된 작업] 확인 



       ⒝ 등록된 예약작업을 click하여 상세 내역을 확인 

    ② CLI로 확인 
       ⒜ [시작] →[실행] →cmd 입력 후 엔터 
       ⒝ cmd창에서 at 실행 

  • C:\>at


       ⒞ 위에 언급한 GUI형태의 "예약 작업 추가"를 통하지 않고 CLI의 at을 사용한 예약 작업을 확인 


    비정상 이벤트 확인 

    1. 비정상 이벤트 확인 

    1) 목적 
    - 관리자 권한을 획득한 해커가 시스템 로그를 지우지 않았을 경우,                                                                                            시스템 로그는 공격 방법 및 역 추적을 위한 중요한 자료로 사용될 수 있다. 

    2) 점검 방법 
    - Windows 시스템에서 제공하고 있는 이벤트 로그와 IIS 로그를 분석한다. 

       ⒜ [시작] →[프로그램] →[관리 도구] →[이벤트 뷰어] 선택 
       ⒝ 간단하게 [시작] a [실행]에서 eventvwr.msc를 입력해도 동일함. 


  •    ⒞ "보안 로그" 외에도 "해킹을 의심할 수 있는 로그를 확인할 수 있으므로 "보안/시스템/응용 프로그램" 로그에 대해서도 검사 

         √ 확인해야 할 로그 종류 : 오류, 경고, 실패감사, 정상근무 시간이외의 성공감사 
         √ 의심해야 하는 이벤트 ID 



    이상 2회에 걸쳐서 Windows 침해사고 분석 절차에 대해서 알아 보았다. 본 문서가 Windows 침해사고의 모든 것을 보여주지는 못 하지만, 바쁜 업무에 시달리는 일반 IT 관리자들에게 조금이나마 도움이 되길 기대한다. 

    끝으로 Microsoft사에서 제공하는 보안 관련 문서를 알려 드리니 본 문서와 더불어서 참고하기 바란다. 

    [Microsoft Security Guidance Center: 서버 보안] 
    http://www.microsoft.com/korea/security/guidance/topics/ServerSecurity.mspx 

    II. Windows 2000의 기본 프로세스 
    http://support.microsoft.com/support/kb/articles/Q263/2/01.ASP