Skip to content

MuertoGB/MacEfiToolkit

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

SMCFT Logo
Mac EFI Toolkit V1.1.5

A tool for analysis of Mac BIOS/UEFI, with limited editing capabilities.

AboutFeaturesManualDownloadRequirementsAcknowledgementsDonate

About

Mac EFI Toolkit, or 'mefit', is a valuable tool built to aid technicians in repairing Mac BIOS/UEFI. Designed to be compact, mefit provides information gathering capabilities and limited editing functionality.

Key features of the information gathering capabilities include detecting EFI lock in the NVRAM, identifying if the APFS DXE driver is present; even if located in an LZMA compressed volume, validating file sizes and calculating size discrepancy bytes, and viewing the firmware version.

In terms of editing, the application allows users to replace the System Serial Number (SSN) with automatic Hardware Configuration (HWC) matching. It also supports transplanting of exported Fsys stores, as well as the clearing firmware settings, and EFI password lock if a customer has forgotten their password. When editing, Mac EFI Toolkit will automatically check, calculate, and mask the Fsys CRC32 if the checksum is invalid.

🛈 Access to some features requires accepting the editing terms.

MET

I continue to perform extensive testing on hundreds of firmwares to ensure compatibility and functionality. As new edge cases or exceptions are discovered, the application is updated accordingly to address them. This commitment to testing and updates ensures that the application remains reliable and effective for a wide range of Mac firmware configurations.

One Year Since the Last Release: What’s Going On? (18.10.2024)

It’s been just over a year since my last release, so you might be wondering: why only a small bugfix this time?

Some time ago, I began working on version 1.2.0, which was set to introduce new features, including:

  • A new startup window
  • Intel SOCROM support
  • Multi-window support for having multiple firmwares open simultaneously
  • The removal of the editor window, with all editing features integrated into the EFI window (once the 'main window')

However, progress on this update has been slower and more challenging than expected. As a result, I've made the decision to temporarily pull the development branch. In the meantime, I’m releasing some bug fixes to improve the current version, which were slated for version 1.2.0.

Thank you for your understanding.

Features

General:

  • Edit copies of files in memory, preserving original files.
  • Backup loaded firmware to a .zip file.
  • Read Intel Flash Descriptor for UEFI section positions.
  • Knuth–Morris–Pratt algorithm for binary data searching.
  • View the Intel Management Engine version.
  • Export and transplant the Intel Management Engine region.
  • View and validate the binary size.
  • View the firmware CRC32, created and modified date.

Mac Specific:

  • View if the firmware supports APFS.
  • View the firmware version.
  • View Apple ROM section information.
  • View the configuration code, derived from the System Serial Number (ssn).

Fsys Store:

  • View and edit the System Serial Number.
  • Check the System Serial Number with EveryMac.
  • View the Hardware Configuration code (hwc).
  • View the System Order Number (son).
  • Export and replace the Fsys store.
  • Detect and repair invalid Fsys Store CRC32.

NVRAM:

  • Clear NVRAM stores (VSS, SVS, NSS) with section header preservation.
  • Identify NVRAM stores with data, empty stores, and missing stores.
  • Detect and remove EFI lock.

Platform Data Region:

  • Read the system Board-ID (UEFI version from 2013 onwards).

Application:

  • Works with Wine (Better support coming in the future)
  • Automatic handling of uncaught errors.
  • Ability to create a debug log.
  • No installation required.
  • Support for DPI scaling.
  • Drag and drop functionality.
  • Notification when a newer version is available.
SUGGESTED FEATURES Status
Batch process files for information 🟢 Addition planned
Build clean firmware from FD 🟢 Addition planned
Detect email address in the NVRAM 🟠 Researching
Detect MDM status 🔴 Undecided

Download

Version Release Date Latest Channel
1.1.5 10th October, 2024 Yes Stable
1.1.3 11th October, 2023 No Stable

📋 View the full changelog here

Manual

Instructions on how to use the application can be viewed in manual.

Requirements

Application:

  • Microsoft .NET Framework 4.8
  • Windows 7, 8, 8.1, 10 and 11. 32, or 64-bit
  • Internet connectivity required for:-
  • Version Checking (Can be disabled in settings).
  • Fetching config code from the server when not present in the database.

Build requirements:

Acknowledgements

This software uses the following third party libraries, or resources:-

LZMA v22.01 SDK, by Igor Pavlov.
The Knuth-Morris-Pratt algorithm, by Donald Knuth, James H. Morris, and Vaughan Pratt.
MacModelShelf database, by MagerValp.
Application icon by Creatype, menu icons by afif-fudin.

Donate

All donations go back into improving my software and workspace.

PayPal Logo