'windows 8 artifacts'에 해당되는 글 3건

  1. 2012.05.14 Windows 8 Forensics - 4. Registry
  2. 2012.05.14 Windows 8 Forensics - 3. Artifacts (2)
  3. 2012.05.14 Windows 8 Forensics - 2. Artifacts (1)

Windows 8 Forensics - 4. Registry

Registry를 Mining하는 작업은 포렌식적으로 굉장히 유용하다. 해당 섹션에서 포렌식적으로 유용한 경로를 알아본다. 이전 Windows버전과 비슷하다. ^^


- NTUSER.DAT

NTUSER.DAT는 특정한 사용자에 대한 정보를 기록한다. 만약 여러 사용자가 컴퓨터에 존재할 경우, NTUSER.DAT 역시 여러개 존재하게 된다. 이 파일에는 사용자가 열었던 파일이나 사용한 어플리케이션, 방문했던 웹사이트 등을 남긴다. 경로는 아래와 같다.

기본 경로 : %SystemRoot%\Users\%User%\NTUSER.DAT\


Typed URL Time

%SystemRoot%\Users\%User%\NTUSER.DAT\Software\Microsoft\Internet Explorer\TypedURLsTime\

%SystemRoot%\Users\%User%\NTUSER.DAT\Software\Microsoft\Internet Explorer\TypedURLs\

Typed URL Time은 바이너리로 저장되며 1601년 1월 1일 GMT 00:00:00 이후의 100나노세컨드로 표현된다. FILETIME 구조는 두개의 32비트 값으로 구성되어 있으며, 이 값은 64비트 값을 표현하기 위해 결합되었다. URL들은 TypedURLs에서 확인할 수 있으며, 각각의 값은 TypedURLsTime과 연관지을 수 있다. 


- SAM

사용자 계정에 대한 정보를 담고 있다. 어느 도메인에 존재하는지 어떤 경로에 있는지 등을 알 수 있다. SAM key는 사용자 이름들을 저장한다, 이 저장된 이름은 로그인을 위해 사용되거나 사용자 계정의 RID(Relative Identifier)로 사용된다. SAM 안에 저장된 데이터는 아래 경로에서 찾을 수 있다.


기본 경로 : %SystemRoot%\Windows\System32\Config\SAM


Username 확인

%SystemRoot%\Windows\System32\config\SAM\Domains\Account\Users\%UserNumber%\GivenName

%SystemRoot%\Windows\System32\config\SAM\Domains\Account\Users\%UserNumber%\Sername


Last Logon

0x8-15의 8byte값

%SystemRoot%\Windows\System32\config\SAM\Domains\Account\Users\%UserNumber%\F


Last Password Change

0x24-31의 8byte값

%SystemRoot%\Windows\System32\config\SAM\Domains\Account\Users\%UserNumber%\F


Account Expiration

0x32-39의 8byte값 / 설정이 되어있지 않으면, 시간정보가 확인이 안되며, FF FF FF FF 로 표현된다.

%SystemRoot%\Windows\System32\config\SAM\Domains\Account\Users\%UserNumber%\F


Last Failed Logon

0x40-47의 8byte값

%SystemRoot%\Windows\System32\config\SAM\Domains\Account\Users\%UserNumber%\F


User's RID

0x48-49의 2byte값 / RID(Relative Identifier)

%SystemRoot%\Windows\System32\config\SAM\Domains\Account\Users\%UserNumber%\F


User's Tile

%SystemRoot%\Windows\System32\config\SAM\Domains\Account\Users\%UserNumber%\UserTile



- SYSTEM

SYSTEM은 OS에 대한 정보를 담고 있다. Device에 할당된 Drive letter, 컴퓨터 이름, 타임존, 시스템에서 사용한 USB 등이 있다. 또한 control sets에는 시스템 부팅에 관련된 설정이 담겨져 있다.


기본 경로 : %SystemRoot%\Windows\System32\config\System


Current Control Set : Current

%SystemRoot%\Windows\System32\config\SYSTEM\Select\Current

01은 현재 ControlSet001이라는 것을 알려준다.


Current Control Set : LastKnownGood

