Forensics

M.E.A.T. – Pioneering Mobile Forensics With The Mobile Evidence Acquisition Toolkit

The Mobile Evidence Acquisition Toolkit designed by BlackStone Discovery. Developed to enhance digital forensics, this toolkit facilitates comprehensive data acquisition from iOS devices, with planned expansion to Android.

M.E.A.T. equips forensic experts with the tools needed to execute logical and filesystem acquisitions seamlessly, paving the way for advanced mobile forensics investigations.

Meet M.E.A.T!

From Jack Farley – BlackStone Discovery

This toolkit aims to help forensicators perform different kinds of acquisitions on iOS devices (and Android in the future).

Requirements To Run From Source

  • Windows or Linux
  • Python 3.7.4 or 3.7.2
  • Pip packages seen in requirements.txt

Types Of Acquisitions Supported

iOS Devices

Logical

Using the logical acquisition flag on MEAT will instruct the tool to extract files and folders accessible through AFC on jailed devices.

The specific folder that allows access is: \private\var\mobile\Media, which includes fodlers such as:

  • AirFair
  • Books
  • DCIM
  • Downloads
  • general_storage
  • iTunes_Control
  • MediaAnalysis
  • PhotoData
  • Photos
  • PublicStaging
  • Purchases
  • Recordings

Filesystem

iOS Device Prerequisites

  • Jailbroken iOS Device
  • AFC2 Installed via Cydia

Using the filesystem acquisition flag on MEAT will instruct the tool to start the AFC2 service and copy all files and fodlers back to the host machine.

This method requires the device to be jailbroken with the following package installed:

  • Apple File Conduit 2

This method can also be changed by the user using the -filesystemPath flag to instruct MEAT to only extract up a specified folder, useful if you’re doing app analysis and only want the app data.

MEAT Help

usage: MEAT.py [-h] [-iOS] [-filesystem] [-filesystemPath FILESYSTEMPATH]
               [-logical] [-md5] [-sha1] -o OUTPUTDIR [-v]

MEAT - Mobile Evidence Acquisition Toolkit

optional arguments:
  -h, --help            show this help message and exit
  -iOS                  Perform Acquisition on iOS Device
  -filesystem           Perform Filesystem Acquisition - 
  -filesystemPath FILESYSTEMPATH
                        Path on target device to acquire. Only use with --filesystem argument
                        Default will be "/"
  -logical              Perform Logical Acquisition
                        iOS - Uses AFC to gain access to jailed content
  -md5                  Hash pulled files with the MD5 Algorithm. Outputs to Hash_Table.csv
  -sha1                 Hash pulled files with the SHA-1 Algorithm. Outputs to Hash_Table.csv
  -o OUTPUTDIR          Directory to store results
  -v                    increase output verbosity

Devices Tested On

iPhone X iOS 13.3 iPhone XS iOS 12.4

Known Issues

  • Folder timestamp preservation
  • Can’t preserve birth time of files on Linux only
  • iOS 9 bugs – Don’t have device so can’t test directly

Things To Do In The Future – Ranked

  • Add post processors
  • Add ability to containerize – ZIP, TAR, AFF4
    • I tried to containerize while processing, but zipfile and tar don’t allow me to keep appending blocks to individual files
  • Add keyword searching while processing or after
  • Add hash matching while processing or after
  • Add Android support (Some code can already do this, but I don’t have a device to test on)
  • Add ability for the user to specify block device for android physical acquisitions
  • Add support for iTunes backups
  • Add MacOS support (message me if you want this!)
Varshini

Varshini is a Cyber Security expert in Threat Analysis, Vulnerability Assessment, and Research. Passionate about staying ahead of emerging Threats and Technologies.

Recent Posts

Promptmap

Prompt injection is a type of security vulnerability that can be exploited to control the…

2 days ago

Firefly – Black Box Fuzzer For Web Applications

Firefly is an advanced black-box fuzzer and not just a standard asset discovery tool. Firefly…

2 days ago

Winit : Cross-Platform Window Creation And Management In Rust

Winit is a robust, cross-platform library designed for creating and managing windows in Rust applications.…

2 days ago

Browser Autofill Phishing – The Hidden Dangers And Security Risks

In today’s digital age, convenience often comes at the cost of security. One such overlooked…

2 days ago

Terminal GPT (tgpt) – Your Direct CLI Gateway To ChatGPT 3.5

Terminal GPT (tgpt) offers a seamless way to bring the power of ChatGPT 3.5 directly…

2 days ago

garak, LLM Vulnerability Scanner : The Comprehensive Tool For Assessing Language Model Security

garak checks if an LLM can be made to fail in a way we don't…

5 days ago