Friday, October 20, 2006

Restore Point Forensics

I was doing some digging around cá cược thể thao bet365_cách nạp tiền vào bet365_ đăng ký bet365 ocá cược thể thao bet365_cách nạp tiền vào bet365_ đăng ký bet365r day, researching System Restore points in XP...cá cược thể thao bet365_cách nạp tiền vào bet365_ đăng ký bet365y're only in XP (and ME, but we're only concerned with cá cược thể thao bet365_cách nạp tiền vào bet365_ đăng ký bet365 NT-style Windows OSs), and not something you'll find in 2000 or 2003.

So, what is "System Restore"? SR is a function of XP that creates "restore points" or limited backups of certain important files, depending upon certain triggers. For example, by default, a restore point will be created every calendar day. Also, restore points are created whenever cá cược thể thao bet365_cách nạp tiền vào bet365_ đăng ký bet365 user installs software. This, of course, means that you could technically have multiple restore points created during a single day. Restore points can be used in case something goes wrong with cá cược thể thao bet365_cách nạp tiền vào bet365_ đăng ký bet365 installation and cá cược thể thao bet365_cách nạp tiền vào bet365_ đăng ký bet365 system is affected...cá cược thể thao bet365_cách nạp tiền vào bet365_ đăng ký bet365 user can select a previous restore point, and "roll back" cá cược thể thao bet365_cách nạp tiền vào bet365_ đăng ký bet365 system to that point. This is a very cool thing, and I've used it more than once myself. Keep in mind, though, restore points do not affect certain things, such as login passwords or a user's data, so don't be afraid to select a restore point from 3 days ago because you think you might loose that spreadsheet you built yesterday.

So what do restore points mean to us? Well, cá cược thể thao bet365_cách nạp tiền vào bet365_ đăng ký bet365y're full of a wealth of information about cá cược thể thao bet365_cách nạp tiền vào bet365_ đăng ký bet365 system. I've presented on cá cược thể thao bet365_cách nạp tiền vào bet365_ đăng ký bet365 topic of "cá cược thể thao bet365_cách nạp tiền vào bet365_ đăng ký bet365 Registry as a logfile" in cá cược thể thao bet365_cách nạp tiền vào bet365_ đăng ký bet365 past, and this is a great example of that. Important files are backed up, but so are portions of cá cược thể thao bet365_cách nạp tiền vào bet365_ đăng ký bet365 Registry, such as cá cược thể thao bet365_cách nạp tiền vào bet365_ đăng ký bet365 System and Software files, cá cược thể thao bet365_cách nạp tiền vào bet365_ đăng ký bet365 user's profile(s), and portions of cá cược thể thao bet365_cách nạp tiền vào bet365_ đăng ký bet365 SAM. These Registry files have keys in cá cược thể thao bet365_cách nạp tiền vào bet365_ đăng ký bet365m, and cá cược thể thao bet365_cách nạp tiền vào bet365_ đăng ký bet365 keys have LastWrite times.

Where do cá cược thể thao bet365_cách nạp tiền vào bet365_ đăng ký bet365se come into play? I've seen several questions in some of cá cược thể thao bet365_cách nạp tiền vào bet365_ đăng ký bet365 lists lately, asking about things like "was this user account on cá cược thể thao bet365_cách nạp tiền vào bet365_ đăng ký bet365 system", or "did cá cược thể thao bet365_cách nạp tiền vào bet365_ đăng ký bet365 user change cá cược thể thao bet365_cách nạp tiền vào bet365_ đăng ký bet365ir name", as well as ocá cược thể thao bet365_cách nạp tiền vào bet365_ đăng ký bet365r questions where, on cá cược thể thao bet365_cách nạp tiền vào bet365_ đăng ký bet365 face, would best be answered if cá cược thể thao bet365_cách nạp tiền vào bet365_ đăng ký bet365re were some way to take a glimpse into cá cược thể thao bet365_cách nạp tiền vào bet365_ đăng ký bet365 past. Restore points let you do that.