%SystemRoot%\Windows\System32\config\SYSTEM\Select\LastKnownGood

마지막에 성공적으로 부팅한 Control Set 번호를 의미한다.


Mounted Devices

%SystemRoot\Windows\System32\config\SYSTEM\MountedDevices\


Device Letter를 저장하고 있다. Device Letter는 USB를 연결하고 제거해도 마지막에 저장된 USB의 정보를 기록하고 있다.

Last Graceful Shutdown Time

마지막 정상 종료 시간

%SystemRoot%\Windows\System32\config\SYSTEM\ControlSet001\Control\Windows\ShutdownTime


시간 정보는 Windows FILETIME 로 기록되어 있다.


Sensor and Location Devices

%SystemRoot%\Windows\System32\config\SYSTEM\ControlSet001\Enum\SWD\SensorsAndLocationEnum\LPSensorSWDevice\HardwareID


Sensor and Location Devices는 Windows 7에서 부터 사용된 새로운 기능이다. 해당 기능이 활성화되면, 사용자는 Internet을 통하도록 설계된 활동에 대해서 OS와 함께 동작하도록 되어 있다. 예를 들어 GPS정보를 들 수 있다. Windows 8에서는 해당 기능이 활성화 되어 있다.


USB STORAGE DEVICES

%SystemRoot%\Windows\System32\config\SYSTEM\ControlSet001\Enum\USBSTOR


시스템에 연결된 USB 저장 장치는 SYSTEM 안에 생성되는 Key로 확인이 가능하다. Key에는 USB 저장장치가 연결된 PORT와 HUB, Time Stamp, Drive letter가 기록되어 있다. USB 저장장치가 시스템에 연결되지 않으면 당연히 USBSTOR Key가 생성되지 않는다. 하지만 분석가는 Link File, Restore Points, Shadow Copy, Setupapi.dev.log를 점검해야한다.


USBSTOR는 USB의 이름을 저장하고 있으며, Vendor ID, Product ID, Revision Number, Serial Number를 기록하고 있다. 만약 Device가 Serial Number를 가지고 있지 않다면, Windows는 Unique Instance ID를 부여한다. Serial Number의 두번째 Character가 "&"이면, Serial Number가 없는 거다. Serial Number가 없는 거는 "o&26D88A54&o"와 같은 Unique Instance ID를 부여 받는다.



FriendlyName에 USB의 이름이 저장되어 있다.

%SystemRoot%\Windows\System32\config\SYSTEM\ControlSet001\Enum\USBSTOR\%USB NAME%\%Unique Intance ID%\FriendlyName


Mounted Devices에서 보면 하나의 USB Device에 대한 하나의 Drive letter를 부여한다. 그러나 USBSTOR에서는 두개의 USB 저장장치가 저장된다. 


이러한 정보를 가지고 Tracking이 가능한가? 물론 가능하다. Tracking하는 법을 시작한다.


Prod_Flash_Disk에 대한 Unique Instance ID로 이동한다. 나중에 Unique Instance ID를 사용하므로 기록한다. 그리고 Unique Instance ID 아래에서 Container ID를 찾아서 기록한다. Windows 7부터 시스템에 설치된 각각의 Instance는  Container ID를 부여받는다.  PNP(Plug-n-Play) Manager는 Container ID를 사용하여 하나나 그 이상의 Device node를 그룹한다. 그룹들은 해당 Device가 어디에서 존재했는지, 어떤 Instance에 속해 있는지 알려준다. Instance는 Device Container라고 볼 수 있다.



Container ID에서 {07a38620-8a9c-5995-9d21-f13dbf1e51ea}를 발견하였다. 해당 값은 Device Containers에서 Key 값으로 발견이 된다. 해당 Key를 확인하면 GUID를 찾을 수 있다. GUID는 {53f56307-b6bf-11d0-94f2-00a0c91efb8b}이다. 해당 값을 기록해 둔다. 

%SystemRoot%\Windows\System32\config\SYSTEM\CurrentControlSet\Control\DeviceContainers\%ContainerID%\BaseContainers

%SystemRoot%\Windows\System32\config\SYSTEM\CurrentControlSet\Control\DeviceContainers\%ContainerID%\Properties


