<span>Introducing KAPE &ndash; Kroll Artifact Parser and Extractor</span> Digital Forensics

or to bookmark this page

Click here to bookmark this page

Click here to remove bookmark


I’m proud to announce KAPE (Kroll Artifact Parser and Extractor) is now available for download. KAPE is an efficient and highly configurable triage program that will target essentially any device or storage location, find forensically useful artifacts, and parse them within a few minutes.

Having worked with and taught digital forensics for over 10 years in both law enforcement and enterprise environments, I understood how DFIR professionals could benefit from a program that collected and processed forensically valuable data quickly, potentially before any full system images were completed.

With key input from the digital forensics/incident response (DFIR) community, we also included predefined “targets” and “modules” for KAPE that help investigators gather a wider range of artifacts in a fraction of the time, enriching evidentiary libraries.

 Kroll Artifact Parser and Extractor KAPE

KAPE is free for download here.

So… what exactly is KAPE?

KAPE is a multi-function program that primarily: 1) collects files and 2) processes collected files with one or more programs.

KAPE reads configuration files on the fly and based on their contents, collects and processes relevant files. This makes KAPE very extensible in that the program’s author does not need to be involved to add or expand functionality.

As we will see later in more detail, KAPE uses the concepts of targets and modules to do its work. KAPE comes with a range of default targets and modules for operations most commonly required in forensic exams. These can also serve as models  for creating new targets and modules.

At a high level, KAPE works by adding file masks to a queue. This queue is then used to find and copy files from a source location. For files that are locked by the operating system, a second run bypasses the lock. At the end of the process, KAPE will make a copy and preserve metadata about all available files from a source location into a given directory. The second (optional) stage of processing is to run one or more programs against the collected data. This too works by targeting either specific file names or directories. Various programs are run against the files, and the output from the programs is then saved in directories named after a category, such as EvidenceOfExecution, BrowserHistory or AccountUsage.

By grouping things by category, examiners of all skill levels have the means to discover relevant information regardless of an individual artifact's source. In other words, an examiner no longer need to know how to process prefetch, shimcache, amcache, userassist, etc., as they relate to evidence of execution artifacts. Ultimately, a wider range of artifacts can be leveraged for any given requirement.

So, In the end, we have a process that looks like this:

Introducing KAPE

Before exploring how KAPE delivers these results, either as a single operation or in stages, let’s first discuss the concepts of targets and modules.

A bit deeper

As mentioned earlier, KAPE has two primary phases: target collection and module execution.

Targets and modules are both written using YAML, which is easy to read and to write. KAPE comes with many prebuilt targets and modules that can also serve as examples for building new ones in the future.


Targets are essentially collections of file and directory specifications. KAPE knows how to read these specifications and expand them to files and directories that exist on a target location. Once KAPE has processed all targets and has built a list of files, the list is processed, and each file is copied from the source to the destination directory.

Files that are locked by the operating system and cannot be copied by regular means are, added to a secondary queue. This secondary queue contains all the files that were locked or in use. After the primary queue is processed the secondary queue is processed and a different technique, using raw disk reads, is used to bypass the locks. This results in getting a copy of the file as it exists at the source.

Regardless of how the file is copied (either by regular means or via raw access), the original timestamps from all directories and the files themselves are reapplied to the destination files. The metadata is also collected into log files as well.


Like targets, modules are defined using simple YAML properties and are used to run programs. These programs can target anything, including files collected via the target capabilities as well as any other kinds of programs you may want to run on a system from a live response perspective. For example, if you collected jump lists, a tool like JLECmd could be used to dump the contents of the jump lists to CSV. If you also wanted to collect the output of netstat.exe or ipconfig /dnscache, you could do so as well. Each of these options would be contained in its own module and then grouped together based on commonality between the modules, such as “NetworkLiveResponse”, for example.

Why use KAPE?

KAPE is a robust, free-software triage program that will target a device or storage location, find the most forensically important artifacts (based on your needs), and parse them within a few minutes. Because of its speed, KAPE allows investigators to find and prioritize the systems most critical for their case. Additionally, KAPE can be used to collect key artifacts prior to the start of the imaging process. While the imaging completes, the data generated by KAPE can be reviewed for leads, building timelines, etc.

In short, KAPE gets you to the data (and its answers) much faster than more traditional means.

Download KAPE now.

<span>Introducing KAPE &ndash; Kroll Artifact Parser and Extractor</span> 2019-02-14T05:00:00.0000000 /en/insights/publications/cyber/kroll-artifact-parser-extractor-kape /-/media/kroll/images/publications/featured-images/2019/kroll-artifact-parser-extractor-kape.jpg publication {E39587AD-8F0B-4FE2-865F-969BC5501096} {3A077BFC-C74A-40AF-A14C-13BCF6E3873E} {809E3BA6-ABC7-4C3B-AB97-D7E5B9A66B24} {9FDFA7B9-8B48-461E-BAD8-1CF29A23573C} {E538E14D-C192-4A8E-8861-504D0EEBF99A}

Other Areas We Can Help

Cyber Risk

Cyber Risk

Global, end-to-end cyber risk solutions.

Cyber Risk
Incident Response and Litigation Support

24x7 Incident Response

Compliant notifications, reputation-saving remediation, and litigation support.

24x7 Incident Response



Finding and Decoding Malicious Powershell Scripts


Planned Methodology for Forensically Sound Incident Response in Office 365


PCI Data Security Ordeals: Inadvertent Storage Attacks