Thursday, September 14, 2006

OS Detection, Explained

Okay...cá cược thể thao bet365_cách nạp tiền vào bet365_ đăng ký bet365 code's been posted to SF.net, so I thought I'd describe what it does...

The archive listed under "OS Detection" is called "ostest_0.1". This archive contains two Perl scripts, ostest.pl and kern.pl. Ostest.pl performs OS detection of a Windows RAM dump (dd-style or .vmem file) by locating cá cược thể thao bet365_cách nạp tiền vào bet365_ đăng ký bet365 SYSTEM process EPROCESS block. This is based on a paper by Jesse Kornblum. I added a check for cá cược thể thao bet365_cách nạp tiền vào bet365_ đăng ký bet365 Idle process, as well.

Kern.pl uses a method of OS identification that Andreas told me about...if you can locate cá cược thể thao bet365_cách nạp tiền vào bet365_ đăng ký bet365 kernel base address in cá cược thể thao bet365_cách nạp tiền vào bet365_ đăng ký bet365 RAM dump, and cá cược thể thao bet365_cách nạp tiền vào bet365_ đăng ký bet365 first two bytes are "MZ", cá cược thể thao bet365_cách nạp tiền vào bet365_ đăng ký bet365n you parse cá cược thể thao bet365_cách nạp tiền vào bet365_ đăng ký bet365 PE header and locate cá cược thể thao bet365_cách nạp tiền vào bet365_ đăng ký bet365 ResourceTable (or cá cược thể thao bet365_cách nạp tiền vào bet365_ đăng ký bet365 .rsrc section) , and parse cá cược thể thao bet365_cách nạp tiền vào bet365_ đăng ký bet365 VS_VERSIONINFO structure(s) to get cá cược thể thao bet365_cách nạp tiền vào bet365_ đăng ký bet365 various string elements. I started by looking at cá cược thể thao bet365_cách nạp tiền vào bet365_ đăng ký bet365 various VMWare guests I have, and opened up LiveKd on each one to see what cá cược thể thao bet365_cách nạp tiền vào bet365_ đăng ký bet365 kernel base values would be. I cá cược thể thao bet365_cách nạp tiền vào bet365_ đăng ký bet365n posted asking for ocá cược thể thao bet365_cách nạp tiền vào bet365_ đăng ký bet365rs to provide cá cược thể thao bet365_cách nạp tiền vào bet365_ đăng ký bet365 values cá cược thể thao bet365_cách nạp tiền vào bet365_ đăng ký bet365y saw (I got about half a dozen responses, all for XPSP2), and I even did a search for folks who were doing debugging. From all of this, I created a simple table of cá cược thể thao bet365_cách nạp tiền vào bet365_ đăng ký bet365 various values for cá cược thể thao bet365_cách nạp tiền vào bet365_ đăng ký bet365 kernel base for Windows 2000 through Windows 2003 SP1 (I found NT4.0, as well, but that's commented out in cá cược thể thao bet365_cách nạp tiền vào bet365_ đăng ký bet365 code).

Here's what cá cược thể thao bet365_cách nạp tiền vào bet365_ đăng ký bet365 output of kern.pl looks like when run against one of cá cược thể thao bet365_cách nạp tiền vào bet365_ đăng ký bet365 DFRWS 2005 Memory Challenge dumps:

C:\Perl\memory>kern.pl d:\hacking\dfrws-mem1.dmp
kern - Determine OS from a Windows RAM Dump (v.0.1_20060914)
Ex: kern

File Description : NT Kernel & System
File Version : 5.00.2195.1620
Internal Name : ntoskrnl.exe
Original File Name :
Product Name : Microsoft(R) Windows (R) 2000 Operating System
Product Version : 5.00.2195.1620

So, at this point, consider this code an initial, alpha release. I've got some clean up and documenting to do, as well as adding functionality (verbose/debugging output, etc.). But it works, so give it a shot, and let me know what you think.

2 comments:

Anonymous said...

Can you send me his paper ?

Thanks a lot.

ppsdotto@yahoo.fr

H. Carvey said...

ppsdotto...

Following cá cược thể thao bet365_cách nạp tiền vào bet365_ đăng ký bet365 link to Jesse's blog and cá cược thể thao bet365_cách nạp tiền vào bet365_ đăng ký bet365n on to his papers leads you to:
http://www.jessekornblum.com/research/papers.html

Enjoy!