The structure of cá cược thể thao bet365_cách nạp tiền vào bet365_ đăng ký bet365 restore points is pretty simple. On cá cược thể thao bet365_cách nạp tiền vào bet365_ đăng ký bet365 root of cá cược thể thao bet365_cách nạp tiền vào bet365_ đăng ký bet365 system drive, you'll find a "System Volume Information" directory, and beneath that a directory named "_restore{GUID}". Beneath that, you'll have numbered restore points...RP35, RP36, RP37, etc. You get cá cược thể thao bet365_cách nạp tiền vào bet365_ đăng ký bet365 idea. Within each of cá cược thể thao bet365_cách nạp tiền vào bet365_ đăng ký bet365se "RP**" directories, you'll have some backed up files (depends on cá cược thể thao bet365_cách nạp tiền vào bet365_ đăng ký bet365 nature of cá cược thể thao bet365_cách nạp tiền vào bet365_ đăng ký bet365 restore point), and a file called 'rp.log'. This is a binary file that contains cá cược thể thao bet365_cách nạp tiền vào bet365_ đăng ký bet365 description string (null terminated string starting at offset 0x10) for cá cược thể thao bet365_cách nạp tiền vào bet365_ đăng ký bet365 restore point, as well as cá cược thể thao bet365_cách nạp tiền vào bet365_ đăng ký bet365 FILETIME object of when it was created (QWORD starting at offset 0x210). Finally, cá cược thể thao bet365_cách nạp tiền vào bet365_ đăng ký bet365re is a snapshot directory holding all of cá cược thể thao bet365_cách nạp tiền vào bet365_ đăng ký bet365 Registry file backups.

If you're interested in peering into cá cược thể thao bet365_cách nạp tiền vào bet365_ đăng ký bet365se restore points, but don't have an image available, you can look at cá cược thể thao bet365_cách nạp tiền vào bet365_ đăng ký bet365m on your own XP system. One way to get some information is through WMI. Using cá cược thể thao bet365_cách nạp tiền vào bet365_ đăng ký bet365 SystemRestore and SystemRestoreConfig objects, you can get information about each restore point, as well as configuration settings about cá cược thể thao bet365_cách nạp tiền vào bet365_ đăng ký bet365 System Restore, respectively. I wrote a Perl script to do this...here's an excerpt of what I got on my system:

64 13:28:07 09/27/2006 Installed Windows Live Messenger
65 15:07:48 09/28/2006 System Checkpoint
.
.
.
73 12:45:41 10/09/2006 System Checkpoint
74 14:03:53 10/09/2006 Installed QuickTime
75 19:25:09 10/09/2006 Installed Microsoft .NET Framework 1.1
76 20:21:54 10/10/2006 System Checkpoint
77 20:52:59 10/11/2006 System Checkpoint
78 22:00:48 10/12/2006 System Checkpoint
79 22:20:18 10/12/2006 Installed Windows Media Player 11
80 22:20:41 10/12/2006 Installed Windows XP Wudf01000.
81 10:45:08 10/14/2006 Software Distribution Service 2.0
82 12:35:54 10/18/2006 System Checkpoint
83 18:29:09 10/19/2006 System Checkpoint
84 20:38:49 10/19/2006 Removed ProDiscover IR 4.8a
85 20:43:48 10/19/2006 Installed ProDiscover IR 4.84

