Towards A Generic Approach For Memory Forensics
Towards A Generic Approach For Memory Forensics
Towards A Generic Approach For Memory Forensics
Abstract—The era of information technology has, unfortu- network data. Therefore, the result of applying MF is invaluable
nately, contributed to the tremendous rise in the number of in cases that do not easily leave artifacts on the hard drive,
criminal activities. However, digital artifacts can be utilized in
where the only source a piece of information can be found in is
convicting cybercriminal and exposing their activities. The digital
memory. For example, a running process might generate data
forensics science concerns about all aspects related to cybercrimes.
It seeks digital evidence by following standard methodologies to that will never be stored on a secondary storage. In cybercrimes,
be admitted in court rooms. This paper concerns about memory many different attacks might involve memory-only information
forensics for the unique artifacts it holds. Memory contains [4, 5, 6]. Viewing web pages that contain some entities such as
information about the current state of systems and applications. pictures, audios, videos, ads, etc. might involve files might not
Moreover, an application’s data explains how a criminal has been
interacting the application just before the memory is acquired. be stored on the HD at all, but stay in memory. This requires
Memory forensics at the application level is currently random investigation at the memory-level.
and cumbersome. Targeting specific applications is what forensic Application level evidence gives an indication of how the
researchers and practitioner are currently striving to provide. user is using an application at the time of memory image is
This paper suggests a general solution to investigate any applica-
acquired. Due to their importance, certain applications attract
tion. Our solution aims to utilize an application’s data structures
and variables’ information in the investigation process. This is digital investigators. For example, Web browsers are among
the main applications that investigators are greatly interested in
because an application’s data has to be stored and retrieved in the
means of variables. Data structures and variables’ information inspecting their associated information such as visited URLs
can be generated by compilers for debugging purposes. We show and search queries Said et al. [7]. In addition, the most common
that an application’s information is a valuable resource to the
used Windows applications; Microsoft Word 2007, Microsoft
investigator.
Index Terms—Memory forensics, PDB file, Digital Evidence, Excel 2007, Adobe Reader 9.0, Microsoft PowerPoint 2007
Debugging information, Application’s data and Internet Explorer 7.0 were analyzed to inspect the user
information fragments and the viewed web pages that could
I. I NTRODUCTION be extracted from various areas in memoryOlajide et al. [8].
Nevertheless, different artifacts can be extracted from the
Recent technologies of computation and communication in memory of a running program. For example, the program’s
digital devices have led to a significant increase in the number state and execution behavior can be explored by utilizing the
of cybercrimes. Intruding into others’ machines to steal their source code and its Object-Oriented programming structure
valuable information, executing malicious programs, spying on [9, 10]. Variables’ values of a program varied in their scopes
users’ activities or causing damage to systems are examples of and durations which indicates the program’s states.
cybercrimes. Digital Forensic (DF) is a discipline that helps This paper is organized as follows. Related work is covered
investigators extract digital evidence from digital devices [1]. in Section II. Our investigation model is presented in Section III.
Various digital storage sources can be inspected to find digital This is followed by Section IV that explains our experimental
evidence such as Hard Drives (HD), Solid State Drives (SSD), setup. Our results are shown in Section V. A discussion
Random Access Memory (RAM), network, phone SIM cards and future work are covered in Section VI followed by the
and Internet-of-Things devices. As identifying evidence of conclusion.
physical crime, digital forensics can be utilized to attribute
evidence and hold the suspect accountable, confirm alibis II. R ELATED W ORK
or statements, evaluation of source (copyright materials or
document authentication) or determine the intent Casey [2]. The main objective of memory forensics is to analyze
Memory Forensics (MF) is one of the most effective digital volatile data, extract digital artifacts, and identify malicious
forensic disciplines. It aims to extract digital evidence from code from the relevant suspicious programs. Several significant
volatile data existed in the RAM. Furthermore, MF plays studies aimed to improve the analysis of the acquired memory,
an important role in incident response and malware analysis especially after launching the memory challenge in the Digital
and their reverse engineering process that can be utilized to Forensics Research Workshop (DFRWS, 2005) [11]. Dolan-
inspect suspected systems and their memories [3]. Wealth Gavitt [12], in 2007, proposed the use of Virtual Address
of information can be extracted from memory such as files, Descriptor (VAD) tree structure in windows that help in the
processes, registry keys, passwords, encryption keys, and analysis of memory dumps. The description of how to locate
R EFERENCES
[1] M. Reith, C. Carr, and G. Gunsch, “An examination of
digital forensic models,” International Journal of Digital
Evidence, vol. 1, no. 3, pp. 1–12, 2002.
[2] E. Casey, Handbook of digital forensics and investigation.
Fig. 4: Parsing results of a struct variable Academic Press, 2009.
[3] A. Schuster, “Searching for processes and threads in
microsoft windows memory dumps,” digital investigation,
we cannot know the size of their memory location before vol. 3, pp. 10–16, 2006.
parsing their information. Therefore, in parsing phase step A, [4] M. Al-Saleh and Z. Al-Sharif, “Ram forensics against
the parsing information from PDB file of the non-primitive cyber crimes involving files,” in The Second International
variable shows that the type of the variable is given by the Conference on Cyber Security, Cyber Peacefare and
reference address. Thus, we have to analyze the reference Digital Forensic (CyberSec2013), 2013, pp. 189–197.
address (0x114e) from PDB file to get the full information [5] Z. A. Al-Sharif, M. I. Al-Saleh, Y. Jararweh, L. Alawneh,
of the variable. The parsing results shows that the reference and A. S. Shatnawi, “The effects of platforms and
address(0x114e) indicates that this variable is identified from languages on the memory footprint of the executable
struct data structure (LF_STTRUCTURE). To reach the struct program: A memory forensic approach,” Journal of
members, we have to analyze the reference address (0x114d) Universal Computer Science, vol. 25, no. 9, pp. 1174–
that indicates the field list type term. By analyzing the field list 1198, sep 2019.
type reference address (0x114d), we have full information of [6] Z. Al-Sharif, D. Odeh, and M. Al-Saleh, “Towards carving
struct members that the variable has. It’s important to note that pdf files in the main memory,” in The International
the parsing information of struct members has the offset of Technology Management Conference (ITMC2015), 2015,
each defined member. Furthermore, The target address of each pp. 24–31.
struct member is obtained by combining the struct member [7] H. Said, N. Al Mutawa, I. Al Awadhi, and M. Guimaraes,
offset, with the variable offset, with the VA of .data section “Forensic analysis of private browsing artifacts,” in 2011
and with the base address of the running application. International Conference on Innovations in Information
Technology. IEEE, 2011, pp. 197–202.
VI. D ISCUSSION AND F UTURE W ORK [8] F. Olajide, N. Savage et al., “Application level evidence
In this paper, we examined the usage of application’s from volatile memory,” Journal of Computing in Systems
debugging information in memory forensic approach. The most and Engineering, vol. 10, pp. 171–175, 2009.
common limitation to any memory forensic research is the [9] Z. A. Al-Sharif, M. I. Al-Saleh, and L. Alawneh, “Towards
volatile feature of memory; data vanishes when a device is the memory forensics of oop execution behavior,” in 2017
turned off. However, this does not stop investigators from 8th International Conference on Information, Intelligence,
leveraging the invaluable information that resides in memory Systems & Applications (IISA). IEEE, 2017, pp. 1–6.
in case a device is found to be running at the acquisition time. [10] Z. A. Al-Sharif, M. I. Al-Saleh, L. M. Alawneh, Y. I.
In our approach, the debugging information of applications Jararweh, and B. Gupta, “Live forensics of software
must be provided. Some application developers might not attacks on cyber–physical systems,” Future Generation
cooperate to provide such information. In these cases, current Computer Systems, 2018.
forensic techniques should be utilized. Furthermore, as a run- [11] “Digital forensic research workshop. dfrws memory analy-
ning example, we investigated c++ applications. Experimenting sis challenge,2005,” http://old.dfrws.org/2005/index.shtml,
with the more complex data structures that might be developed accessed: 2019-09-23.
by any application is our future work. In addition, testing our [12] B. Dolan-Gavitt, “The vad tree: A process-eye view of
investigation model with a real world application is a future physical memory,” digital investigation, vol. 4, pp. 62–64,
direction. 2007.