Open dt-zero opened 5 years ago
@joex2021 You are welcome. What I wrote is a command you can execute under a linux terminal environment to edit the BIOS rom, no special tool needed. (just paste into a terminal) If you are not on linux, you can use WSL or something similar. Alternatively, you can use a hex editor to perform the same thing.
@dt-zero Thanks again for the help. Unfortunately I couldn't test your method, I had to return that motherboard due to VRM heating problem, I ordred an Asus Z590-P instead. I will try the suggested solution when it arrives and I will report the result here.
@MattBJ I fixed it for your version, attached below.
Run it with
python me_cleaner.py -s orig.bin -O cleaned.bin
just dropping in to say this modified me_cleaner.py script also worked like a charm on my z490 board (once I built flashrom from the latest dev build to be able to recognize the chip)
thankyou @dt-zero !
Pull #282 works flawless on a Clevo N350TW (Schenker Dock 15 L2018). BIOS Menu shows IME FW version 0.0.0.0. No more HECI present on the PCI bus. No problems so far with Linux. Even suspend and the docking station works fine.
@dt-zero the modified me_cleaner.py doesn't work for me. my pc just bootloops with the py file in this PR, and that py file boots but doesn't disable ME:
ME Status : 0x90000255
ME Status 2 : 0x6f10506
ME: FW Partition Table : OK
ME: Bringup Loader Failure : NO
ME: Firmware Init Complete : YES
ME: Manufacturing Mode : YES
ME: Boot Options Present : NO
ME: Update In Progress : NO
ME: Current Working State : Normal
ME: Current Operation State : M0 with UMA
ME: Current Operation Mode : Normal
ME: Error Code : No Error
ME: Progress Phase : ROM Phase
ME: Power Management Event : Pseudo-global reset
ME: Progress Phase State : (null)
ME: Extend Register not valid
Error mapping physical memory 0x0000000269578240 [0x2000] ERRNO=1 Operation not permitted
Could not map ME setup memory.
Do you have kernel cmdline argument 'iomem=relaxed' set ?
NOTE: iomem=relaxed
is set so I dunno what intelmetool's problem is
❯ python3 me_cleaner.py -s orig.bin -O cleaned.bin
Full image detected
Found FPT header at 0x211000
Found 8 partition(s)
Found FTPR header: FTPR partition spans from 0x20000 to 0x20000
Found FTPR manifest at 0x20250
ME/TXE firmware version 12.0.70.1652 (generation 4)
Public key match: Intel ME, firmware versions 12.x.x.x
The HAP bit is NOT SET
Setting the HAP bit in PCHSTRP28 to disable Intel ME...
Checking the FTPR RSA signature... VALID
Done! Good luck!
❯ python3 me_cleaner.py -c cleaned.bin
Full image detected
Found FPT header at 0x211000
Found 8 partition(s)
Found FTPR header: FTPR partition spans from 0x20000 to 0x20000
Found FTPR manifest at 0x20250
ME/TXE firmware version 12.0.70.1652 (generation 4)
Public key match: Intel ME, firmware versions 12.x.x.x
The HAP bit is SET
Checking the FTPR RSA signature... VALID
UEFI also correctly gives the ME firmware version.
Here's my firmware bins (orig.bin and cleaned.bin) me cleaner stuff.zip
Board: MSI-Z390-A Pro CPU: Intel Core i7 8086k
@Absolucy quick diff check shows that you modified the wrong bit. I'm guessing that you used the script for LP boards, his original script should have worked.
I set it for you using dd anyway (didnt bother with anything else) hapset.zip
also has anyone tried setting it on an alder lake board? im considering buying a new pc soon and id like to know if it still works. i'm assuming it does (in one way or another) given its original intended purpose, although with every new platform it could always change. if anyone would be willing to test or upload a dump of their rom id be interested to take a look
edit:
I looked at a few roms for z690 (alder lake) boards and the exact hap offset seems to be 0x1DE
printf "\x$(($(xxd -b -l 1 -seek 478 -p poop.bin) ^ 1))" | dd of=poop.bin bs=1 seek=478 count=1 conv=notrunc
that should work for any z690 board if anyone wants to give it a try (run it in the same folder as the rom you want to edit, and obviously change poop.bin to whatever the rom is called, if it doesnt work for you then post ur dumps and ill take a look)
@ritalinaddict Original script just bootloops...
@Absolucy well try using the rom I posted, it should work fine the HAP bit should be properly set now
@ritalinaddict thanks for your Alder Lake suggestion. I tried it on an MSI PRO Z690-A DDR4 motherboard, using version 120 but unfortunately it boot loops.
I might be doing something stupid, so I'll list the steps I took:
Greetings to all chat participants concerned about cleaning Intel ME. I recently did THIS. On the motherboard Intel_Corei9-10900K@_ASUS_ROG_STRIX_Z490-G – everything is successful, except for fainting at the end of the process and the "stub" from the device remaining in the Manager.
Details and Details… I used the firmware version 14.1.53.1649V1.1 offered by the native support site, processed by the utility me_cleaner.py , presented above. I flashed Intel ME with the utility MEUpdateTool_14.1.53.1649V1.1_T – before I flashed the BIOS – which is probably wrong. At the end of the process, I received a completely non–working computer - even the fans did not turn on. I came out of this state by pressing the computer power button five times, provided there is no battery, because the BIOS was not reset in any other way. After that, the BIOS started, the test signals of the motherboard passed, after which I went into the BIOS and found, against the background of everything working, the absence of a hard drive connection. It was necessary to update the BIOS with the firmware supplied with the Intel ME firmware.
It has been working fine for 2 weeks.
There is an assumption that it is necessary to reset the newly stitched BIOS to the standard settings before updating Intel ME, while it may not faint so deeply when flashing Intel ME.
RUS
Приветствую всех участников чата, озабоченных очисткой Intel ME. Недавно я сделал ЭТО. На материнской плате Intel_Corei9-10900K@_ASUS_ROG_STRIX_Z490-G – всё удачно, за исключением обморока в конце процесса и остающегося в Диспетчере «огрызка» от устройства.
Детали и подробности… Использовал прошивку версии 14.1.53.1649V1.1 предлагаемую родным сайтом поддержки, обработанную утилитой me_cleaner.py, представленной выше. Прошивал Intel ME утилитой MEUpdateTool_14.1.53.1649V1.1_T – до того, как прошил БИОС – что, наверное, неправильно. По окончании процесса получил полностью не работающий комп – даже вентиляторы не включались. Вышел из этого состояния путём пятикратного нажатия кнопки включения компьютера, при условии отсутствия батарейки, ибо по-другому БИОС не сбрасывался. После этого БИОС запустился, прошли тестовые сигналы материнки, после чего зашёл в БИОС и обнаружил, на фоне всего работающего отсутствие подключения винчестера. Нужно было обновить и БИОС прошивкой, поставляемой вместе с прошивкой Intel ME.
Уже 2 недели работает нормально.
Существует предположение, что нужно перед обновлением Intel ME сбросить только что прошитый БИОС к стандартным настройкам, при этом может не упадёт в обморок настолько глубоко при прошивке Intel ME.
Кто желает, может попробовать и отписаться.
Many thanks to @dt-zero for the modified version, I tried it on my 8th gen NUC and it worked great. I wrote a guide explaining how to do this: How to Disable IME on Intel NUCs.
If you don't mind, I also forked your modified version in my guide.
Szia @dt-zero, I tried to use me_cleaner.py and flashed the cleaned ROM in my MSI Godlike Z390 motherboard to use with i9-9900K but BIOS still shows ME version. Guess, I couldn't do it properly. I would be grateful if you could look into my BIOS dump and provide a ME disabled version. Many thanks in advance. orig_z390.zip
I tried deactivating the hap bit on the asus ws z390 pro but no luck. I get an infinite boot loop. I also tried differently recreating the bios using others tools with hap bit on, same result.
I'm also getting bootloop continuously even with correct HAP bit set manually using printf '\x11' | dd of=orig_z390.bin bs=1 seek=386 count=1 conv=notrunc
.
The way I get my board back working is to switch to another BIOS using the hardware BIOS switch and flash the OEM version to the other chip.
Any help from someone would be awesome.
I tried deactivating the hap bit on the asus ws z390 pro but no luck. I get an infinite boot loop. I also tried differently recreating the bios using others tools with hap bit on, same result.
I'm also getting bootloop continuously even with correct HAP bit set manually using
printf '\x11' | dd of=orig_z390.bin bs=1 seek=386 count=1 conv=notrunc
.The way I get my board back working is to switch to another BIOS using the hardware BIOS switch and flash the OEM version to the other chip.
Any help from someone would be awesome.
Unfortunately we won't get any more help, this project is simply dead. but there is still hope ;-). There is another method that worked for me on my Z590 and 11 gen CPU. Just read the research made by Positive Technologies and you will be able to disable it permanently and it will stay disabled even after performing BIOS updates . Good luck.
Greetings to all free IT specialists, participants of this branch.
I respect people trying to get rid of corporate bookmarks. I myself 3 months ago with the help of your branch got rid of Intel.me , I wrote about it above and I want to share my impressions of it. What has clearly changed is that the reaction to cookies has become somewhat different. Before removing the ME for the computer, there were no problems determining my location for websites and stores, now 50% does not guess. The OS behavior regarding power supply has changed somewhat. Every time you enter sleep mode, an error with the code 137 is recorded in the system log "The system firmware changed the registers of the processor memory type range (MTRR) when switching to sleep mode (S4). This may slow down the resumption of work." – this error is not described very well, so I am not 100% sure that it is due to the removal of ME. There is a wish for the ME removal utility – it should be in the format of an independent exe file, since it is inconvenient that you have to install a Python interpreter, then all the additions for compilation and finally compile without confidence that everything is correct, especially since you are doing this for the first time in your life. 2 the utility itself should offer a choice, for example, whether to remove the trusted computing platform, or, for example, power controls. Because with a broken trusted computing platform, it is impossible to install Win 11. If we can edit the firmware file .bin without recompilation, then maybe we could do it more cleanly, so that after the firmware we didn't have to forcibly revive the computer. I am not an experienced person in the field of firmware editing, but I would be glad to receive from you the tools that allow you to study the firmware .bin yourself. And maybe modify it. Here comes the thought that maybe we should create our own starter firmware called "Sancho Pancha" – squire, which would work the same as ME or even better – but without unpleasant effects and make it open source. Such firmware could serve the computer during downtime, or could show the desired information in the top line of the screen even if the CPU is turned off.
Gaivoronsky B.Yu.
RUS… Приветствую всех свободных айтишников, участников этой ветки.
Я уважаю людей старающихся избавится от закладок корпораций. Я сам 3 месяца назад с помощью вашей ветки избавился от Intel.me, я писал об этом выше и хочу поделиться впечатлениями от этого. Явно изменилось то, что реакция на куки стала несколько иной. До удаления МЕ для компьютера не было проблем определить моё местоположение для сайтов и магазинов, сейчас в 50% не угадывает. Несколько изменилось поведение ОС в отношении электропитания. При каждом выходе в спящий режим в системный журнал записывается ошибка с кодом 137 «Встроенное ПО системы изменило регистры диапазона типа памяти процессора (MTRR) при переходе в спящий режим (S4). Это может замедлить возобновление работы.» – эта ошибка описана не очень хорошо, поэтому не уверен на 100% что она именно из-за удаления МЕ. Есть пожелание к утилите удаления МЕ – она должна находиться в формате независимого exe файла, так как неудобно то, что приходится ставить интерпретатор Питон, потом все дополнения для компиляции и наконец компилировать без уверенности что всё правильно, тем более что делаешь это первый раз в жизни. 2 сама по себе утилита должна предлагать выбор, например, нужно ли удалить платформу доверенных вычислений, или например, элементы управления питанием. Потому что с неработающей платформой доверенных вычислений невозможно установить Win 11. Если мы можем редактировать файл прошивки .bin без рекомпиляции, то может быть, могли бы сделать это более чисто, так что после прошивки не приходилось принудительно оживлять компьютер. Я человек не опытный в области редактирования прошивок, но был бы рад получить от вас инструменты, позволяющие самому, изучит прошивку .bin. И может быть модифицировать её. Тут приходит мысль о том, что не создать ли собственную стартовую прошивку под названием «Санчо Панча» – оруженосец, которая работала бы так же, как МЕ или ещё лучше – но без неприятных эффектов и сделать её с открытым кодом. Такая прошивка могла бы обслуживать компьютер во время простоя, либо могла бы показывать желаемую информацию в верхней строке экрана если даже центральный процессор выключен.
Гайворонский Б.Ю.
Приветствую всех свободных айтишников, участников этой работы. Я уважаю людей старающихся избавится от закладок корпораций. Я сам 3 месяца назад с помощью этой ветки https://github.com/corna/me_cleaner/pull/282 избавился от Intel.me, я писал об этом там выше и хочу поделиться впечатлениями от этого. Явно изменилось то, что реакция на куки стала несколько иной. До удаления МЕ для компьютера не было проблем определить моё местоположение для сайтов и магазинов, сейчас в 50% не угадывает. Немного изменилось поведение ОС в отношении электропитания. При каждом выходе в спящий режим в системный журнал записывается ошибка с кодом 137 «Встроенное ПО системы изменило регистры диапазона типа памяти процессора (MTRR) при переходе в спящий режим (S4). Это может замедлить возобновление работы.» – эта ошибка описана не очень хорошо, поэтому не уверен на 100% что она именно из-за удаления МЕ. Есть пожелание к утилите удаления МЕ – она должна находиться в формате независимого exe файла, так как неудобно то, что приходится ставить интерпретатор Питон, потом все дополнения для компиляции и наконец компилировать без уверенности что всё правильно, тем более что делаешь это первый раз в жизни. 2 сама по себе утилита должна предлагать выбор, например, нужно ли удалить платформу доверенных вычислений, или например, элементы управления питанием. Потому что с неработающей платформой доверенных вычислений невозможно установить Win 11. Если мы можем редактировать файл прошивки .bin без рекомпиляции, то может быть, могли бы сделать это более чисто, так что после прошивки не приходилось принудительно оживлять компьютер. Я человек не опытный в области редактирования прошивок, но был бы рад получить от вас инструменты, позволяющие самому, изучит прошивку .bin. И может быть, модифицировать её. Тут приходит мысль о том, что не создать ли собственную стартовую прошивку под названием «Санчо Панча» – оруженосец, которая работала бы так же, как МЕ или ещё лучше – но без неприятных эффектов и сделать её с открытым кодом. Такая прошивка могла бы обслуживать компьютер во время простоя, либо могла бы показывать желаемую информацию в верхней строке экрана если даже центральный процессор выключен. Исходя из вышеописанных похождений я призываю вашу компанию обдумать поднятый вопрос и может быть создать такую прошивку. Я рассуждаю так – у меня сейчас сильно усечённая МЕ от Intel и компьютер за исключением мелочей работает нормально. Если бы можно было к кончу работающей части приставить соответствующее продолжение, можно было бы добиться совершенно другой прошивки, которая могла бы следить за температурой всех критических устройств. Так же можно внести сочетание клавиш, которое открывало бы терминал управляющий прошивкой, поддержкой ограниченного количества команд Unix. Так же в тексте выше я высказывал желание посмотреть на софт позволяющий изучать прошивки. Если сочтёте возможным, сообщите мне названии и версии работающего софта. Гайворонский Б.Ю. gaivor@wmkeeper.com https://www1.fips.ru/fips_servl/fips_servlet?DB=RUPAT&rn=8018&DocNumber=2584454&TypeFile=html
Based on the work of @davidmartinzeus
IMPORTANT: If you are new here, please read my comment at https://github.com/corna/me_cleaner/pull/282#issuecomment-992988892