USB Date & Time을 확인하기 위해 아래의 위치로 이동한다.

%SystemRoot%\Windows\System32\config\SYSTEM\ControlSet001\Enum\USB\%VID&PID%\%Unique Instance ID%\Properties\{83da6326-97a6-4088-9453-a1923f573b29}\0064\0000


3번째 Entry에서 Prod_Flash_Disk가 plugin 된 시간 정보를 확인하기 위해서는 USB의 VID와 PID를 알아야 한다. 해당 USB의 VID와 PID는 VID_090C&PID_1000 이다. 시간 정보는 Windows FILETIME으로 확인할 수 있다.


그 다음 아래 위치를 이동하여 어떤 Port를 사용했는지 확인한다. Unique Instance ID에서 확인한 값을 가지고 확인해보면, LocationInformation을 확인할 수 있다. Hub2에 있는 Port1을 사용한 것을 알 수 있다.

%SystemRoot%\Windows\System32\config\SYSTEM\ControlSet001\Enum\USB\%VID&PID%\%Unique Instance ID%\LocationInformation


Mounted Device로 가서 GUID인 {87697c82-6708-11e1-8e1c-74f06da8e34b}를 확인하여 Prod_Flash_Disk가 사용된 흔적을 발견할 수 있을 것으로 생각되었는데, 같은 GUID값은 존재하지 않는다.


%SystemRoot%\Windows\System32\config\SYSTEM\MountedDevices\


이런 경우는 새로운 Device가 다시 할당 되었다는 의미이다. 그러므로 Link Files과 Restore Points, Shadow Copies, Setupapi.dev.log를 확인하여 사용자가 무슨 행위를 했는지 분석해야 한다.


Mounted Devices는 하나밖에 값을 보여주지 않는다.  


- SOFTWARE

SOFTWARE는 OS에 대한 정보를 담고 있다. Version, Installed Time, Registerd Owner, Last User to Logon, Members of a Group


기본 경로 : %SystemRoot%\Windows\System32\config\SOFTWARE


'Forensics' 카테고리의 다른 글

Time Encoder 공유  (1) 2012.08.22
Windows Files / 시간 정보  (0) 2012.05.14
Windows 8 Forensics - 3. Artifacts (2)  (0) 2012.05.14
Windows 8 Forensics - 2. Artifacts (1)  (0) 2012.05.14
Windows 8 Forensics - 1. Interface  (0) 2012.05.14
Posted by 도시형닌자
:

Windows 8 Forensics - 3. Artifacts (2)


- Event Log

Windows 7 / Windows 2008과 같은 EVTX 구조이다.

%SystemRoot%\Windows\System32\winevt\Logs\System.evtx
%SystemRoot%\Windows\System32\winevt\Logs\Security.evtx
%SystemRoot%\Windows\System32\winevt\Logs\Application.evtx


- Prefetch

기본 설정의 Windows 8Prefetch 파일을 가지고 있지 않다.

설정 정보
%SystemRoot%\Windows\System32\config\SYSTEM\ControlSet001\Control\Session Manager\
Memory Management\PrefetchParameters\EnablePrefetcher

Windows 7과 같은 경로를 가지고 있지만,  EnablePrefetcher  값은 존재하지 않는다.
EnablePrefetcher값을 생성하여, 부팅하여도 Prefetch는 생성되지 않는다.

Prefetch 경로
%SystemRoot%\Windows\Prefetch\


- $Recycle.Bin

%SystemRoot%\$Recycle.Bin\%USER SID%\


휴지통으로 파일을 옮기면 파일명이 변경된다. $RH#####.### / $IH#####.### 이런 식으로~

$RH는 파일이고 $IH는 해당 파일의 경로르 가지고 있다.

휴지통 비우기 전


휴지통 비우기 후





'Forensics' 카테고리의 다른 글

Windows Files / 시간 정보  (0) 2012.05.14
Windows 8 Forensics - 4. Registry  (0) 2012.05.14
Windows 8 Forensics - 2. Artifacts (1)  (0) 2012.05.14
Windows 8 Forensics - 1. Interface  (0) 2012.05.14
안드로이드 포렌식 3편 Log  (2) 2011.08.14
Posted by 도시형닌자
:

