2015년 1월 7일 수요일

미리보기, 썸네일(Thumnail)

Page info



미리보기 파일

미리보기 파일은 파일 시스템에 존재하는 멀티미디어 데이터의 구분을 쉽게 하여, 운영체제 사용자에게 보다 나은 사용성을 제공하기 위해 존재하며, 멀티미디어 데이터의 빠른 검색을 위한 색인으로도 사용된다.

미리보기 파일은 썸네일(Thumnail)이라 불리는데, 이는 시각적인 효과를 주로 다루는 미술, 영화 감독이나 그래픽 디자이너들이 자신의 생각을 서술하기 위해 그리는 작은 그림을 지칭하는 용어이기도 하다.



Thumb.db


Thumbs.db는 Windows XP, 2003에서 사용되던 미리보기 캐시 데이터베이스이다. 썸네일을 각 폴더의 Thumbs.db 파일에 저장하는 것이 특징이며, 보호된 운영체제 파일로 존재한다. 

별도의 설정이 없는 경우 96  96 픽셀(변경 가능)로 저장된 썸네일 데이터를 확인할 수 있다. 데이터베이스는 한글, 2003 오피스 문서와 같은 컴파운드 문서(Compound Document)형식으로 되어 있다.


Thumbcache_##.db


Thumbcache_##.db는 Vista이상의 Windows 운영체제에서 사용되는 썸네일 캐시 데이터베이스이며 Thumb.db와 다르게 운영체제에 존재하는 썸네일을 중앙 집중적으로 관리한다.

역시 보호된 운영체제 파일로 존재하며, 미리보기 크기별로 데이터베이스 파일 관리하는 것이 특징이다. 

  • 아주 큰 아이콘(256256)
  • 큰 아이콘(9696)
  • 보통 아이콘(3232)



미리보기 파일의 포렌식적 의미


웹 디자인, 프로그램 구현 및 파일 탐색 관점에서는 글보다 직관적인 형태의 링크를 제공할 수 있다는 점에서 중요성을 인정 받지만, 디지털 포렌식 조사 관점에서는 다음의 특징이 중요하다. 


  • 미리보기 수행 시 운영체제에 의해 자동으로 생성(생성 증거)
  • 원본 파일이 삭제되더라도 관련된 썸네일은 잔존
    (사용자가 고의로 삭제하지 않는 한 썸네일은 남아있게 된다.)
  • 각종 파일의 아이콘에 대해서도 썸네일을 생성

이에 따라 조사관은 특정 폴더에 관한 접근 여부와, 존재했던 파일에 관한 정보를 썸네일을 통해 확인할 수 있게 된다. 

또한, 사용자에 의해서만 삭제 가능한 특징으로 인해 의도적으로 삭제되지 않는 한 그림 파일에 대한 단서 확보 가능할 수 있으며, 삭제된 흔적이 발견되는 경우, 용의자 의도를 의심해볼 필요 있다.




분석 대상(Target)

※ 아래의 내용은 PFP-List와 연동되는 정보로, PFP에서 확인 및 분석에 직접적인 활용이 가능합니다.
   (PFP ManualPFP DownloadPFP home)


Thumnail
Target Path(Location)
Windows folders
Check List
Check specific image file what exsited in that folder
Compound document format
Related Tools
[Public] Compound Document Viewer
Thumbnail Database Viewer

XP 이하의 운영체제에서 사용되던 미리보기 데이터베이스 파일은 컴파운드 문서 형식이므로 컴파운드 포멧 해석기를 통해서도 내부의 데이터를 확인할 수 있으며, 각 폴더마다 DB파일이 생성되는 것을 기억하고 데이터 수집 시 분석이 필요한 위치의 DB파일을 빠짐없이 수집할 수 있도록 하자. 



Thumbcache_##.db
Target Path(Location)
%UserProfile%\AppData\Local\Microsoft\Windows\Explorer\
Check List
Check specific image file what exsited in that system
Related Tools
Thumbcache-Viewer

