NBDServer

A project I read about a while back really caught my attention, but I hadn’t had a good chance to try it out till recently. Jeff Bryner (@p0wnlabs) created NBDServer and describes it as a “A DFIR/forensic take on nbdsrvr by Folkert van Heusden.”In… Continue reading NBDServer

Posted in Uncategorized

NBDServer

A project I read about a while back really caught my attention, but I hadn’t had a good chance to try it out till recently. Jeff Bryner (@p0wnlabs) created NBDServer and describes it as a “A DFIR/forensic take on nbdsrvr by Folkert van Heusden.”In… Continue reading NBDServer

Posted in Uncategorized

Working Smarter, Not Harder

There are a couple reasons I enjoy blogging, although my lack of frequent posts would suggest I don’t like it that much. Just the same, I do it because I enjoy writing and I find writing something down like this helps me remember it for the next time I need it. If this helps someone else in the process, then so much the better.

I’ve been working on an intrusion case recently, something I’ve previously done only in training. I have already started a separate blog post talking about it, but I’m not really ready to finish it yet. However, I wanted to post today about something I should have been doing all along. I’ve used such great tools as Volatility, Log2Timeline and the SANS Forensics SIFT Workstation on this case, as well as RegRipper. RegRipper is what I wanted to talk about today.

The developer of RegRipper, Harlan Carvey, made a new post on his blog recently about finding evidence of program execution on a system under investigation. As a police officer, most of my cases revolve around finding the porn, trying to figure out how it got there and if it’s been viewed. Not terribly difficult, most of the time. I rarely have the need to determine whether or not a particular program has been run. Even in the case of investigating child exploitation video possession, I can usually determine if a video has been viewed through .lnk files, jump lists, recent docs, application history and so on. I was able to determine on a recent case that a particular video had been opened in RealPlayer by finding the .lnk file RealPlayer creates upon playing a file. That, along with timeline evidence and some application testing helped prove the case. But, I digress.

As I said, it’s not often that program execution is that important to my cases. I found the need to do this, however, after discovering the intruders in this particular case had downloaded several things to the victim Windows 2008 system, including some hacking tools, a bulk email sender and several different web browsers. While I found ample web history to easily show the browsers had been used, I wanted to find out if the other programs had been only downloaded or actually used. Harlan’s post helped me remember some steps I could take and taught me some new ones as well to help figure this out.

That was the set up, but here’s the real point of this post. I found myself using RegRipper in my quest to determine program execution. I use the command line rip.exe probably as much, maybe more often than the RegRipper GUI. The problem is, I was using the program in a less than efficient manner. Instead of taking advantage of the ability to create a custom profile and running all the plugins I was interested in at once, I was typing them each in at the command line one at a time, looking at the output and then running another. This amounts to an inefficient use of  the fleeting time I have to work only on forensic cases. My job is such that I frequently get called out from my DFIR work to answer regular “routine” calls for service, car wrecks, domestic disputes, etc. Running one little command at a time instead of preparing a custom profile is just silly and creates unnecessary delay.

Harlan asked me what could be done to get users to run all needed plugins at once instead of doing one and then waiting to do the another later. I think the answer to that, at least in my case, is just reminding myself that there are better, easier ways to do things sometimes than the way I choose.

It’s helpful to plan ahead what you may be interested in. The plugins available from the RegRipper Plugins site include the individual plugins applicable to each of the registry hives and a couple plugins that can be used against all the hives. Also included are “all” plugin profiles for each hive, such as one for ntuser-all, system-all and so on. These profiles have every included plugin listed in them and when run via RegRipper, will run every plugin listed in them against the hive file you’ve indicated. Running rip.exe -r ntuser.dat -f ntuser-all, for example, will run every ntuser.dat specific plugin against the ntuser.dat file.

Creating a custom profile for RegRipper and/or rip.exe is dead simple. The great thing about these profiles is they are just text files, easily edited in your favorite text editor. I decided to create a custom profile for this post and will tell you how I did it.

I used FTK Imager to grab the ntuser.dat file from this system and saved it to a test folder. I next selected at random several plugins in the plugins folder that are used to parse the ntuser.dat file for specific information. In my new blank text file, I typed the following:

