PDA

View Full Version : MCExtractor - Intel, AMD, VIA & Freescale Microcode Extraction Tool



laptopserviz
13-07-2017, 10:42 PM
MC Extractor is a tool which can extract Intel, AMD, VIA and Freescale processor microcode binaries. It can be used to identify what microcodes your BIOS/SPI holds, verify their integrity, whether they are updated, show details about them, check if they exist at the microcode repository etc.

(https://github.com/platomav/MCExtractor#a1-mc-extractor-features)A1. MC Extractor Features



Supports all current & legacy Microcodes from 1995 and onward
Scans for all Intel, AMD, VIA & Freescale microcodes in one run
Verifies all extracted microcode integrity via checksum
Checks if all Intel, AMD & VIA microcodes are Latest or Outdated
Converts Intel containers (dat,inc,txt,h) to binary images
Searches on demand for all microcodes based on CPUID
Shows microcode header structures and details on demand
Ignores most false positives based on sanity checks
Supports certain special, fixed or modded microcodes
Ability to extract AMD microcodes with or without padding
Ability to quickly add new microcode entries to the database
Ability to use loose patterns for debugging or future proofing
Ability to analyze multiple files by drag & drop or by input path
Ability to ignore extracted duplicates based on name and contents
Reports all microcodes which are not found at the Microcode Repository Database
Features command line parameters to enhance functionality & assist research
Features user friendly messages & proper handling of unexpected code errors
Shows results in nice tables with colored text to signify emphasis
Open Source project licensed under GNU GPL v3, comment assisted code


B. How to use MC Extractor

There are two ways to use MC Extractor, MCE executable & Command Prompt. The MCE executable allows you to drag & drop one or more firmware and view them one by one. To manually call MC Extractor, a Command Prompt can be used with -skip as parameter.

(https://github.com/platomav/MCExtractor#b1-mc-extractor-executable)B1. MC Extractor Executable

To use MC Extractor, select one or multiple files and Drag & Drop them to its executable. You can also input certain optional parameters either by running MCE directly or by first dropping one or more files to it. Keep in mind that, due to operating system limitations, there is a limit on how many files can be dropped at once. If the latter is a problem, you can always use the -mass parameter as explained below.

(https://github.com/platomav/MCExtractor#b2-mc-extractor-parameters)B2. MC Extractor Parameters

There are various parameters which enhance or modify the default behavior of MC Extractor.


-? : Displays help & usage screen
-skip : Skips options intro screen
-mass : Scans all files of a given directory
-info : Displays microcode header(s)
-false : Uses loose patterns (false positives)
-padd : Keeps padding of AMD microcodes
-file : Appends filename to New or Bad microcodes
-add : Adds new input microcode to DB
-cont : Extracts Intel containers (dat,inc,h,txt)
-search : Searches for microcodes based on CPUID
-verbose : Shows all microcode details

The following is Windows specific:


-extr : Lordkag's UEFI Strip mode


https://github.com/platomav/MCExtractor

use: python3 MCE.py bios.bin