Windows 8 Forensics - 2. Artifacts

Windows Vista부터 Microsoft는 Application Data 폴더를 소개하였다. 이 폴더는 포렌식 분석가들이 OS에 속해 있는 데이터들이 어떤 것들인 확인할 수 있게 도와주었으며, 어떤 데이터가 사용자의 것들인지에 대해서도 확인할 수 있게 해주었다.


- Local Folder

AppData/Local 폴더는 사용자가 사용하지 않는다. 이 폴더에 저장된 데이터는 사용자가 탐험해보기에는 매우 크다. AppData/Local은 XP에서 "Documents and Settings\%UserName%\Local Settings\Application Data" 폴더로 알려져 있다. AppData/Local 폴더에서 포렌식적으로 의미있는 데이터는 Temporary Internet Files, Internet History 그리고  Windows 8이 남기는 다양한 파일들이 있다. 


Local 폴더에서 포렌식적으로 의미있는 경로는 아래와 같다.

기본 경로 : "%SystemRoot%\Users\%User%\AppData\Local\"


Metro Apps

Metro Interface에서 확인할 수 있는 App들에 대한 링크 파일를 확인할 수 있다.

%SystemRoot%\Users\Kayser\AppData\Local\Microsoft\Windows\Application Shortcuts 


IE 10 Websites Visited

Index.dat가 WebCacheV24.dat로 변경되었다.

%SystemRoot%\Users\Kayser\AppData\Local\Microsoft\Windows\WebCache\WebCacheV24.dat


IE 10 Websites Session

사용자가 IE 10을 사용하여 접근한 Website Session들을 확인할 수 있다.

%SystemRoot%\Users\Kayser\AppData\Local\Microsoft\InternetExplorer\Recovery\Immersive\Active

%SystemRoot%\Users\Kayser\AppData\Local\Microsoft\InternetExplorer\Recovery\Immersive\Last Active


사용자가 방문했던 Website내역은 Compound DAT 파일에서 발견할 수 있다. 해당 파일은 ClassID와 비슷한 파일명을 가지고 있다. Encase의 View Structure 기능을 사용하면 Unpack이 가능하며 "TL#"과 같은 형태의 이름들을 다수 확인할 수 있다. TL은 Travel Logs의 약자이며 사용자가 방문했던 Website들 정보를 Plain text로  기록한다. 


Journal Notes

사용자가 생성한 Journal notes의 history와 경로를 담고 있다.

%SystemRoot%\Users\Kayser\AppData\Local\Microsoft\Journal\Cache\msnb.dat


Journal Notes는 Windows7부터 사용된 기능이다. 하지만 Windows 8에서는 더 많이 사용될 것이다. Application은 DAT 파일을 유지하면서 Journal Notes의 장소를 Plain text로 저장하게 된다.  


 

IE 10 Pinned Favorites

사용자가 Metro Desktop에 고정시킨 즐겨찾기를 보여준다. 

%SystemRoot%\Users\Kayser\AppData\Local\Microsoft\Windows\ProamingTiles


각각의 즐겨찾기들은 링크파일로 생성되며, 파일명은 10개의 정수로 이루어 진다. 링크파일은 즐겨찾기에 대한 내용을 plain text로 저장하고 있다.


Desktop Tools

Device Manager, Command Prompt, Run과 같은 application에 대한 링크파일을 담고 있다.

%SystemRoot%\Users\Kayser\AppData\Local\Microsoft\Windows\WinX


Desktop Tools는 과거의 Start Menu의 Accessories and System Tools 폴더와 비슷하다. Task bar에서 우클릭하여 접근이 가능하다. 


우클릭하여 확인되는 내용은 세가지 그룹로 나눌 수 있으며,  각각의 그룹 안에 있는 Application은 Application을 실행할 수 있는 링크파일을 가지고 있다.


사용자는 해당 내역을 수정하여 사용 가능하다. 


세가지 그룹을 확인해보자 

그룹 1 Desktop

그룹 2 Run comand, Search, Windows Explorer, Control Panel, Task Manager

