EnCase Forensic Imager 7.10 Buffer Overflow

2017-05-12T00:00:00
ID PACKETSTORM:142482
Type packetstorm
Reporter Wolfgang Ettlinger
Modified 2017-05-12T00:00:00

Description

                                        
                                            `A blog post with additional information is available here:  
http://blog.sec-consult.com/2017/05/chainsaw-of-custody-manipulating.html  
  
We have also released a video showing arbitrary code execution:  
https://www.youtube.com/watch?v=1EngNIXSNQw  
  
  
SEC Consult Vulnerability Lab Security Advisory < 20170511-0 >  
=======================================================================  
title: Stack based buffer overflow  
product: Guidance Software EnCase Forensic Imager  
vulnerable version: EnCase Forensic Imager <= 7.10  
fixed version: -  
CVE number: -  
impact: critical  
homepage: https://www.guidancesoftware.com/encase-forensic-imager  
found: 2017-02-17  
by: W. Ettlinger (Office Vienna)  
SEC Consult Vulnerability Lab  
  
An integrated part of SEC Consult  
Bangkok - Berlin - Linz - Luxembourg - Montreal - Moscow  
Kuala Lumpur - Singapore - Vienna (HQ) - Vilnius - Zurich  
  
https://www.sec-consult.com  
  
=======================================================================  
  
Vendor description:  
-------------------  
"When time is short and you need to acquire entire volumes or selected  
individual folders, EnCase Forensic Imager is your tool of choice. Based on  
trusted, industry-standard EnCase Forensic technology, EnCase Forensic Imager:  
* Is free to download and use  
* Requires no installation  
* Is a standalone product that does not require an EnCase Forensic license  
* Enables acquisition of local drives (network drives are not able to be  
acquired with Imager)  
* Provides easy viewing and browsing of potential evidence files, including  
folder structures and file metadata  
* Can be deployed via USB stick and used to perform acquisition of a live  
device"  
  
URL: https://www.guidancesoftware.com/encase-forensic-imager  
  
  
Business recommendation:  
------------------------  
SEC Consult recommends not to use EnCase Forensic Imager for forensic analysis  
until a thorough security review has been performed by security professionals  
and all identified issues have been resolved.  
  
  
Vulnerability overview/description:  
-----------------------------------  
EnCase Forensic Imager fails to check the length of strings copied from the  
definitions of logical volumes in an LVM2 partition. When EnCase Forensic Imager  
is used to analyze a crafted LVM2 partition, part of the stack is overwritten  
with attacker controlled data. This allows an attacker to overwrite a pointer  
to code. After the program execution is transferred to the address specified in  
this pointer, the attacker has control of the consequent program execution.  
  
SEC Consult was able utilize this vulnerability to craft a disk image that, when  
analyzed, executes arbitrary code. Since EnCase Forensic Imager runs with  
administrative privileges, this code runs in an elevated context.  
  
Since EnCase Forensic Imager does not use ASLR or Control Flow Guard, the  
probability that an attacker can successfully exploit this vulnerability (and  
possibly other vulnerabilities) is significantly higher than in similar software  
that utilizes these mechanisms.  
  
  
Proof of concept:  
-----------------  
In order to parse the name of a logical volume from a logical volume definition  
EnCase Forensic Imager processes a line that e.g. looks as follows:  
  
testlv {  
  
In order to extract the volume name from this string, EnCase Forensic Imager  
first searches for the character '{' within the line and then copies all data  
before into another buffer. Since the source buffer is 1024 UTF-16  
characters long and the destination buffer is only 258 UTF-16 characters long,  
a buffer overflow occurs on the stack.  
  
After a function pointer in the stack frame of the calling method has been  
overwritten, this function pointer is being called. Since the method does not  
return between overwriting the stack and calling the function pointer, stack  
cookies do not protect against this vulnerability.  
  
A demonstration of an exploit has been developed and provided to the vendor.  
This exploit creates an LVM2 image that defines a logical volume with a  
manipulated name. When the investigator searches for LVM2 logical volumes on  
this image the aforementioned pointer on the stack is overwritten. Afterwards,  
this pointer is called and execution is transfered to a stack pivot gadget.  
Since only strings converted from Windows-1252 to UTF-16 strings can be used in  
the overwritten stack memory and since characters below '\a' are transformed,  
a series of ROP-chains was required to exploit this vulnerability.  
Ultimately the last ROP chain calls VirtualProtect to allow execution of the  
attacker-supplied code.  
  
The exploit has been developed to work with the 32-bit version of EnCase  
Forensic Imager and will be published at a later date.  
  
  
Vulnerable / tested versions:  
-----------------------------  
At least version 7.10 of EnCase Forensic Imager has been found to be vulnerable.  
This version was the latest at the time the security vulnerabilitiy was  
discovered.  
  
  
Vendor contact timeline:  
------------------------  
2017-02-17: Vulnerability identified, further internal analysis (special thanks  
to R. Freingruber for binary exploitation support)  
2017-03-07: Sending encrypted advisory to vendor through previous contact via  
email  
2017-03-13: Vendor answer: forwarding advisory to engineers, will update us  
2017-03-17: Sending Proof of Concept exploit to vendor  
2017-03-31: Requesting status update (no response)  
2017-04-18: Requesting status update, reminding vendor of upcoming public  
release of the advisory (no response)  
2017-05-01: Informing vendor (through all available contacts) of the set release  
date (2017-05-11)  
2017-05-03: Informing four members of executive team about the upcomming  
release  
2017-05-03: Guidance Software says they will inform us "if and when further  
information is available"  
2017-05-09: Informing CERTs (US-CERT, CERT-Bund, CERT.at) about upcoming release  
2017-05-11: Public release of the security advisory  
  
  
Solution:  
---------  
The vendor did not provide a fixed version of the affected application.  
  
  
Workaround:  
-----------  
None  
  
  
Advisory URL:  
-------------  
https://www.sec-consult.com/en/Vulnerability-Lab/Advisories.htm  
  
  
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~  
  
SEC Consult Vulnerability Lab  
  
SEC Consult  
Bangkok - Berlin - Linz - Luxembourg - Montreal - Moscow  
Kuala Lumpur - Singapore - Vienna (HQ) - Vilnius - Zurich  
  
About SEC Consult Vulnerability Lab  
The SEC Consult Vulnerability Lab is an integrated part of SEC Consult. It  
ensures the continued knowledge gain of SEC Consult in the field of network  
and application security to stay ahead of the attacker. The SEC Consult  
Vulnerability Lab supports high-quality penetration testing and the evaluation  
of new offensive and defensive technologies for our customers. Hence our  
customers obtain the most current information about vulnerabilities and valid  
recommendation about the risk profile of new technologies.  
  
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~  
Interested to work with the experts of SEC Consult?  
Send us your application https://www.sec-consult.com/en/Career.htm  
  
Interested in improving your cyber security with the experts of SEC Consult?  
Contact our local offices https://www.sec-consult.com/en/About/Contact.htm  
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~  
  
Mail: research at sec-consult dot com  
Web: https://www.sec-consult.com  
Blog: http://blog.sec-consult.com  
Twitter: https://twitter.com/sec_consult  
  
EOF W. Ettlinger @2017  
  
`