WEBVTT 0:00:02.920000 --> 0:00:07.700000 In this video, we will create a FAT32 file system and add some files and 0:00:07.700000 --> 0:00:10.760000 directories to understand exactly how it works. 0:00:10.760000 --> 0:00:14.500000 Let's start off by creating a simple FAT32 file system. 0:00:14.500000 --> 0:00:18.680000 This here is the virtual disk that we created for our testing environment. 0:00:18.680000 --> 0:00:23.640000 Let's right-click it, select New Simple Volume, and click the Next button. 0:00:23.640000 --> 0:00:26.700000 We'll leave the settings here as is and click Next again. 0:00:26.700000 --> 0:00:32.240000 In the drop-down here, let's change it to Drive Letter A and click Next. 0:00:32.240000 --> 0:00:36.600000 Now on this screen, let's change the file system to FAT32. 0:00:36.600000 --> 0:00:40.240000 Leave the allocation unit size as default and update the text field for 0:00:40.240000 --> 0:00:42.680000 volume lab to testing FAT. 0:00:42.680000 --> 0:00:49.020000 We'll uncheck the box here so it does not perform a quick format and make 0:00:49.020000 --> 0:00:50.800000 zero out of everything. 0:00:50.800000 --> 0:00:57.820000 Now click Next and let's finish. 0:00:57.820000 --> 0:00:59.980000 Our file system is now ready. 0:00:59.980000 --> 0:01:02.460000 Let's start off by adding a couple of files. 0:01:02.460000 --> 0:01:06.400000 Let's name this directory A. 0:01:06.400000 --> 0:01:12.400000 Let's create another directory and we'll call it D-I-R-B, or directory 0:01:12.400000 --> 0:01:15.780000 B. There's a reason why I made the first directory with the uppercase 0:01:15.780000 --> 0:01:17.780000 letters and the second and lowercase. 0:01:17.780000 --> 0:01:20.800000 You'll see why in a few minutes. 0:01:20.800000 --> 0:01:27.000000 Next, let's create a simple file and name it file 1. 0:01:27.000000 --> 0:01:29.640000 In the document, let's type some text. 0:01:29.640000 --> 0:01:31.580000 This is just a dummy file. 0:01:31.580000 --> 0:01:33.640000 And now we can close it. 0:01:33.640000 --> 0:01:37.020000 Let's create another file. 0:01:37.020000 --> 0:01:40.800000 This one we'll call, This is a file with a long file name. 0:01:40.800000 --> 0:01:48.480000 Let's also add some text. 0:01:48.480000 --> 0:01:55.400000 This is a file with a long file name and close the file. 0:01:55.400000 --> 0:01:57.580000 So now we have two files. 0:01:57.580000 --> 0:02:01.200000 The reason why I have directory B and a file on lowercase is that they 0:02:01.200000 --> 0:02:04.040000 will only hold a single fat directory entry. 0:02:04.040000 --> 0:02:07.720000 While these two directory A and the long file name will have two directory 0:02:07.720000 --> 0:02:12.300000 entries. Let's create another one just to show that even though the name 0:02:12.300000 --> 0:02:15.820000 length is using the 8.3 scheme, or in other words, the file name has less 0:02:15.820000 --> 0:02:19.460000 than or equal to eight characters, like we mentioned in the course, and 0:02:19.460000 --> 0:02:20.960000 it has at least a single uppercase. 0:02:20.960000 --> 0:02:22.780000 If we have a file with an uppercase character, then it will use a long 0:02:22.780000 --> 0:02:27.980000 file name. Also, as we saw in the slides, if we have a file with an uppercase 0:02:27.980000 --> 0:02:31.300000 character, it will be holding two directory entries. 0:02:31.300000 --> 0:02:34.980000 Now that it's created, we can go ahead and start analyzing. 0:02:34.980000 --> 0:02:39.280000 Before we do that though, let's take a forensic image of this file system. 0:02:39.280000 --> 0:02:46.020000 Let's go ahead and click Yes and then go to File, create disk image, select 0:02:46.020000 --> 0:02:48.680000 logical file, and click Next again. 0:02:48.680000 --> 0:02:52.560000 We'll leave the source drive selection as it is and click Finish. 0:02:52.560000 --> 0:02:56.180000 Next, click Add, we'll leave it as raw and click Next. 0:02:56.180000 --> 0:02:58.260000 We won't be adding anything here. 0:02:58.260000 --> 0:03:01.520000 Now, let's select where we want to store this. 0:03:01.520000 --> 0:03:03.680000 Let's select Desktop. 0:03:03.680000 --> 0:03:07.060000 Let's name the file, Fat32Test. 0:03:07.060000 --> 0:03:12.360000 Let's also change the image fragment size to zero, as we don't want to 0:03:12.360000 --> 0:03:16.020000 split the file. Now let's click Finish. 0:03:16.020000 --> 0:03:19.160000 We can now start the process. 0:03:19.160000 --> 0:03:28.540000 The FTK image has finished creating the forensic image. 0:03:28.540000 --> 0:03:33.420000 Let's take the image and copy it to my host system because I don't have 0:03:33.420000 --> 0:03:35.940000 WinHacks running on my virtual machine. 0:03:35.940000 --> 0:03:46.020000 But you don't have to do that if your system is running WinHacks. 0:03:46.020000 --> 0:03:52.240000 So now, using WinHacks, let's open our file system, Fat32Test. 0:03:52.240000 --> 0:03:59.040000 Here, we see that it starts with these characters and then MS.5.0. 0:03:59.040000 --> 0:04:02.840000 This is a good indicator that it's for a Fat32 file system. 0:04:02.840000 --> 0:04:06.460000 This here also indicates that we have a Fat32 file system. 0:04:06.460000 --> 0:04:15.540000 Let's now go to Specialist and select Interpret Image File as disk. 0:04:15.540000 --> 0:04:18.540000 Let's go ahead and analyze the boot sector by selecting the boot sector 0:04:18.540000 --> 0:04:21.860000 and then go to View and select Template Manager. 0:04:21.860000 --> 0:04:24.740000 Here we can apply the boot sector, Fat32. 0:04:24.740000 --> 0:04:32.360000 Here we can see the byte codes for the jumping instruction, EB58. 0:04:32.360000 --> 0:04:37.760000 Just a short jump, and 90 is just a NOP or no operation in byte codes. 0:04:37.760000 --> 0:04:42.780000 For OEM, we have MS.5.0. 0:04:42.780000 --> 0:04:48.500000 Just below, we have Bites per sector, which are 512, 4 sectors per cluster, 0:04:48.500000 --> 0:04:52.400000 which means we have a cluster size of 2048. 0:04:52.400000 --> 0:04:54.640000 Reserve sectors are next. 0:04:54.640000 --> 0:05:00.000000 We have 6246 reserved sectors, which means our first Fat will be at this 0:05:00.000000 --> 0:05:06.400000 location. Next is number of Fats, which are 2, meaning that we have Fat1 0:05:06.400000 --> 0:05:12.140000 and Fat2. The root entry is unused to 0, meaning there are currently no 0:05:12.140000 --> 0:05:13.860000 root entries used. 0:05:13.860000 --> 0:05:18.140000 Next, we have sectors on small disk, and then below that media descriptor, 0:05:18.140000 --> 0:05:22.100000 which is F8, and means that it is for a disk. 0:05:22.100000 --> 0:05:27.760000 We have 63 sectors per track, heads we have 16, and 128 hidden sectors, 0:05:27.760000 --> 0:05:33.780000 and then on the volume, we have 505,856 sectors. 0:05:33.780000 --> 0:05:38.760000 Further down, we have sectors per Fat, which are 973, meaning that both 0:05:38.760000 --> 0:05:41.880000 Fat1 and Fat2 are 973. 0:05:41.880000 --> 0:05:47.560000 Mirroring is not disabled. 0:05:47.560000 --> 0:05:51.200000 The root directory first cluster is at cluster number 2, as you may recall 0:05:51.200000 --> 0:05:55.680000 from earlier. Microsoft reserves 0 and 1. 0:05:55.680000 --> 0:05:58.860000 The file system information sector is found in sector number 1, and the 0:05:58.860000 --> 0:06:02.380000 backup boot sector is in sector number 6. 0:06:02.380000 --> 0:06:06.880000 Down here, we have volume label and the file system, and lastly, we have 0:06:06.880000 --> 0:06:13.880000 the signature. Now, let's go to sector 1 and sector 6. 0:06:13.880000 --> 0:06:19.540000 Let's go to these two. 0:06:19.540000 --> 0:06:24.520000 Let's go to the offset icon, and let's turn 1 in new position. 0:06:24.520000 --> 0:06:28.620000 Then select beginning, and click OK. 0:06:28.620000 --> 0:06:32.160000 This is where the 512 bytes start. 0:06:32.160000 --> 0:06:36.780000 The RRAA small is the file section for the file system and formation. 0:06:36.780000 --> 0:06:41.960000 Now, if we go to sector 6, this will take us to the backup of the boot 0:06:41.960000 --> 0:06:46.340000 sector. Let's copy this. 0:06:46.340000 --> 0:06:52.160000 Now let's edit, select copy block, and then hex values. 0:06:52.160000 --> 0:06:56.900000 Let's go back to edit, select clipboard data, and then paste into new 0:06:56.900000 --> 0:07:02.100000 file. Now, let's go to view and, then template manager, select boot sector 0:07:02.100000 --> 0:07:04.460000 FAT32 and apply. 0:07:04.460000 --> 0:07:07.340000 This is alright, go ahead and click OK. 0:07:07.340000 --> 0:07:11.080000 This will give us the exact data we saw before. 0:07:11.080000 --> 0:07:13.860000 This here is the backup for the boot sector. 0:07:13.860000 --> 0:07:18.880000 We don't need this one so we can close it, and we also don't need to save 0:07:18.880000 --> 0:07:22.860000 it. Here's the root directory. 0:07:22.860000 --> 0:07:27.220000 What we need to do now is understand how these entries are actually interpreted. 0:07:27.220000 --> 0:07:32.940000 If we check DIRB directory, it's found right here. 0:07:32.940000 --> 0:07:35.500000 Here's the entry for directory B. 0:07:35.500000 --> 0:07:38.940000 Since this is the only one using lowercase letters, it will have only 0:07:38.940000 --> 0:07:40.660000 one single entry. 0:07:40.660000 --> 0:07:45.780000 Let's put our cursor here, and then go to view, template manager, and 0:07:45.780000 --> 0:07:48.940000 this time we'll select FAT directory entry normal and short entry format 0:07:48.940000 --> 0:07:50.760000 because we have a simple entry. 0:07:50.760000 --> 0:07:52.760000 Now click apply. 0:07:52.760000 --> 0:07:57.600000 As you can see here, this is the name of the file. 0:07:57.600000 --> 0:08:01.380000 We don't have an extension, so it's padded with zeros, and as you can 0:08:01.380000 --> 0:08:06.240000 see from the bits, this bit is for the directory, which is found here. 0:08:06.240000 --> 0:08:09.980000 Here's the creation date and the creation time, the access date and the 0:08:09.980000 --> 0:08:14.020000 access time, and here's the update date and update time. 0:08:14.020000 --> 0:08:17.540000 Just below, we can see the cluster number for this file. 0:08:17.540000 --> 0:08:21.840000 And we can also see the size for it, which is zero because it is a directory 0:08:21.840000 --> 0:08:25.140000 as we can see here. 0:08:25.140000 --> 0:08:30.560000 The cluster number is at cluster number eight. 0:08:30.560000 --> 0:08:35.240000 Let's go here to directory B, right click, and select navigation, and 0:08:35.240000 --> 0:08:36.760000 then list clusters. 0:08:36.760000 --> 0:08:39.300000 It also shows us we have eight clusters. 0:08:39.300000 --> 0:08:41.780000 Okay, let's go back to the root directory. 0:08:41.780000 --> 0:08:44.360000 Let me explain the first entry. 0:08:44.360000 --> 0:08:50.120000 The first entry, testing FAT, is for the volume label. 0:08:50.120000 --> 0:08:54.680000 If we go to view, template manager, we'll leave it selected as FAT directory 0:08:54.680000 --> 0:08:59.340000 entry for normal or short entry format and click apply. 0:08:59.340000 --> 0:09:04.120000 This is set for the volume label. 0:09:04.120000 --> 0:09:09.980000 Let's look at this entry, directory A. 0:09:09.980000 --> 0:09:13.300000 Since this directory is using more than eight characters, it will be using 0:09:13.300000 --> 0:09:17.120000 two or more entries, that is, a long file name used. 0:09:17.120000 --> 0:09:21.640000 Let's first analyze this entry, which is direct one, two, three, four, 0:09:21.640000 --> 0:09:25.400000 five, six, seven, and eight, which represents the short file name. 0:09:25.400000 --> 0:09:30.060000 Let's go to view and template manager and apply. 0:09:30.060000 --> 0:09:38.820000 Here we see the name, and there are no extensions, so it will be padded. 0:09:38.820000 --> 0:09:42.700000 Here we have ten because it's a directory. 0:09:42.700000 --> 0:09:45.920000 And here at the bottom is the cluster number. 0:09:45.920000 --> 0:09:49.000000 Above, we can also see more details. 0:09:49.000000 --> 0:09:54.960000 Since this is not eight characters long, it will have more than one entry. 0:09:54.960000 --> 0:09:59.020000 The entry for this is found here. 0:09:59.020000 --> 0:10:02.620000 Let's select this and go to view and select template manager. 0:10:02.620000 --> 0:10:06.400000 Here, we'll select the FAT directory entry for a long entry format and 0:10:06.400000 --> 0:10:08.600000 then click apply. 0:10:08.600000 --> 0:10:11.620000 Here we can see that the sequence number is four-one. 0:10:11.620000 --> 0:10:15.560000 Four means that it ends here, and one means that we only have one additional 0:10:15.560000 --> 0:10:20.860000 entry. Here we have the first five characters, which are represented in 0:10:20.860000 --> 0:10:25.640000 Unicode. Below that, we have the other six characters. 0:10:25.640000 --> 0:10:32.840000 So here we have D-I-R-E-C, and again just below, T-O-R-Y-A. 0:10:32.840000 --> 0:10:37.180000 And here are the final two characters, but since we don't have other characters, 0:10:37.180000 --> 0:10:39.240000 it's padded with zeros. 0:10:39.240000 --> 0:10:43.700000 Since this is a long file name entry, it will have zero F in it. 0:10:43.700000 --> 0:10:45.840000 The check sum is six F. 0:10:45.840000 --> 0:10:48.920000 This was calculated based on the actual file name. 0:10:48.920000 --> 0:10:52.800000 Let's go ahead and close this and look at another file. 0:10:52.800000 --> 0:10:56.860000 Let's look at this one, the one called this is a file with a long file 0:10:56.860000 --> 0:11:01.280000 name. We can go through this list and try to figure out which entry it 0:11:01.280000 --> 0:11:05.700000 corresponds with, or we can right click on it and select navigation, then 0:11:05.700000 --> 0:11:07.380000 seek directory entry. 0:11:07.380000 --> 0:11:12.740000 Here's the directory entry for this file. 0:11:12.740000 --> 0:11:16.500000 If we go to view and template manager and apply the short entry format 0:11:16.500000 --> 0:11:20.500000 here, we can see that these represent eight characters. 0:11:20.500000 --> 0:11:23.440000 Just below, we have the extension. 0:11:23.440000 --> 0:11:27.780000 Then we have the attributes for this file. 0:11:27.780000 --> 0:11:31.900000 Below, we have the creation date and time, access date and time, and additional 0:11:31.900000 --> 0:11:38.540000 details. We have the cluster, which is where the file is located, which 0:11:38.540000 --> 0:11:40.420000 is cluster number 10. 0:11:40.420000 --> 0:11:43.100000 We'll go back to this later. 0:11:43.100000 --> 0:11:46.620000 And here's the file size, which is 36 bytes for this file. 0:11:46.620000 --> 0:11:53.880000 Now let's analyze its other entries, which can be found starting here. 0:11:53.880000 --> 0:11:57.280000 Now let's go to view again and template manager, and we'll apply the long 0:11:57.280000 --> 0:12:00.500000 format this time and then click apply. 0:12:00.500000 --> 0:12:04.580000 This here is the first in our sequence because it is 0-1. 0:12:04.580000 --> 0:12:10.320000 We have the first this here as it is five characters including the space. 0:12:10.320000 --> 0:12:17.340000 Below, we see the next six characters in the name. 0:12:17.340000 --> 0:12:20.900000 And the next two characters are i and l. 0:12:20.900000 --> 0:12:24.200000 We have 0f because this is a long file name. 0:12:24.200000 --> 0:12:27.080000 At the bottom, the check sum is 43. 0:12:27.080000 --> 0:12:30.340000 This must be seen in all other entries we go through. 0:12:30.340000 --> 0:12:32.020000 Let's go backwards from here. 0:12:32.020000 --> 0:12:35.020000 We can do that by clicking on this arrow button at the top. 0:12:35.020000 --> 0:12:38.800000 Now, under the sequence number, 0-2 appears. 0:12:38.800000 --> 0:12:47.140000 We can also see more of the file name appears too. 0:12:47.140000 --> 0:12:51.800000 Again, we have 0f because it's a long file name entry and 43 as the check 0:12:51.800000 --> 0:12:55.660000 sum. This was for sequence 0-2. 0:12:55.660000 --> 0:12:58.160000 Let's go back again. 0:12:58.160000 --> 0:13:12.160000 We now have sequence 0-3 and more of the file name appears. 0:13:12.160000 --> 0:13:17.220000 Here again, 0f indicating that it's a long file name entry. 0:13:17.220000 --> 0:13:20.480000 And here too is the check sum which is 43. 0:13:20.480000 --> 0:13:22.920000 Let's go back one more time. 0:13:22.920000 --> 0:13:25.240000 Here our sequence file is 44. 0:13:25.240000 --> 0:13:28.280000 The first four indicates that it is the ending of our long file name entry 0:13:28.280000 --> 0:13:32.020000 and the second four is the fourth entry for this file. 0:13:32.020000 --> 0:13:36.000000 For file name, we have the last of the file name here, which is the last 0:13:36.000000 --> 0:13:39.060000 T in the file name and is the extension. 0:13:39.060000 --> 0:13:42.180000 We can see that here on the left under the name column. 0:13:42.180000 --> 0:13:46.060000 For the remaining file name boxes, the rest are padded to 0. 0:13:46.060000 --> 0:13:49.980000 Again, we see 0f because it's a long file name entry. 0:13:49.980000 --> 0:13:53.380000 And as we saw before, 43 for the check sum. 0:13:53.380000 --> 0:13:58.440000 We were able to easily interpret and analyze a file on a FAT32 file system 0:13:58.440000 --> 0:14:00.620000 using WinHEX and its entries. 0:14:00.620000 --> 0:14:03.880000 We can right click the file name to check the cluster number and the cluster 0:14:03.880000 --> 0:14:08.260000 is 10, holds 36 bytes and has only one fragment. 0:14:08.260000 --> 0:14:14.720000 If we select all of this at the bottom right, we can see that it's 24 0:14:14.720000 --> 0:14:19.140000 in HEX and if we right click, we can see that it's 36 decimal bytes, which 0:14:19.140000 --> 0:14:21.160000 represents the file size. 0:14:21.160000 --> 0:14:27.620000 In this video, we analyzed a FAT32 disk using WinHEX. 0:14:27.620000 --> 0:14:31.860000 Discuss the difference between uppercase and lowercase file names as well 0:14:31.860000 --> 0:14:36.560000 as what happens when you have a file with more than 8.3, which is 8 characters 0:14:36.560000 --> 0:14:40.500000 for the name and 3 characters for the extension, and how that's represented 0:14:40.500000 --> 0:14:44.220000 and stored in a FAT32 file system. 0:14:44.220000 --> 0:14:50.520000 In this concludes our video lesson on how to analyze FAT file systems. 0:14:50.520000 --> 0:14:51.400000 Thank you for joining us.