Adam Outler · Aug 11, 2012 at 07:30 am

LiME Forensics Kernel Module for Raw Memory Snapshots

Raw access to memory is useful while performing data forensics or while hacking devices.  Sometimes you need a snapshot of memory to be able to analyze what is going on with locked bootloaders, get a snapshot of a memory location to track down a bug, or just to figure out the proper memory location of your Angry Birds score. This is where Linux Memory Extractor, a.k.a. LiME Forensics, comes in. LiME is a loadable kernel module that allows you to access to the full range of device memory. As soon as the kernel module is loaded into memory, it basically takes a snapshot, allowing for very efficient debugging.

I asked Joe Sylve, the author of LiME Forensics to explain the benefeits of LiME over traditional tools like viewmem:

To answer your questions, the tools were designed with different uses in purpose.  LiME is designed to acquire a full dump of the physical memory layout of RAM for forensic analysis or security research.  It does it all in kernel space and can dump an image either to the local file system or over TCP.  It’s designed to give you as close of a copy of physical memory as possible, while minimizing it’s interaction with the system.
It appears viewmem is a userland program which reads a range of virtual memory addresses from a memory device, such as /dev/mem or /dev/kmem and prints the contents to stdout.  I’m not sure that it does more than simply using dd on one those devices would.
This is less acceptable in forensics for several reasons.  First of all, /dev/mem and /dev/kmem are being phased out and more and more devices aren’t shipping with those devices.  Secondly, /dev/mem and /dev/kmem limit you to reading from the first 896MB of RAM.  Also, the tool is causing several context switches between userland and kernelland for every block of memory read and is overwriting RAM with it’s buffers.
I’d say each tool has their use.  If you just need to know the contents of an address that’s within the first 896MB of RAM and your device has /dev/mem and /dev/kmem and you don’t care about capturing a forensically sound image, then viewmem (or dd) would be useful.  However, LiME was not designed specifically for that use case.

The most important thing, for you memory hackers out there, is that viewmem relies on the /dev/mem and /dev/kmem devices.  Since the /dev/mem and /dev/kmem devices allow direct access to device memory, they are a vulnerability.  These Linux devices are being phased out, as they have been the targets of multiple exploits as of late.  LiME not only replaces the viewmem utility, it does it better.

Manufacturers take note: By locking down features that developers want, you promote the development of better tools.

Source: LiME Forensics & Inteview with Author Joe Sylve

[Image Credit: LiME Presentation by Joe Sylve]
_________
Want something on the XDA Portal? Send us a tip!
TAGS:

Adam Outler

AdamOutler is an editor on XDA-Developers, the largest community for Android users. Electronics Tech/ Developer View AdamOutler's posts and articles here.
Chris Gilliam · May 24, 2015 at 03:59 pm · 2 comments

XDA Recap: This Week In Android (May 17 – 23)

Another week, another recap. The Sunday tradition marches on this week with a fresh no-nonsense look at big-picture news. Here in the digital XDA writers’ room, we spend our days pouring over an average of 2,500 news items and forum threads every 24 hours. Only the most timely and interesting bits survive the editing process, but the portal’s front page still sees weekly counts in excess of 100 posts. This is a glut of content to absorb, especially if following...

XDA NEWS
Mario Tomás Serrafero · May 24, 2015 at 11:00 am · 1 comment

Sunday Debate: Are Smaller Bezels Better or Worth It?

Bezels have been getting smaller and smaller as the years go by, and while devices from 2011 needed to trim some fat, there is no absolute rule that says that smaller bezels, after a happy medium, are beneficial to a phone. Part of this is that, with today’s current smartphone paradigms, an absolute lack of bezels does not produce an inherently better user experience.   With each technological advancement come limitations and compromises of some sort, and bezels are not...

XDA NEWS
Jimmy McGee · May 24, 2015 at 06:00 am · 3 comments

LG G4 First Impressions and Unboxing – XDA TV

The latest in LG’s signature line of “G phones” has been released. The LG G4 is the successor to the popular LG G3. Coming with many different design styles, from two types of leather to ceramic white, the LG G4 has the looks, but does it have the power? In this episode of XDA TV, Producer TK gets hands on with a new LG G4. TK opens the box for a standard unboxing. Then, TK shows off the phone and...

XDA NEWS
Share This