If you can see this check that

Main Page

Data Acquisition and Verification


Filesystem structure (NTFS) and data searching

User:
Password:

This lab deals with searching for data at different layers of the file system categories. It will introduce you to additional tools and functionality within the Autopsy analysis suite, as well as command line searching tools.

The Sleuth Kit tools (Autopsy) are named in logical manner, which indicates the file system layer they operate upon and the type of output to be expected from them. The commands prefixes are as follow:

  mm*  : tools that operate on volumes (media management)
  fs*  : tools that operate on file system structures
  blk* : tools that operate at the data unit layer
  i*   : tools that operate at the metadata layer (inode)
  f*   : tools that operate at the file name layer

Question 1: NTFS - file system structure

The fsstat command displays file system information. Data of particular interest in the output of this command vary depending on the file system being examined but may include volume names, data unit sizes, and statistical information about the state of the file system.

From the terminal use fsstat command to analyse disk and CBarrow.dd image.

What are the three main types of information stored in the MFT file? List them in the order they appear in the fsstat command.
1.
2.
3.

Tests - not attempted
1. Information ok UNTESTED
2. Information ok UNTESTED
3. Information ok UNTESTED

The NTFS file system views each file (or directory) as a set of file attributes. Elements such as the file's name, its security information, and even its data, are all file attributes. Each attribute is identified by an attribute type code and, optionally, an attribute name.

What is the attribute type code of the $FILE_NAME attribute?

Tests - not attempted
Attribute type ok UNTESTED

What is a size of the cluster?

Tests - not attempted
Cluster Size UNTESTED

Based on the output of the fsstat command, how many files, directories are stored in the MFT file?

Tests - not attempted
Entries UNTESTED

Question 2: Metadata Layer Tools

The istat command displays information about a specific metadata structure. In general, any of the information listed as being contained in a metadata structure (ownership, time information, block allocations, etc.) will be displayed.

Each entry in the MFT table has assigned MFT record number. To view file.s metadata information you need to specify MFT record number at the end istat command.

Refer to following website for more information regarding Metadata Stored in the Master File Table

Use istat command to view metadata of the $Boot file (MFT record nr. 7)

What is the size of the $BOOT file?

Tests - not attempted
$Boot size UNTESTED

How many clusters will be allocated to the $Boot file?

Tests - not attempted
Boot cluster size UNTESTED

Which cluster(s) is assign to the $BOOT file (provide your answer as range eg. x-y)
-

Tests - not attempted
Clusters allocated to $BOOT UNTESTED

What is so special about $BOOT file?

Tests - not attempted
$Boot is special UNTESTED

Use istat command to view metadata structure of the MFT record nr. 14197

what is the name of the file?

Tests - not attempted
File name UNTESTED

what is the size of the file?

Tests - not attempted
File size UNTESTED

How many clusters are assigne to the file?

Tests - not attempted
Clusters allocated UNTESTED

What is the number of the first cluster and the last cluster?
First:
Last:

Tests - not attempted
First Cluster UNTESTED
Last Cluster UNTESTED

The icat command streams the data unit referenced by the specified meta data address. In other words, it opens the named image(s) and copies the file with the specified inode number to standard output.

Use icat command to view inode 14197 (Hint: use hex editor to view the output)

why the output from the icat command was so big?

Tests - not attempted
Why so big? UNTESTED

what is the hex value of the first two bytes of the file? Use format 0xABCD
Hex:

Tests - not attempted
First 2 bytes UNTESTED

What does it mean? (Hint - Google it!)

Tests - not attempted
Hex signifies what? UNTESTED

icat command can be used to view attribute values of the file.

Refer to the output of the istat command for the inode 14197.

what is the attribute code for the $FILE_NAME attribute?
Code:

Tests - not attempted
Attribute code ok UNTESTED

Execute the following commands:

  icat -o 63 /images/CBarrow.dd 14197-48-2 | xxd 	
  icat -o 63 /images/CBarrow.dd 14197-48-3 | xxd 	

where 14197 is an inode and 48-2 and 48-3 are the $FILE_NAME attributes

why there are two $FILE_NAME attributes

Tests - not attempted
why two? UNTESTED

The ifind command finds the metadata structure referenced by the provided file name or the metadata structure that references the provided data unit address.

-d data_unit Finds the meta data structure that has allocated a given data unit (block, cluster, etc.)

Execute the ifind command with "-d 397185" argument.

Does the inode number match the file in MFT?

Tests - not attempted
Inode number match UNTESTED

Question 3: File Name Layer Tools

The fls command lists file names (deleted and allocated). By default it does not traverse the entire file system so you will only see the root directory of the volume being examined. This is one of the commands we can use to generate a bodyfile for timeline generation using the mactime command. A simple .fls image. will produce a terse directory listing of the root directory of the file system.

Use the fls command to list directories in CBarrow.dd image.

what is the inode number of the Documents and Settings directory?
Inode:

Tests - not attempted
Inode number UNTESTED

The ffind command finds file names that reference the provided metadata number.

Execute the ffind command for inode 14510

What is a file name of inode 14510?
Filename:

Tests - not attempted
ffind filename UNTESTED

Question 4: String Search

Search through the CBarrow.dd file and look for all occurances of the word "bomb".

To do this use the blkls command, and pipe the answer to grep. This command take a long time so for experimentation purposes save the output to a file. Try:

/usr/local/bin/blkls -e -f ntfs -o 63 -i raw /images/CBarrow.dd |  grep -ba bomb | cut -d: -f1 > /home/caine/bsearch

Remember the offset, and you need to use "-b" to allow grep to search binary information, and "-a" to give a byte offset into the file. Note all byte offsets saved to this file need to have 63 added to them.

Look at the offset in the last line of /home/caine/bsearch (remember to add 63). Now use ifind with this offset. What is the inode and data attribute code for this offset.
--

Tests - not attempted
Output of ifind UNTESTED

Use this answer in the ffind command to find the filename

Tests - not attempted
Filename using ffind UNTESTED

Use the istat command to find the metadata for this file. Save the output of istat for this file in /home/caine/bmeta.

Tests - not attempted
istat output created UNTESTED


Linux tutorials: intro1 intro2 wildcard permission pipe vi essential admin net fwall DNS diag Apache1 Apache2 MySQL1 MySQL2
Caine 2.0: Autopsy Cli PartRec Files FileRec Browser FFoxForensics Carving
Caine 2.5.1: Essentials | Basic | Search | SysIntro | 5a | 5b | 5c |
Useful: Quiz | Forums | Privacy Policy | Terms and Conditions
Site Links:XMLZoo ActiveSQL ProgZoo SQLZoo

Copyright @ 2004-2012 Gordon Russell. All rights reserved.