그룹 3 Run as Administrator Command Prompt, Command Prompt, Computer Managemnet, Disk Management, device Manager, System, Event Viewer, Power Options, Nerwork Connections, Programs and Features


Metro App Web Cache

Metro App의 Web cache

%SystemRoot%\Users\Kayser\AppData\Local\Packages\%MetroAppName%\AC\INetCache


모든 것은 Windows Live 계정을 사용하여 인터넷에 접근한다. 각각의 App을 통해 사용자는 다른 App에 접근이 가능하다. 각각의 App들은 운영체제가 되는 것이다. 그러므로 각각의 App들은 자신들의 internet artifacts를 가지게 된다. 


Metro App Cookies

Metro App에 대한 Cookie 파일들을 담고 있으며, 데이터는 Text 파일로 남겨진다.

%SystemRoot%\Users\Kayser\AppData\Local\Packages\%MetroAppName%\AC\INetcookies


각각의 Metro App는 Cookies를 남긴다. 해당 쿠키들은 txt로 남겨지며 실제 cookie파일의 내용과 거의 비슷하다.


- Communications App

Windows 8의 Metro Apps은 사용자 행위에 대해서 포렌식적으로 유용한 정보를 저장한다. 해당 정보는 악의적인 사용자가 Covering Track을 진행했을 때, 매우 유용하게 사용될 수 있다.


Communications App은 기본적으로 사용자의 Email, Chat Clients, Facebook, 다른 소셜 사이트의 정보를 가지고 있다. 


Cache

Communication App은 Web cache를 가지고 있다. 해당 경로에서는 Facebook에서서 확인한 사진들과 사용자별 사진 그리고 계정 Page의 사진을 담고 있다.


Cookies

Communication App은 cookies를 가지고 있다. Facebook을 사용하면서 친구와 Chat을 할 때, offline되어 전달되지 않은 메시지가 발견될 수 있다.



- Microsoft Folder

Digital Certificates

%SystemRoot%\Users\%User%\AppData\Local\Packages\microsoft.windowscommunicatonsapps_8wekyb3d8bbwe\AC\Microsoft\CryptnetURLCache\Conent


Microsoft 폴더는 Digital certificaties를 저장한다. Digital certificate은 인터넷 서핑이나 Email을 보낼 때, clients와 Servers를 인증하기 위해 쓰인다.

흔히 쓰이는 개인키와 공개키 방식이다.


Digital Certificate의 알아야 할 정보 - 해당 정보는 Plain text로 저장된다.

     - 소유자의 공개키

     - 소유자의 이름과 주소

     - 인증 만료 날짜

     - 인증 시리얼 번호

     - 인증을 발간한 조직


What's New

e-mail 주소, 물리 주소, 핸드폰 번호 등 을 담고 있다.

%SystemRoot%\Users\%User%\AppData\Local\Packages\microsoft_windowscommunicatonsapps_8wekyb3d8bbwe\AC\Microsoft\Internet Explorer\DOMStore\%History-Folder%\microsoft[3].xml


Microsoft아래에 Internet Explorer에 존재한다. 이 폴더는 사용자에게 "What's New"라는 업데이트를 알려준다. 이 업데이트 중에 페이스북도 포함되어 있다. 


아래의 경로에서 확인이 가능하다.

%SystemRoot%\Users\Kayser\AppData\Local\Packages\microsoft.windowscommunicationsapps_8wekyb3d8bbwe\AC\Microsoft\Internet Explorer\DOMStore\EVJNPCFB\microsoft[1].xml


페이스북 정보는 사용자가 생성한 사진, 업로드한 사진을 보여준다. 아래에서 보여지는 정보에서 시간과 정보를 확인할 수 있으며 친구인지 아닌지, 업로드된 파일이 있는지 없는지를 알려준다. 아래 XML을 보자


E-mail

E-mail 주소, 물리 주소, 핸드폰 번호 등을 담고 있다.

%SystemRoot%\Users\Kayser\AppData\Local\Packages\microsoft.windowscommunicationsapps_8wekyb3d8bbwe\LocalState\Indexed\LiveComm\dorumugs@live.co.kr\16.2\Mail