Windows Vista 이상의 운영체제에서 사용되는 미리보기 데이터베이스 파일로, 별도의 포멧을 가지고 있기에 전용 뷰어로 열람하여야 한다. Vista 이후에는 보다 효율적인 관리를 위해 각 폴더별로 DB파일을 생성하지 않고 위 경로의 DB파일에서 모든 내용을 저장하므로 보다 손쉬운 수집이 가능하다. 





2014년 12월 7일 일요일

윈도우 시스템 로그(Windows System Logs)

Page info



    윈도우 시스템 로그

    윈도우는 이벤트 로그라는 걸출한 바이너리 로깅 시스템을 가지고 있지만, 시스템 운용을 위한 서브시스템 별로 로그를 따로 관리하기도 하고, 호환성 유지를 위해 전통적으로 운용되어온 로그를 아직 유지하고 있기도 하다.

    이러한 로그파일들은 텍스트 형태로 되어 있어 열람이 쉬운 편이며, 네트워크 장비 로그와 같이 무모한 양의 로그를 기록하지도 않으므로 상대적으로 분석하기에 용이하다. 또한 잘 살펴보면 설치 시점부터 지속적으로 발생하는 동작들에 대하여 많은 정보를 얻을 수도 있다.

    중요한 것은 포렌식 관점에서 로그들이 남기는 의미를 정확히 파악하는 것인데, 각각의 로그의 분석과 교차 분석을 통해 의미 있는 정보를 찾아내는 것은 그 자체만으로도 내용이 방대하므로, 본 페이지에서는 각 로그의 대표적인 특징만 기술하고자 한다.

    하지만, 로그파일들에 기록된 각각의 로그의 특징을 정확하게는 모른다고 하더라도, 대부분은 생성증거로서 핵심 증거에 대한 주변 정황판단 근거를 마련하는데 이용되므로, 적절한 키워드 검색의 활용과 각각의 로그의 역할만이라도 잘 숙지하고 있다면, 사건 해결에 필요한 정보를 취득하는데는 무리가 없을 것이다.

    아래 분석 대상(Target)에서 대표적인 윈도우 로그의 종류와 그 특징 및 경로를 확인할 수 있으므로, 학습.분석 시 참고하기 바란다.



    분석 대상(Target)

    ※ 아래의 내용은 PFP-List와 연동되는 정보로, PFP에서 확인 및 분석에 직접적인 활용이 가능합니다.
       (PFP ManualPFP DownloadPFP home)



    Setupact
    Target Path(Location)
    [In Windows 7 or higher]
    %SystemRoot%\PANTHER\setupact.log
    [In Windows XP]
    %SystemRoot%\setupact.log
    Check List
    Information on installing application
    List of graphical action occurred during installation
    Timestamp on each action
    Related Tools
    [Public] Text File Viewer
    Notepad
    Notepad++
    LTFViewer

    설치하는 동안의 설치 작업에 대한 정보를 담아두는 로그로, 응용프로그램 설치 절차에서 디스플레이와 관련된 부분에 대한 기록을 주로 유지한다. 



    Netsetup
    Target Path(Location)
    %SystemRoot%\Debug\Netsetup.log
    Check List
    Network-related behavior or error on installing application
    Related Tools
    [Public] Text File Viewer
    Notepad
    Notepad++
    LTFViewer

    시스템이 설치되는 동안에 생성, 네트워크와 관련하여 생기는 동작이나 오류 등을 기록하는 로그이다. 



    Task Scheduler
    Target Path(Location)
    %SystemRoot%\SchedLgU.txt
    %WINDIR%\Tasks\
     - Look at the *.job file (job file format)

    [In Windows Vista or higher only]
    %WINDIR%\System32\Tasks\
     - There are no extention (XML file format)
    Check List
    Remote Logon or access
    Account create or delete
    Service strat or end
    Process start
    System halt
    Related Tools
    elex

    작업 스케줄러의 예약된 작업 대한 실행 결과를 기록하는 로그이다. 



    Firewall Log
    Target Path(Location)
    [In Windows 7 or higher]
    %SystemRoot%\system32\LogFiles\Firewall\pfirewall.log
    [In Windows XP]
    %SystemRoot%\pfirewall.log
    Check List
    Incoming or outgoing traffic information
    Related Tools
    [Public] Text File Viewer
    Notepad
    Notepad++
    LTFViewer

    시스템 내부로 들어오는 트래픽을 수집하거나 식별한 내용을 기록하는 로그이다. 



    Dr.Watson
    Target Path(Location)
    %SystemRoot%\Drwatson\Watsonxxx.wlg
    Check List
    Debugging information in case of error
    Related Tools
    [Public] Text File Viewer
    Notepad
    Notepad++
    LTFViewer

    닥터 왓슨은 윈도우에서 응용프로그램이 동작 중에 발생하는 오류에 대한 해결 프로그램이다. 프로그램 디버깅을 위해 사용되는 로그이지만, 프로그램의 동작 여부, 작동 이상 여부를 증명하는데에도 사용 가능할 것이다. 




    Cbs.log
    Target Path(Location)
    %SystemRoot%\setupact.log
    %SystemRoot%\logs\cbs\cbs.log
    Check List
    Details of the system recovery operation and verification
    Related Tools
    [Public] Text File Viewer
    Notepad
    Notepad++
    LTFViewer

    시스템에서 진행되는 다양한 복구 작업, 검증 작업을 기록하는데 사용된다. 



    Crash Dump Files
    Target Path(Location)
    %SystemRoot%\Minidump\*.dmp
    Check List
    Snapshot of specific memory area
    Sometime contains OS-related information
    Related Tools
    [Public] Text File Viewer
    Notepad
    Notepad++
    LTFViewer

    응용프로그램 혹은 운영체제 충돌 시 관련된 메모리 영역과 데이터에 관한 스냅샷을 가지고 있는 파일이다. 프로그램 디버깅을 위해 주로 사용되지만, 충돌 당시의 시스템 상태를 살펴 보는데에도 도움이 될 수 있다. 



    Setuperr
    Target Path(Location)
    [In Windows 7 or Higher]
    %SystemRoot%\PANTHER\setuperr.log
    [In Windows XP]
    %SystemRoot%\setuperr.log
    Check List
    Error information on installing application
    Related Tools
    [Public] Text File Viewer
    Notepad
    Notepad++
    LTFViewer

    응용프로그램을 설치하는 동안의 설치 리포트(오류 등)에 대한 정보를 담아두는 로그이다. 



    Setupapi
    Target Path(Location)
    %SystemRoot%\setupapi.log

    [Vista and more over only]
    %SystemRoot%\INF\setupapi.dev.log
    %SystemRoot%\INF\setupapi.app.log
    Check List


    Log information on installing plug and play device and driver - setupapi.dev.log
    Log information on installing application - setupapi.app.log
    Log information on installing service pack and hotfix - setupapi.log
    Log information about major changes in the system - setipapi.log
     - include device and driver change
    Related Tools
    [Public] Text File Viewer
    Notepad
    Notepad++
    LTFViewer

    setupapi.log : 윈도우 Vista 이전 버전에서 사용되던 파일로  여기에 전부 저장, 장치 변경 사항, 드라이버 변경 사항 및 서비스 팩 설치와 핫픽스 설치와 같은 주요 시스템 변경에 관한 로그
    setupapi.dev.log : 플러그 앤 플레이 장치 및 드라이버 설치에 대한 정보에 대한 로그
    setupapi.app.log : 응용 프로그램 설치에 대한 정보에 대한 로그




    RDP Log
    Target Path(Location)
    %Profile%\Documents\Default.rdp
    Check List
    Connected ip or host name
    Related Tools
    [Public] Text File Viewer
    Notepad
    Notepad++
    LTFViewer

    분석 대상 시스템에서 RDP 접속을 흔적 파악하는데 사용될 수 있다. RDP 접속 후 네트워크를 통해 용의자가 파일을 전송하였거나, 정보를 획득할 수 있다는 가능성을 제기할 수 있으며, 침해사고 관점에서는 원치 않은 접속 요청에 대한 정보를 수집하여 시스템의 악성 행위 시점을 판단하는데 도움을 줄 수 있다. 





      윈도우 휴지통(Windows Recycle)

      Page info

      휴지통


      http://frederick.tistory.com/

      휴지통은 사용자가 더 이상 사용을 원하지 않아 삭제하는 파일 또는 디렉터리가 이동하는 영역이다.

      실제로 사용할 때에는 특별한 어플리케이션 처럼 동작하는 것으로 보이지만, 파일 시스템 관점에서 살펴 보았을 때, 휴지통은 단순한 디렉터리에 불과하다. 다만, 이 디렉터리에 대한 접근이 휴지통 어플리케이션을 통해서만 가능하도록 되어 있고, 내부에 있는 파일 역시 휴지통 어플리케이션이 해석 가능한 것들만 보여준다는 차이점이 있을 뿐이다.

      휴지통으로 파일 혹은 디렉터리를 삭제하는 행위 또한 실제 파일은 그대로 남겨둔 채 파일 시스템에 기록된 파일(혹은 디렉터리)과 관련된 메타 정보만을 변경할 뿐이다. 이 때, 원본 파일 복원을 위해 다양한 정보 저장하기 위해 생성되는 파일을 휴지통 정보 파일이라고 부르며, Vista 이전 버전에서는 단일 파일로 관리하였고 Vista 이후 부터는 삭제된 개체별로 정보파일을 하나씩 생성하여 관리를 하고 있다.



      휴지통 정보 파일

      휴지통은, 내부에 삭제된 파일을 저장할 때 아래와 같은 규칙을 통해 파일의 이름을 생성한다. 

      • Windows XP 휴지통 정보 파일
        • 삭제된 파일명 : D[drive letter][index number].[extension of original]
        • 정보 파일명 : INFO2
          .
      • Windows 7 휴지통 정보 파일
        • - 삭제된 파일명 : $R[random].[extension of original]
        • - 정보 파일명 : $I[same with $R].[extension of original]


      휴지통은 파일명 규칙에 맞지 않는 파일이 휴지통에 있을 경우, 일반적인 휴지통 열람으로는 내용을 보여주지 않는다. 이와 같은 특성 때문에 악성코드 혹은 사건 용의자가 정보를 은닉하는데 애용되기 때문에 반드시 파일 시스템을 해석하여 내부의 정보를 살펴볼 필요가 있다는 점을 기억하자. 



      분석 대상(Target)

      ※ 아래의 내용은 PFP-List와 연동되는 정보로, PFP에서 확인 및 분석에 직접적인 활용이 가능합니다.
         (PFP ManualPFP DownloadPFP home)


      XP Recycle Bin
        Target Path(Location)
        %SystemDrive%\RECYCLER\\DX#.
         - Deleted file
        %SystemDrive%\RECYCLER\\INFO2
         - Information file(one per folder)
         - [SID Check] : HKLM\SOFTWARE\Microsoft\Windows NT\CurrentVersion\ProfileList
        Check List
        [In INFO2 file]
         - Original file path
         - drive letter
         - File deleted date and time
         - physical size of deleted file
        Related Tools
        INFO2
        del2info

        휴지통 폴더 내부에는 사용자 계정 별로 계정 SID이름으로 된 폴더가 존재하므로 조사를 원하는 사용자의 휴지통 경로를 구분하여 분석을 진행할 필요가 있다. 

        다음의 레지스트리 경로에서 사용자 SID의 확인 가능

        • HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows NT\CurrentVersion\ProfileList



        Win7 Recycle Bin
        Target Path(Location)
        %SystemDrive%\$Recycle.bin\$I.
         - Information file(one per deleted file)
        %SystemDrive%\$Recycle.bin\$R.
         - Deleted file
        Check List
        [$I. file]
         - physical size of deleted file
         - delete date and time of deleted file
         - original file path and name
        Related Tools
        del2info

        휴지통 폴더 내부에는 사용자 계정 별로 계정 SID이름으로 된 폴더가 존재하므로 조사를 원하는 사용자의 휴지통 경로를 구분하여 분석을 진행할 필요가 있다. 

        다음의 레지스트리 경로에서 사용자 SID의 확인 가능
        • HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows NT\CurrentVersion\ProfileList

        시스템 임시폴더(System Temp)

        Page info

        윈도우 임시 폴더

        운영체제는 시스템 운용이나 사용자의 특정 작업을 원활하게 하기 위하여 임시폴더라는 개념을 사용한다. 

        임시폴더는 말 그대로 임시로 사용되는 파일이나 폴더가 저장되는 경로로, 압축을 해제할 때에나 인터넷에서 다운로드 받은 파일을 저장 없이 실행할 때에 사용되는 것이 대표적인 예이다. 


        임시폴더 예시


        짐작할 수 있는 바와 같이 다양한 응용프로그램이나 운영체제 운용 상황에 임시폴더가 활발하게 사용되고 있기 때문에, 임시 폴더의 분석 목적을 특정하기는 어렵다. 또한 앞으로 만나게 될 분석 대상 시스템의 임시폴더에 어떤 데이터가 들어있는지 예측할 수도 없을 것이다. 

        중요한 것은 임시폴더 자체는 사용자가 굳이 알 필요가 없는 연산 과정을 수행하기 위한 데이터를 저장하기 위한 목적으로 존재하기 때문에, 임시폴더를 들여다보는 사용자가 거의 없다는 것이다. 그리고 임시폴더를 실제로 열어본다고 하더라도 여러가지 유형의 파일들이 규칙없이 산재하기 때문에, 특정 데이터가 눈에 띄기는 쉽지 않다. 

        문제는 이러한 특징을 악성코드 제작자나 사건 용의자가 이용하여 특정 파일을 은닉하는데 사용할 수도 있다는 것이다. 전적으로 가정일 뿐이지만, 임시폴더를 제대로 조사하지 않아 쉽게 얻을 수 있는 단서를 놓친 경험이 있다면 다음 조사 때 부터는 임시폴더를 꼭 확인하게 될 것이다. 

        또한, 임시폴더에 잔존하는 데이터를 통해 응용프로그램을 사용한 흔적을 일부 입증할 수 있을 가능성도 존재하므로, 사고 이미지 획득 시 임시폴더는 간단하게나마 살펴볼 필요가 있다는 것을 기억하자. 



        분석 대상(Target)

        ※ 아래의 내용은 PFP-List와 연동되는 정보로, PFP에서 확인 및 분석에 직접적인 활용이 가능합니다.
           (PFP ManualPFP DownloadPFP home)



        System Temp
        Target Path(Location)
        %SystemRoot%\Temp\
        %UserProfile%\Local Settings\Temp\
        %UserProfile%\AppData\Local\Temp\
        %UserProfile%\AppData\Local\Microsoft\Windows\Temporary Internet Files
        Check List
        Any file in temporary folder
        Related Tools
        None(Multi-dimensional analysis)

        시스템에서 사용되는 임시 폴더가 존재하는 경로로, 사건에 따라 다각적인 분석을 필요로 한다. 
        실제로, %UserProfile%\Local Settings\Temp\와 %UserProfile%\AppData\Local\Temp\는 하드링크로 연결되어 있으며, 같은 곳을 가리킨다.