Introduction
If youâve had your eye on the news media, or perhaps more appropriately the online lists and forums, over the past couple of years, there are a couple of facts or âtruthsâ that should be glaringly obvious to you. First, computers and computing devices are more and more a part of our lives. Not only do most of us have computer systems, such as desktops at work and school, laptops at home and on the go, we also have âsmart phones,â tablet computing devices, and even smart global positioning systems (GPSs) built into our cars. Weâre inundated with marketing ploys every day, being told that we have to get the latest-and-greatest device, and be connected not just to WiFi, but also to the ever-present â4Gâ (whatever that means âŚ) cellular networks. If we donât have a phone-type device available, we can easily open up our laptop or turn on our tablet device and instantly communicate with others using instant messaging, email, Twitter, or Skype applications.
The second truth is that as computers become more and more a part of our lives, so does crime involving those devices in some manner. Whether itâs âcyberbullyingâ or âcyberstalking,â identity theft, or intrusions and data breaches that result in some form of data theft, a good number of real-world physical crimes are now being committed through the use of computers, and as such, get renamed by prepending âcyberâ to the description. As we began to move a lot of the things that we did in the real world to the online world (e.g., banking, shopping, filing taxes, etc.), we became targets for cybercrime.
What makes this activity even more insidious and apparently âsophisticatedâ is that we donât recognize it for what it is, because conceptually, the online world is simply so foreign to us. If someone shatters a storefront window to steal a television set, thereâs a loud noise, possibly an alarm, broken glass, and someone fleeing with their stolen loot. Cybercrime doesnât âlook likeâ this; often, something isnât stolen and then absent, so much as itâs copied. Other times, the crime does result in something that is stolen and removed from our ownership, but we may not recognize that immediately, because weâre talking about 1s and 0s in cyberspace, not a car that should be sitting in your driveway.
These malicious activities also appear to be increasing in sophistication. In many cases, the fact that a crime has occurred is not evident until someone notices a significant decrease in an account balance, which indicates that the perpetrator has already gained access to systems, gathered the data needed, accessed that bank account, and left with the funds. The actual incidents are not detected until well after (in some cases, weeks or even months) theyâve occurred. In other instances, the malicious activity continues and even escalates after we become aware of it, because weâre unable to transition our mindset from the real world (lock the doors and windows, post a guard at the door, etc.) to the online world, and effectively address the issue.
Clearly, no one and no organization is immune. The early part of 2011 saw a number of high-visibility computer security incidents splashed across the pages (both web and print) of the media. The federal arm of the computer consulting firm HBGary suffered an embarrassing exposure of internal, sensitive data, and equally devastating was the manner in which it was retrieved. RSA, owned by EMC and the provider of secure authentication mechanisms, reported that theyâd been compromised. On April 6, Kelly Jackson Higgins published a story (titled âLaw Firms Under Siegeâ) at DarkReading.com that revealed that law firms were becoming a more prevalent target of advanced persistent threat (APT) actor groups. The examples are numerous, but the point is that thereâs no one specific type of attack that is used in every situation, or victim that gets targeted. Everyoneâs a target.
To address this situation, we need to have responders and analysts who are at least as equally educated, armed, and knowledgeable as those committing these online crimes. Being able to develop suitable detection and deterrence mechanisms depends on understanding how these online criminals operate, how they get in, what theyâre after, and how they exfiltrate what theyâve found from the infrastructure. As such, analysts need to understand how to go about determining which systems have been accessed, and which are used as primary jump points that the intruders use to return at will. They also need to understand how to do so without tipping their hand and revealing that they are actively monitoring the intruders, or inadvertently destroying data in the process.
In this book, weâre going to focus on the analysis of Windows computer systemsâlaptops, desktops, serversâbecause they are so pervasive. This is not to exclude other devices and operating systems; to the contrary, weâre narrowing our focus in order to fit the topic that weâre covering into a manageable volume. Our focus throughout this book will be primarily on the Windows 7 operating system (OS), and much of the book after Chapter 2 will be tailored specifically to the analysis of forensic images acquired from those systems.
In this chapter, weâre going to start our journey by discussing and understanding the core concepts that set the foundation for our analysis. It is vitally important that responders and analysts understand these concepts, as it is these core concepts that shape what we do and how we approach a problem or incident. Developing an understanding of the fundamentals allows us to create a foundation upon which to build, allowing analysts to be able to address new issues effectively, rather than responding to these challenges by using the âthatâs what weâve always doneâ methodology, which may be unviable.
Analysis Concepts
Very often when talking to analystsâespecially those who are new to the fieldâI find that there are some concepts that shape not only their thought processes but also their investigative processes and how they look at and approach the various problems and issues that they encounter. For new analysts, without a great deal of actual experience to fall back on, these fundamental analysis concepts make up for that lack of experience and allow them to overcome the day-to-day challenges that they face.
Consider how you may have learned to acquire images of hard drives. Many of us started out our learning process by first removing the hard drive from the computer system, and hooking it up to a write-blocker. We learned about write-blockers that allowed us to acquire an image of a hard drive to another, âcleanâ hard drive. However, the act of removing the hard drive from the computer system isnât the extent of the foundational knowledge we gathered; itâs the documentation that we developed and maintained during this process that was so critical and foundational. What did we do, how did we do it, and how do we know that weâd done it correctly? Did we document what weâd done to the point where someone else could follow the same process and achieve the same results, making our process repeatable? Itâs this aspect thatâs of paramount importance, because what happens when we encounter an ecommerce server that needs to be acquired but cannot be taken offline for any reason? Or what happens when the running server doesnât actually have any hard drives, but is instead a boot-from-SAN server? Or if the running laptop uses whole disk encryption so that the entire contents of the hard drive are encrypted when the system is shut down? As not every situation is going to be the same or fit neatly into a nice little training package, understanding the foundational concepts of what you hope to achieve through image acquisition is far more important than memorizing the mechanics of how to connect source and target hard drives to a write-blocker and perform an acquisition. This is just one example of why core foundational concepts are so critically important.
Windows Versions
Iâve been told by some individuals that there are three basic computer operating systems that exist: Windows, Linux, and Mac OS X. Thatâs it, end of story. I have to say that when I hear this Iâm something a bit more than shocked. This sort of attitude tells me that someone views all Windows versions as being the same, and that kind of thinking can be extremely detrimental to even the simplest examination. This is due to the fact that there are significant differences among Windows versions, particularly from the perspective of a forensic analyst.
The differences among Windows versions go beyond just what we see in the graphical user interface (GUI). Some of the changes that occur among Windows versions affect entire technologies. For example, the Task Scheduler version 1.0 that shipped with Windows XP is pretty straightforward. The scheduled task (.job) files have a binary format, and the results of the tasks running are recorded in the Task Scheduler log file (i.e., âSchedLgU.txtâ). With Vista and Task Scheduler version 2.0, there are significant differences; while the Task Scheduler log file remains the same, the .job files are XML format files. In addition (and this will be discussed in greater detail later in the book), not only do Vista and Windows 7 systems ship with many default scheduled tasks, but information about the tasks (including a hash of the .job file itself) is recorded in the Registry.
On Windows XP and 2003 systems, the Event Log (.evt) files follow a binary format that is well documented at the Microsoft web site. In fact, the structures and format of the .evt files and their embedded records are so well documented that open-source tools for parsing these files are relatively easy to write. Beginning with Vista, the Event Log service was rewritten and the Windows Event Log (.evtx) framework was implemented. Only a high-level description of the binary XML format of the logs themselves is available at the Microsoft site. In addition, there are two types of Windows Event Logs implemented; one group is the Window Logs and includes the Application, System, Security, Setup, and ForwardedEvent logs. The other group is the Application and Services logs, which record specific events from applications and other components on the system. While there are many default Application and Services logs that are installed as part of a Windows 2008 and Windows 7, for example, these logs may also vary depending on the installed applications and services. In short, the move from Windows XP/2003 to Vista brought a completely new logging format and structure, requiring new tools and techniques for accessing the logged events.
From a purely binary perspective, there is no difference among the Registry hive files of the various Windows versions, from Windows 2000 all the way through to Windows 7 (and even into Windows 8). In some cases, there are no differences in what information is maintained in the Registry; for the most part, information about Windows services, as well as the contents of the USBStor key, continue to be similar for versions between Windows 2000 and Windows 7. However, there are significant differences between these two Windows versions with respect to the information that is recorded regarding USB devices, access to wireless access points, and a number of other areas. Another example of a difference in whatâs recorded in the Registry is that with Windows XP, searches that a user performed through the Explorer shell (e.g., âStartâSearchâ) are recorded in the ACMru key. With Vista, information about searches is moved to a file, and with Windows 7, user searches are recorded in the WordWheelQuery key.
Other differences in Windows versions are perhaps unintentional. In December 2010, there was a question posted to an online forum asking about the purpose of the Microsoft\ESENT\Process Registry key within the Software hive on a Windows XP system. During the ensuing exchange, various respondents included references to Google searches that indicated that there were some versions of malware that modified the contents of that key. For example, one reference at the ThreatExpert.com site indicated that a Trojan associated with online games modified this key when installed. Ultimately, with the assistance of Troy Larson (senior forensic investigator at Microsoft), it was determined that the key should only exist on Windows XP systems, as Windows XP shipped with a debug or âchecked buildâ of âesent.dll.â This indicated that the dynamic link library (DLL) had been compiled to generate additional information for debugging purposes, and then had not been recompiled for âproductionâ delivery, and the debug version of the DLL was shipped with the operating system installation. In checking the software hives on several available test systems, as well as within acquired images of Vista, Windows 2003/2008, and Windows 7 systems I had access to, I didnât find any indication that the key existed on any other system than Windows XP.
Some differences among versions of the Windows operating system can be subtle, while others can be covert and not visible to the casual user or administrator. However, the fact remains that, as a forensic analyst, what you look for (based on your examination goals) and what you see, and how you access and interpret it, will be impacted significantly by the Windows version that youâre examining. Troy Larson has been putting considerable effort toward highlighting many of the new technologies within Windows 7 and identifying possible sources of forensic artifacts, and discussing these areas in presentations. There are a number of other presentations available (via searching) online that discuss similar findings, indicating that there are those, in the forensic community as well as within academia, who feel itâs important to identify as many of the new potential sources of forensic artifacts or âevidenceâ as possible.
Documenting all of the differences among the various Windows versions would simply be an enormous task. Throughout the rest of this book, as different topics are discussed, I will attempt to point out the differences among Windows versions, where this is pertinent to the understanding of the topic. The point, however, is to understand that âWindowsâ is not simply âWindows,â and the Windows version (XP or Windows 7, 32- or 64-bit, etc.) will have a significant impact on the tools used and the investigative approach used.
Analysis Principles
Many times when discussing forensic analysis with other folks, particularly new analysts, it seems that when someone gets into this business, the primary focus of their training (and therefore, their investigative approach) is on tools. So when theyâre given an image to analyze, analystsâ first thought is to open up the commercial forensic analysis application that theyâre familiar with or were trained on. However, if you were to take that application away, where would they be? What would they be left with, and what would they be able to do? I ask this, because I have heard analysts state, âI need [insert application name]â when given an examination.
Many of the principles and concepts discussed throughout the rest of this chapter will likely be familiar to many analysts. You may have seen them in my blog, or you may have heard another analyst or responder discuss them in a presentation at a conference. Chris Pogueâs Sniper Forensics presentations cover many of these ideas; Chris and I worked at IBM together, and spent time discussing many of these concepts. Iâm presenting the principles again here because theyâre important, and I really feel that analysts need to understand them, or at least have a familiarity with them.