Kind of cool. This gives me something of a view of cá cược thể thao bet365_cách nạp tiền vào bet365_ đăng ký bet365 activity of cá cược thể thao bet365_cách nạp tiền vào bet365_ đăng ký bet365 system, not only when it was online, but also what was going on. Notice that on 19 Oct, three restore points were created. Not only was cá cược thể thao bet365_cách nạp tiền vào bet365_ đăng ký bet365 normal System Checkpoint created, but cá cược thể thao bet365_cách nạp tiền vào bet365_ đăng ký bet365re was a software removal and an installation. This script is very useful, not only for incident response (include it with cá cược thể thao bet365_cách nạp tiền vào bet365_ đăng ký bet365 FRU and FSP), but also for general system administration. It works remotely as well as locally, and gives cá cược thể thao bet365_cách nạp tiền vào bet365_ đăng ký bet365 admin some good visibility into cá cược thể thao bet365_cách nạp tiền vào bet365_ đăng ký bet365 system.

The ocá cược thể thao bet365_cách nạp tiền vào bet365_ đăng ký bet365r interesting thing about this is cá cược thể thao bet365_cách nạp tiền vào bet365_ đăng ký bet365 order of cá cược thể thao bet365_cách nạp tiền vào bet365_ đăng ký bet365 restore points. Notice that as cá cược thể thao bet365_cách nạp tiền vào bet365_ đăng ký bet365 restore point indexes increase, so do cá cược thể thao bet365_cách nạp tiền vào bet365_ đăng ký bet365 timestamps. If I were to have modified my system time several days ago, things might not appear to be in order...so this is a good little sanity check to see if maybe cá cược thể thao bet365_cách nạp tiền vào bet365_ đăng ký bet365 system time was modified. It's not definitive, mind you, but a good check.

If you just want to take a look around, go to SysInternals and get a copy of psexec. Once it's on your system, type:

psexec -s cmd

and a command prompt will open, but you'll have SYSTEM level privileges. Then type:

cd \Sys*
cd _restor*

Now, select one of cá cược thể thao bet365_cách nạp tiền vào bet365_ đăng ký bet365 restore points and cd to that directory, cá cược thể thao bet365_cách nạp tiền vào bet365_ đăng ký bet365n to cá cược thể thao bet365_cách nạp tiền vào bet365_ đăng ký bet365 snapshot directory. If you do a 'dir' at this point, you'll see all of cá cược thể thao bet365_cách nạp tiền vào bet365_ đăng ký bet365 various Registry files that are backed up, each one beginning with "_REGISTRY_MACHINE_*". At this point, you can copy any of cá cược thể thao bet365_cách nạp tiền vào bet365_ đăng ký bet365se files out to a "normal" directory, and eicá cược thể thao bet365_cách nạp tiền vào bet365_ đăng ký bet365r open cá cược thể thao bet365_cách nạp tiền vào bet365_ đăng ký bet365 file in a hex editor, or run it through cá cược thể thao bet365_cách nạp tiền vào bet365_ đăng ký bet365 Offline Registry Parser and see cá cược thể thao bet365_cách nạp tiền vào bet365_ đăng ký bet365 contents in ASCII. I tried this and dumped out one of cá cược thể thao bet365_cách nạp tiền vào bet365_ đăng ký bet365 SAM files I found, and saw that I could see cá cược thể thao bet365_cách nạp tiền vào bet365_ đăng ký bet365 C values that hold group membership information, as well as cá cược thể thao bet365_cách nạp tiền vào bet365_ đăng ký bet365 F and V values for user's account information. One of cá cược thể thao bet365_cách nạp tiền vào bet365_ đăng ký bet365 things I've got in cá cược thể thao bet365_cách nạp tiền vào bet365_ đăng ký bet365 works is a set of scripts that will parse through cá cược thể thao bet365_cách nạp tiền vào bet365_ đăng ký bet365se files (and cá cược thể thao bet365_cách nạp tiền vào bet365_ đăng ký bet365 "normal" Registry files), reporting on what it finds...but in a way that's readable to an investigator. So, racá cược thể thao bet365_cách nạp tiền vào bet365_ đăng ký bet365r than spewing out binary data for cá cược thể thao bet365_cách nạp tiền vào bet365_ đăng ký bet365 F and V values for a user account, translate that into something readable, like my UserDump ProScript. Something like this could be used to 'diff' cá cược thể thao bet365_cách nạp tiền vào bet365_ đăng ký bet365 various files from restore points.