Windows 8의 Email은 다양한 Artifact가지고 있다. Email은 Communications App에 링크된 사용자 계정인지 아닌지 확인 할 수 있다. 또한 Streams라는 Artifact에서 보낸이의 이름, Email 주소, 제목, 첨부파일며으 받은 사람 이름, 받은 사람 Email주소를 알 수 있다.


Stream은 아래와 같은 이름으로 존재한다.

12000001~9/a-f_##################.eml.OECustomProperty


eml.OECustomProperty 파일은 아래와 같은 구조를 가지고 있다. Email이 쓰여진 보내진 시간과 받은 시간을 기록하고 있는 데이터도 존재한다. 이 데이터는 stream의 마지막에서 부터 106bytes 이동한 장소에 위치해 있으며, 8bytes의 값으로 이루어져 있다. 해당 시간은 사용자가 지정한 Time zone 시간의 windows FILETIME으로 기록된다.

EML 파일은 Email의 내용을 담고 있다. EML파일은 OECustomProperty와 같은 이름으로 존재한다. 


예를 들어 1200012f_129755557158031487.eml.OECustomProperty이면 1200012f_129755557158031487.eml이다.


EML 파일은 Email의 제목, 보낸이의 이름 받는 사람, Email주소, 중요도, 날짜와 시간(ASCII / UTC+0000)를 기록, 첨부파일명을 기록하고 있다. 또한 EML파일은 Email의 내용을 담고 있다. 이 내용은 Base64로 인코딩 되어 있다.


User's Contact

E-mail 주소, 물리 주소, 핸드폰 번호 등을 담고 있다


%SystemRoot%\Users\%User%\AppData\Local\Packages\microsoft.windowscommunicationsapps_8wekyb3d8bbwe\LocalState\LiveComm\%User'sWindowsLiveEmail Address%\%AppCurretVersion%\DBStore\LogFiles\edb####.log


사용자는 주소록에 나와 있는 내용을 사진이나 그림과 같은 아바타로 기록된 사람을 확인할 수 있다. Communications App은 Social Networking과 Messaging과 하나로 연결되어 있다. 그 결과 사용자의 주소들은 하나의 장소에 저장되고 그 저장된 곳에 주소록에 저장된 사용자들의 사진을 확인할 수 있다. 


Windows 8의 사용자는 Windows Live나  Social networking, Messaging에 로그인하게 되면, 아래와 같은 내용을 볼 수 있다.

아래 장소에서 아바타에 관련된 주소들을 확인할 수 있다.

 

edb.####.log파일은 plain Text와 hex로 저장되어 있다. Email 계정은 athomson@xxxx.com이고 UserTile은 주소록이 사용하는 개인별 사진이다. 이 개인별 사진은 Facebook이나 Email 아바타로 볼 수 있다. User Tile은 550d5534-890b-48cc-8f26-8980e5fcc83b이다. 


아래 경로로 접근하면, 550d5534-890b-48cc-8f26-8980e5fcc83b 파일을 찾을 수 있고 해당 파일은 Facebook이나 Email 아바타 사진이라는 것을 확인할 수 있다.


App Settings

Communications App에 대한 설정 정보를 담고 있다.


%SystemRoot%\Users\%User%\AppData\Local\Packages\microsoft.windowscommunicationsapps_8wekyb3d8bbwe\Settings


setting.dat파일에서 Communications App의 설정을 찾을 수 있다. setting.dat는 compound 파일이며, Encase의 View Structure를 사용하여 확인 가능하다. View Structure로 unpack하면, 사용자의 Windows Live 계정, 캘린더, 채팅, Email, People 등의 정보를 알 수 있다. Settings 라는 폴더가 사용되거나 생성되는 시간을 정확하게 알 수 없지만, 8byte의 Windows FILETIME 시간으로 확인은 가능하다.





'Forensics' 카테고리의 다른 글

Windows 8 Forensics - 4. Registry  (0) 2012.05.14
Windows 8 Forensics - 3. Artifacts (2)  (0) 2012.05.14
Windows 8 Forensics - 1. Interface  (0) 2012.05.14
안드로이드 포렌식 3편 Log  (2) 2011.08.14
안드로이드 포렌식 2편 adb 사용  (0) 2011.08.14
Posted by 도시형닌자
: