The Volatility Framework

The world’s most widely used memory forensics platform.

WHAT IS THE Volatility Framework?

First released in 2007, The Volatility Framework was developed as an open source memory forensics tool written in Python. It has remained free and available to the world, and it is actively maintained by members of The Volatility Project. Volatility development is supported by The Volatility Foundation

Volatility releases are the result of significant in-depth research into OS internals, applications, malicious code, and suspect activities. Releases represent a milestone in not only our team’s progress, but also in the development of the community and forensics capabilities as a whole. While releases may seem few and far between, we strive to perform rigorous testing of our new features before calling it stable.

The Volatility Framework is a free, open source software that is available for download on Github:

The History of Memory Forensics & THe Volatility Framework

2024
Volatility 3 v2.5.2 is released.

Volatility 3 v2.5.2 is released. This release includes support for Amazon S3 and Google Cloud Storage, as well as new plugins for Linux and Windows. It also includes a new feature to the elfs plugin for dumping of ELF files and improvements to ELF support.

2023
Volatility 3 v2.5.0 is released.

Volatility 3 v2.5.0 is released. This release includes new Linux plugins and Linux process dumping. It adds and improved core API, support for Xen ELF file format, improved Linux subsystem support, and includes tutorials for the documentation.

Volatility 3 v2.4.1 is released.

Volatility 3 v2.4.1 is released. Several new plugins for Linux and Windows are included in this release, as well as PID filtering for Windows pstree plugin, minor fixes for Windows callbacks plugin. The minimum Python version was increased to 3.7 and the Python-snappy dependency was replaced with ctypes to ease installation.

2022
Volatility 3 v2.4.0 is released.

Volatility 3 v2.4.0 is released. This is a major version release and includes new plugins for Linux and Windows. It also introduces the concept of modules and module requirements. Other features in this release include unified symbol handling and ISF file caching between OS versions, better QEVM support (fixed the QEMU PCI hole), exposed an API for automatic PDB symbol table use, improved contributed documentation, as well asl various bug fixes and changes across the codebase.

Volatility 3 v2.0.1 is released.
Volatility 3 v2.0.0 is released.

Volatility 3 v2.0.0 is released. This release includes new plugins, such as Windows networking plugins, Windows crashinfo and skeleton_key_check, Linux kmsg plugin. It also includes new layers AVML and LeechCore, QEMU layer performance optimization, improved access to Windows library symbols, better offline and remote support, as well as improved documentation

and working with python requirements.

2021
Volatility 3 v1.0.1 is released.
2020
Volatility 3 v1.0.1 (Python 3 Rewrite) is released.

Volatility 3 v1.0.1 (Python 3 Rewrite) is released. In 2020, the Volatility Foundation publicly released a complete rewrite of the framework, Volatility 3. The project was intended to address many of the technical and performance challenges associated with the original code base that became apparent since its original release in 2007. Another benefit of the rewrite is that Volatility 3 could be released under a custom license that was more aligned with the goals of the Volatility community, the Volatility Software License (VSL). Details about the rewrite of Volatility 3 can be found in this presentation: Volatility 3 Public Beta: Insider’s Preview.

2019
Volatility 3 Public Beta is announced

Volatility 3 Public Beta is announced at #OSDFCon. Since its initial public release in 2007, Volatility has attracted one of the largest and most active communities of users and developers in the digital forensics industry. As the industry has continued to evolve the way that operating systems are developed, deployed, and maintained, so to have the skillsets of memory analysts. Their preferred work flows have changed to meet a world with increasingly large volumes of complex data. To address these challenges, the Volatility development team has been actively architecting and developing an entirely new version of the framework, while simultaneously supporting users of the current stable version.

2016
Volatility 2.6 (Windows 10 / Server 2016) is released.

Volatility 2.6 (Windows 10 / Server 2016) is released. This release improves support for Windows 10 and adds support for Windows Server 2016, MacOS Sierra 10.12, and Linux with KASLR kernels. A lot of bug fixes went into this release as well as performance enhancements (especially related to page table parsing and virtual address space scanning). See below for a more detailed list of the changes in this version.

2015
Volatility 2.5 (Unified Output / Community) is released.

Volatility 2.5 (Unified Output / Community) is released. This is the first release since the publication of The Art of Memory Forensics. It adds support for Windows 10 (initial), Linux kernels 4.2.3+, and MacOS X Yosemite and El Capitan. Additionally, the unified output rendering gives users the flexibility of asking for results in various formats (html, sqlite, json, xlsx, dot, text, etc.) while simplifying things for plugin developers. In short, less code leads to more functionality. This is especially useful for framework designers (GUIs, web interfaces, library APIs), because you can interface with a plugin directly and ask for json, which you then store, process, or modify however you want.

2014
The Volatility Foundation is officially a nonprofit organization, having been granted 501(c)(3) status.
The Art of Memory Forensics
The Art of Memory Forensics by Michael Hale Ligh, Andrew Case, Jamie Levy, and AAron Walters—all core developers of The Volatility Framework—is published. The Art of Memory Forensics the only book on the market that focuses exclusively on memory forensics and how to deploy its techniques in a forensically sound manner. Beginning with introductory concepts and moving toward the advanced, the book covers proper investigative steps for detecting stealth malware and advanced threats, and how to use free, open source tools for conducting thorough memory forensics.
Volatility 2.4 is released.

Volatility 2.4 is released. The release of this version coincides with the publication of The Art of Memory Forensics. It adds support for Windows 8, 8.1, 2012, and 2012 R2 memory dumps and MacOS X Mavericks (up to 10.9.4). New plugins include the ability to extract cached Truecrypt passphrases and master keys from Windows and Linux memory dumps, investigate Mac user activity (such as pulling their contact database, calendar items, PGP encrypted mails, OTR Adium chat messages, etc), and analyze advanced Linux rootkits.

2013
Volatility 2.3.1 (Mac OSX and Android ARM) is released.

Volatility 2.3.1 (Mac OSX and Android ARM) is released. This release introduced support for 32- and 64-bit Linux memory samples, an address space for LiME (the Linux Memory Extractor), and a suite of 14 new plugins to investigate Windows GUI space–including clipboard contents, desktop windows, and screenshots.

The 1st Annual Volatility Framework Plugin Contest is announced.

The 1st Annual Volatility Framework Plugin Contest is announced. This contest is inspired and modeled after the Hex-Rays Plugin Contest. As in the case of IDA, Volatility was designed with the belief that talented analysts should only be limited by their creativity not the tools they use. In this spirit, Volatility has a flexible architecture that can be extended in numerous ways: analysis plugins (operating system plugins, application plugins, etc), volshell commands, address spaces, profiles, or user interfaces. This contest is intended to inspire people to demonstrate their creativity, become a memory analysis pioneer, win the admiration of your peers, and give back to the community.

2012
Volatility 2.2 (Linux Support) is released.

Volatility 2.2 (Linux Support) is released. This release introduced support for 32- and 64-bit Linux memory samples, an address space for LiME (the Linux Memory Extractor), and a suite of 14 new plugins to investigate Windows GUI space–including clipboard contents, desktop windows, and screenshots.

Volatility 2.1 (Malware and 64-bits) is released.

Volatility 2.1 (Malware and 64-bits) is released. This is the first release to support all major 64-bit versions of Windows. It also included the ability to convert raw memory images to crash dumps, extract command history and console input/output buffers, and an API for accessing cached registry keys and values from memory. Ten new plugins were added with a specific focus on malware analysis.

2011
Volatility 2.0 is released.
2008
Detect the “undetectable” Challenge

AAron Walters posts a challenge to the memory forensics community: detect the “undetectable” by using Volatility to find artifacts in memory for a new Metasploit payload known to be leveraging a technique known as Reflective DLL Injection. Less than 24 hours later, Michael Hale Ligh is the first person to respond to the challenge and proves that Volatility can find hidden DLLs and other injected code blocks.

Volatility 1.3.1 is released.
OMFW 2008

The inaugural Open Source Memory Forensics Workshop is held in Baltimore, Maryland. This is the first ever workshop focused on open source volatile memory analysis, bringing together digital investigation researchers and practitioners to discuss the latest advancements in volatile memory analysis.

Volatility 1.3 is released.
Advanced Volatile Memory Analysis at the 2008 DoD Cyber Crime Conference

AAron Walters presents Advanced Volatile Memory Analysis at the 2008 DoD Cyber Crime Conference. This talk focuses on advanced techniques being used in volatile memory analysis (VMA). It also discusses a number of open source tools and resources he has made available to the digital investigation community. The session also explores VMA is being used to perform automated malware analysis, and demonstrates how he is combining VMA with file system analysis to help reconstruct and visualize the digital crime scene.

2007
Volatility 1.2 is released
The Volatility Framework 1.1.1 is first publicly released

The Volatility Framework 1.1.1 is first publicly released, having evolved from FATKit and VolaTools. The Volatility Framework is a completely open collection of tools, implemented in Python under the GNU General Public License, for the extraction of digital artifacts from volatile memory (RAM) samples. The goal behind the open development of the Volatility Framework is to bring together systems researchers who believe in bettering the state of the digital forensics community. The framework is intended to introduce the techniques and complexities associated with extracting digital artifacts from volatile memory samples and provide a platform for further work in this exciting area of research. The Volatility Framework runs on any platform where Python is supported.

VolaTools is announced at Black Hat DC

AAron Walters and Nick Petroni present their research on integrating volatile memory forensics into the digital investigative process revolutionizes the industry.

2006
FATKit: Detecting Malicious Library Injection and Upping the “Anti”

AAron Walters publishes FATKit: Detecting Malicious Library Injection and Upping the “Anti”, which discusses how the Forensic Analysis ToolKit (FATKit) can facilitate the process of enumerating suspicious artifacts manifested as a result of remote library injection. Previously published techniques focused on detecting attacks in real time, but this paper specifically focuses on the ability to extract memory-resident evidence from information systems under investigation. One significant differentiator from the majority of previous work is that the integrity of the potentially compromised operating system is not relied upon; instead, analysis is performed offline on a trusted capture of volatile memory (RAM).

FATKit: A framework for the extraction and analysis of digital forensic data from volatile system memory

AAron Walters, Nick Petroni, Timothy Fraser, and William Arbaugh publish FATKit: A framework for the extraction and analysis of digital forensic data from volatile system memory. This paper introduces the modular, extensible Forensic Analysis ToolKit (FATKit) framework that increases the practical applicability of volatile memory forensic analysis by freeing human analysts from the prohibitively-tedious aspects of low-level data extraction. 

Want to Join the Community?