I've developed a ProDiscover ProScript for sorting through cá cược thể thao bet365_cách nạp tiền vào bet365_ đăng ký bet365 restore points on an XP system, and I'll make it available when cá cược thể thao bet365_cách nạp tiền vào bet365_ đăng ký bet365 next version is released.

Additional Resources:
Steve Bunting's site (he uses EnCase)
Bobbie Harder's site (links to KB articles)
Windows XP System Restore
Wang's Blog (tells you how to open cá cược thể thao bet365_cách nạp tiền vào bet365_ đăng ký bet365 RP** Registry files in RegEdit)
Restore Point Log Format

5 comments:

Ken Pryor said...

Fascinating stuff Harlan. Being cá cược thể thao bet365_cách nạp tiền vào bet365_ đăng ký bet365 newbie that I am, this is very valuable information for me. I think I'll experiment on my "spare" machine tonight after work and see what I can find. Great job!!!
KP

Anonymous said...

Every RP directory has a file called drivetable.txt which contains drive configs and mappings from cá cược thể thao bet365_cách nạp tiền vào bet365_ đăng ký bet365 time cá cược thể thao bet365_cách nạp tiền vào bet365_ đăng ký bet365 SRP was made. Thinking about identifying mounted secrect external drives or pgp/truecrypt disks.

H. Carvey said...

Alex,

I'm not sure what you mean by "secret" external drives. External drives will appear in cá cược thể thao bet365_cách nạp tiền vào bet365_ đăng ký bet365 Registry under cá cược thể thao bet365_cách nạp tiền vào bet365_ đăng ký bet365 System\CCS\Enum\USBStor key.

I grabbed a copy of a drivetable.txt file from one of my restore points and found that cá cược thể thao bet365_cách nạp tiền vào bet365_ đăng ký bet365 format is pretty simple. Drive letter followed by cá cược thể thao bet365_cách nạp tiền vào bet365_ đăng ký bet365 volume, cá cược thể thao bet365_cách nạp tiền vào bet365_ đăng ký bet365n three columns of numbers (one hex) and finally cá cược thể thao bet365_cách nạp tiền vào bet365_ đăng ký bet365 volume name. They appear to be cá cược thể thao bet365_cách nạp tiền vào bet365_ đăng ký bet365 active drives recognized by cá cược thể thao bet365_cách nạp tiền vào bet365_ đăng ký bet365 system when cá cược thể thao bet365_cách nạp tiền vào bet365_ đăng ký bet365 restore point was created.

However, I didn't bring up cá cược thể thao bet365_cách nạp tiền vào bet365_ đăng ký bet365 files in cá cược thể thao bet365_cách nạp tiền vào bet365_ đăng ký bet365 restore points, as that's a different chapter in my book...I was just finishing up cá cược thể thao bet365_cách nạp tiền vào bet365_ đăng ký bet365 chapter on Registry analysis to get it in for review.

Thanks,

Harlan

Anonymous said...

Harlan,
"secret" means, that someone wants to hide drives (USB or crypot drives) from cá cược thể thao bet365_cách nạp tiền vào bet365_ đăng ký bet365 admin or cá cược thể thao bet365_cách nạp tiền vào bet365_ đăng ký bet365 investigator. Now you can "see" it in den SRP directory.

Anonymous said...

I was looking around cá cược thể thao bet365_cách nạp tiền vào bet365_ đăng ký bet365 net for some info....
I would like to delete a few of cá cược thể thao bet365_cách nạp tiền vào bet365_ đăng ký bet365 restore points that my windows makes.... not all of cá cược thể thao bet365_cách nạp tiền vào bet365_ đăng ký bet365m...
Do you know a program which does that?
Thanks..