#test custom plugin profile
#
userassist
domains
ccleaner

I closed my text file and saved it as kptest. You can call it what you want, I suppose, but that’s what I used. Notice the plugins are listed in this profile without the .pl extension. Likewise, whether you run a single plugin at the command line or create a profile, you’ll want to leave off the .pl. RegRipper takes care of adding that. That’s it. It’s that easy.

So, to try out my new test profile, I went to the command line and typed the following (in the same directory where my ntuser.dat copy was stored): rip.exe -r ntuser.dat -f kptest > test.txt. This ran only the plugins I defined in the “kptest” profile against the ntuser.dat file in that directory. This same test profile was available in the RegRipper GUI and produced the same results. The GUI also produces a log file in addition to the output.

So, why do this? Why not just run the included profiles? The answer to that is “information overload”. The “all” profiles produce a lot of information, often more than you really need. Making your own profile on a case by case basis, based on your needs to that particular case will save you from sifting through lots of information you don’t want or need. Sometimes you may discover you need to run other plugins after doing this and that’s fine, but why not try to do as much as you can at one time and then follow up with others later if necessary?

As I said, I write this as much to help me remember it as I do to help others. If you gained something from this post, then I’m very happy about that.
I will be posting again soon about the same investigation I mentioned above. It has all sorts of “win” through the use of FOSS tools and I look forward to telling you about it.

Continue reading Working Smarter, Not Harder

Working Smarter, Not Harder

There are a couple reasons I enjoy blogging, although my lack of frequent posts would suggest I don’t like it that much. Just the same, I do it because I enjoy writing and I find writing something down like this helps me remember it for the next time I need it. If this helps someone else in the process, then so much the better.

I’ve been working on an intrusion case recently, something I’ve previously done only in training. I have already started a separate blog post talking about it, but I’m not really ready to finish it yet. However, I wanted to post today about something I should have been doing all along. I’ve used such great tools as Volatility, Log2Timeline and the SANS Forensics SIFT Workstation on this case, as well as RegRipper. RegRipper is what I wanted to talk about today.

The developer of RegRipper, Harlan Carvey, made a new post on his blog recently about finding evidence of program execution on a system under investigation. As a police officer, most of my cases revolve around finding the porn, trying to figure out how it got there and if it’s been viewed. Not terribly difficult, most of the time. I rarely have the need to determine whether or not a particular program has been run. Even in the case of investigating child exploitation video possession, I can usually determine if a video has been viewed through .lnk files, jump lists, recent docs, application history and so on. I was able to determine on a recent case that a particular video had been opened in RealPlayer by finding the .lnk file RealPlayer creates upon playing a file. That, along with timeline evidence and some application testing helped prove the case. But, I digress.

As I said, it’s not often that program execution is that important to my cases. I found the need to do this, however, after discovering the intruders in this particular case had downloaded several things to the victim Windows 2008 system, including some hacking tools, a bulk email sender and several different web browsers. While I found ample web history to easily show the browsers had been used, I wanted to find out if the other programs had been only downloaded or actually used. Harlan’s post helped me remember some steps I could take and taught me some new ones as well to help figure this out.

That was the set up, but here’s the real point of this post. I found myself using RegRipper in my quest to determine program execution. I use the command line rip.exe probably as much, maybe more often than the RegRipper GUI. The problem is, I was using the program in a less than efficient manner. Instead of taking advantage of the ability to create a custom profile and running all the plugins I was interested in at once, I was typing them each in at the command line one at a time, looking at the output and then running another. This amounts to an inefficient use of  the fleeting time I have to work only on forensic cases. My job is such that I frequently get called out from my DFIR work to answer regular “routine” calls for service, car wrecks, domestic disputes, etc. Running one little command at a time instead of preparing a custom profile is just silly and creates unnecessary delay.

Harlan asked me what could be done to get users to run all needed plugins at once instead of doing one and then waiting to do the another later. I think the answer to that, at least in my case, is just reminding myself that there are better, easier ways to do things sometimes than the way I choose.

