corna/me_cleaner

Tool for partial deblobbing of Intel ME/TXE firmware images

View on GitHub ↗Jump to charts ↓Open shareable report →

corna/me_cleaner has 5k+ stars and 300+ forks on GitHub, is written in Python, and was last pushed on Oct 2, 2026. Data as of . Signed-in members get hourly updates — create a free account.

Summary Information

Updated 2 hours ago
Added to GitGenius on October 2nd, 2026
Created on November 14th, 2016
Open Issues & Pull Requests: 251 (+0)
GitHub issues: Enabled
Number of forks: 306
Total Stargazers: 5,055 (+0)
Total Subscribers: 180 (+0)

Repository Insights (GitGenius)

Median issue/PR response: 2.6 days
Mean response time: 87.3 days
90th percentile: 252.8 days
Tracked items: 32

Charts & Analytics

Fetching additional details & charts...

Issue Activity (beta)

Open issues: 39
New in 7 days: 0
Closed in 7 days: 0
Avg open age: 1,007 days
Stale 30+ days: 38
Stale 90+ days: 34

Recent activity

Opened in 7 days: 0
Closed in 7 days: 0
Comments in 7 days: 0
Events in 7 days: 0

Top labels

No label distribution available yet.

Most active issues this week

Sign in to see which issues are moving.
Sign in

Detailed Description

me_cleaner is a Python script for partial deblobbing of Intel ME firmware images.

Intel ME is a mandatory co-processor in post-2006 Intel systems that runs with full hardware access but cannot be disabled or reimplemented due to tight integration in the boot process and cryptographic signing. The tool addresses privacy and free firmware concerns by modifying ME firmware to restrict its operation to the boot phase only, rather than running continuously during normal system operation. For pre-Nehalem systems, me_cleaner removes the ME firmware entirely by setting bits in the flash descriptor. For newer generations, it strips non-essential modules while preserving only those required for correct boot, reducing firmware size from several megabytes to roughly 90 kilobytes for generation 2 systems or 300 kilobytes for generation 3 and later.

Adoption depends on your Intel platform generation and tolerance for firmware modification risk. The tool works across most Intel platforms but reliability varies by board due to different firmware implementations. Users should be aware that obtaining and flashing the modified firmware typically requires external SPI programmers, as the ME region is usually write-protected from the operating system. The approach differs fundamentally by generation: complete removal for pre-Nehalem ME, minimal module retention for Nehalem through Broadwell, and a different subsystem structure for Skylake onwards.

The project shows consistent maintenance with regular updates addressing different Intel ME generations and their structural changes. Development activity includes ongoing platform compatibility testing and refinement of the deblobbing process across hardware variants.