It’s helpful to plan ahead what you may be interested in. The plugins available from the RegRipper Plugins site include the individual plugins applicable to each of the registry hives and a couple plugins that can be used against all the hives. Also included are “all” plugin profiles for each hive, such as one for ntuser-all, system-all and so on. These profiles have every included plugin listed in them and when run via RegRipper, will run every plugin listed in them against the hive file you’ve indicated. Running rip.exe -r ntuser.dat -f ntuser-all, for example, will run every ntuser.dat specific plugin against the ntuser.dat file.

Creating a custom profile for RegRipper and/or rip.exe is dead simple. The great thing about these profiles is they are just text files, easily edited in your favorite text editor. I decided to create a custom profile for this post and will tell you how I did it.

I used FTK Imager to grab the ntuser.dat file from this system and saved it to a test folder. I next selected at random several plugins in the plugins folder that are used to parse the ntuser.dat file for specific information. In my new blank text file, I typed the following:

#test custom plugin profile
#
userassist
domains
ccleaner

I closed my text file and saved it as kptest. You can call it what you want, I suppose, but that’s what I used. Notice the plugins are listed in this profile without the .pl extension. Likewise, whether you run a single plugin at the command line or create a profile, you’ll want to leave off the .pl. RegRipper takes care of adding that. That’s it. It’s that easy.

So, to try out my new test profile, I went to the command line and typed the following (in the same directory where my ntuser.dat copy was stored): rip.exe -r ntuser.dat -f kptest > test.txt. This ran only the plugins I defined in the “kptest” profile against the ntuser.dat file in that directory. This same test profile was available in the RegRipper GUI and produced the same results. The GUI also produces a log file in addition to the output.

So, why do this? Why not just run the included profiles? The answer to that is “information overload”. The “all” profiles produce a lot of information, often more than you really need. Making your own profile on a case by case basis, based on your needs to that particular case will save you from sifting through lots of information you don’t want or need. Sometimes you may discover you need to run other plugins after doing this and that’s fine, but why not try to do as much as you can at one time and then follow up with others later if necessary?

As I said, I write this as much to help me remember it as I do to help others. If you gained something from this post, then I’m very happy about that.
I will be posting again soon about the same investigation I mentioned above. It has all sorts of “win” through the use of FOSS tools and I look forward to telling you about it.

Continue reading Working Smarter, Not Harder

The Value of Metadata in Digital Images

I’m excited to say I have a guest author on the Digital Forensics blog today! Simon has graciously offered to post this article on image metadata and its value to digital investigations. Thanks Simon!


This is my first article on digiforensics, so first of all, I’d like to thank Ken for the opportunity. I should probably introduce myself. I’m Simon and I’m currently studying Computer Forensics BSc at University. Recently, I received a lecture from a guy talking about cell site analysis and how so many cases these days involve mobile phones. So it got me thinking.

Firstly, it’s hard to find anyone who doesn’t own a mobile phone. Secondly, it’s hard to find someone who doesn’t upload pictures to social media sites such as Facebook, Twitter, Myspace (yes, people still use Myspace!) The average user doesn’t realize the risks involved by simply uploading a picture from a smartphone onto the internet.

I use the term ‘picture’ rather than ‘image’ because an ‘image’ in the forensic sense

Is a bit for bit copy of a digital drive. Anyway, back on topic. Have you heard of John

McAfee? You should have. He’s the brains behind the McAfee anti-virus software empire that

was founded way back in 1987.

In recent months, John McAfee was wanted by police regarding a murder investigation of

his neighbour. We’ll use this as a mini case study. Let us pretend we have a serial killer

on the loose. Unless we find out the whereabouts of this guy, who knows what will happen.

What should we do? Search his computer? Search his house? Ok, that’s fine. But what about social media? Let’s look at his Facebook, his Twitter. Hell, if he has World of Warcraft, let’s look at his WoW chat logs. Well, it soon emerged that he had posted a picture of himself online. So it made me think. Can we find out where this guy is? Just by looking into the picture metadata?

Whilst this can be done on Windows using EXIF Viewer, however I find the Macintosh software ‘File Viewer’ is a great piece of software for this kind of thing. In order to find this guy, we need to analyse the photograph. Luckily for us, Mr. McAfee left his location on when he took his picture, meaning that his geographical location is embedded into the photographs metadata.

Simply dragging the photograph into the File Viewer presents us with the following screen:




If we look at the MAC  information (Modified, Last Opened/Accessed & Created) you’ll see that the data just shows when I opened it up on my laptop. So ignore this. This case study is just so you can see the concept behind it. I’m not really following the ACPO guidelines here guys.

It’s important to note the Tiff Metadata e.g DateTime, Make & Model of device that captured the picture. Notice this is the original time that the photo was taken. Now I scrolled down and found the geotag information (GPS metadata):



This clearly states the Latitude & Longitude the picture was taken. From here, we can simply use our web browser to go to www.maps.google.co.uk and insert the latitude & longitude using this syntax:

Latitude,-Longitude.
From here, we get a satellite view of where the picture was taken.




Needless to say, John McAfee was arrested in Guatemala earlier this month. [Source BBC.co.uk] 

I hope this article has been interesting and eye opening. I’m sure there are many people who are aware of this, but if not, it’s just nice to see that metadata can be an incredible source of information for an investigator.

Continue reading The Value of Metadata in Digital Images

Posted in Uncategorized

The Value of Metadata in Digital Images

I’m excited to say I have a guest author on the Digital Forensics blog today! Simon has graciously offered to post this article on image metadata and its value to digital investigations. Thanks Simon!


This is my first article on digiforensics, so first of all, I’d like to thank Ken for the opportunity. I should probably introduce myself. I’m Simon and I’m currently studying Computer Forensics BSc at University. Recently, I received a lecture from a guy talking about cell site analysis and how so many cases these days involve mobile phones. So it got me thinking.

Firstly, it’s hard to find anyone who doesn’t own a mobile phone. Secondly, it’s hard to find someone who doesn’t upload pictures to social media sites such as Facebook, Twitter, Myspace (yes, people still use Myspace!) The average user doesn’t realize the risks involved by simply uploading a picture from a smartphone onto the internet.

I use the term ‘picture’ rather than ‘image’ because an ‘image’ in the forensic sense

Is a bit for bit copy of a digital drive. Anyway, back on topic. Have you heard of John

McAfee? You should have. He’s the brains behind the McAfee anti-virus software empire that

was founded way back in 1987.

In recent months, John McAfee was wanted by police regarding a murder investigation of

his neighbour. We’ll use this as a mini case study. Let us pretend we have a serial killer

on the loose. Unless we find out the whereabouts of this guy, who knows what will happen.

What should we do? Search his computer? Search his house? Ok, that’s fine. But what about social media? Let’s look at his Facebook, his Twitter. Hell, if he has World of Warcraft, let’s look at his WoW chat logs. Well, it soon emerged that he had posted a picture of himself online. So it made me think. Can we find out where this guy is? Just by looking into the picture metadata?

Whilst this can be done on Windows using EXIF Viewer, however I find the Macintosh software ‘File Viewer’ is a great piece of software for this kind of thing. In order to find this guy, we need to analyse the photograph. Luckily for us, Mr. McAfee left his location on when he took his picture, meaning that his geographical location is embedded into the photographs metadata.

Simply dragging the photograph into the File Viewer presents us with the following screen:




If we look at the MAC  information (Modified, Last Opened/Accessed & Created) you’ll see that the data just shows when I opened it up on my laptop. So ignore this. This case study is just so you can see the concept behind it. I’m not really following the ACPO guidelines here guys.

It’s important to note the Tiff Metadata e.g DateTime, Make & Model of device that captured the picture. Notice this is the original time that the photo was taken. Now I scrolled down and found the geotag information (GPS metadata):



This clearly states the Latitude & Longitude the picture was taken. From here, we can simply use our web browser to go to www.maps.google.co.uk and insert the latitude & longitude using this syntax:

Latitude,-Longitude.
From here, we get a satellite view of where the picture was taken.




Needless to say, John McAfee was arrested in Guatemala earlier this month. [Source BBC.co.uk] 

I hope this article has been interesting and eye opening. I’m sure there are many people who are aware of this, but if not, it’s just nice to see that metadata can be an incredible source of information for an investigator.

Continue reading The Value of Metadata in Digital Images

Posted in Uncategorized