forum.hk-service.ru https://www.forum.hk-service.ru/ |
|
Lenovo G505 BIOS Whitelist Removal https://www.forum.hk-service.ru/viewtopic.php?f=7&t=1198 |
Страница 1 из 1 |
Автор: | Overclocker TOXA [ 02 май 2016, 11:26 ] |
Заголовок сообщения: | Lenovo G505 BIOS Whitelist Removal |
Приветствую! Имеется ноут Lenovo G505 model 20240 BIOS v3.0 Вопрос - как(чем) убрать (отключить) whitelist |
Автор: | Юрий [ 02 май 2016, 12:08 ] |
Заголовок сообщения: | Re: Lenovo G505 BIOS Whitelist Removal |
Я делал пару раз руководствуясь этой статьей https://geektimes.ru/post/256732/ Написать этот топик меня подтолкнул свой тернистый опыт установки wifi платы 802.11n, которая отсутствовала в whitelist BIOS в моём ноутбуке. Мотивацию и уверенность придал пост http://habrahabr.ru/blogs/DIY/108820 Устанавливаем не поддерживаемую Wifi карту в HP Pavilion dv6-1319er Когда первый раз поставил другую wifi плату и увидел это сообщение: Код: 104-Unsupported wireless network device detected. первая мысль была о том что это какая-то аппаратная не совместимость устройств и что вопрос замены платы полностью безнадёжен. Но поиск в гугле дал понять что не всё ещё потеряно. Вариантов решения интернеты предлагали не много: 1. Прошить BIOS с правильным патчем, который отключает полностью whitelist или добавляет\заменяет в whitelist VEN, DEV, SUBSYS на необходимую плату. 2. http://www.winmatrix.com/forums/index.p ... fi-working Перепрошить саму wifi плату чтоб заменить в ней VEN, DEV, SUBSYS на те которые есть в whitelist, по которым и проверяется возможность установки той или иной платы. Процесс добывания wifi-n платы был грязен и криминален, потому описывать его я не буду, спасибо Dr.Marteens за содействие. Родная плата в ноутбуке стояла Intel WM3945ABG. На замену ей была добыта Intel Wifi Link 5100 AGN. Действовать начал по шагам описанным в посте выше. Когда я только начал заниматься этим вопросом 3 месяца назад, поиски в интернет дали понять что перепрошить wifi-карту от intel не представляется возможным, а готового пропатченого БИОС-а как-то совсем не находилось… возможно плохо искал. Распаковка биоса с помощью Phoenix Tool не удалась. Биос был собран на какой-то более старой основе. Программированием биосов я никогда не занимался, да и с ассемблером я на ВЫ. Поиск утилиты для распаковки биоса Compaq не дал никаких результатов, и было решено ковырять биос по живому, с помощью WinHEX. Прошивка представляет из себя флешер HPQFlash.exe и CAB-архив с файлами прошивки. У родной wifi платы ИД оборудования был такой PCI\VEN_8086&DEV_4222&SUBSYS_135C103C значения в прошивке хранятся в обратном порядке: VEN_8086 -> 8680 DEV_4222 -> 2242 SUBSYS_135C103C -> 3C105C13 Поиск по двум первым значениям дал очень много результатов, а по 3C105C13 ни одного, были подозрения и мысли что прошивка ROM.bin ещё как-то запакована или зашифрована. Очередной мозговой штурм, гугление, и в течении нескольких часов была составлена карта адресов с искомыми значениями и место нахождения whitelist в прошивке локализовано. Дабы не использовать много места, программисты биоса решили сэкономить пару байт и полностью записали SUBSYS только для 3C105B13, а остальные значения судя по всему подставляли алгоритмом. где зеленым выделены Intel платы, синим Broadcom. Отдельными значениями идут модификации плат 5C, 5D, 5E, 5F. И аналогично записан Broadcom. открываем INF-файл драйверов Intel и находим те же VEN, DEV, SUBSYS Код: ; HP_3945_ABG И кажется что уже всё совсем просто, заменяем одни значения на другие, всё сохраняем и перепрошиваем BIOS. Однако модификаций Intel 3945 всего 5 разных, а модификаций Intel 5100, судя по INF-файлу драйверов аж 8. Хотя по идее достаточно прописать ИД только одной платы. Естественно чтоб узнать VEN, DEV, SUBSYS, её надо вставить в другой ноутбук, в котором нет whitelist. Эту затею я решил отложить, и проверить один важный момент: а проверяет ли флешер CRC прошивки? Ведь утилита Phoenix Tool сама всё собирает обратно и пересчитывает\перезаписывает CRC, а в моём случае это пришлось бы делать руками. Изменив пару байт в ROM.bin, появился ещё один вопрос: а как всё это собрать обратно в CAB-архив? Ведь стандартный набор архиваторов работает только со своими форматами и плюс 3 — 4 сторонних, а CAB-формат был разработан в Microsoft, и никем особо не поддерживается для запаковки. Через некоторое время была найдена программа 2007 года Cab Maker 2.0.0.120, с помощью которой я собрал первый изменённый БИОС архив. Где хранится контрольная сумма БИОС-а, я не знал, никакой информации о структуре прошивки найти не удалось. Подозрения падали на файл ROM.sig, однако проверить это было нечем. Попытки найти хешь файла хешированием ROM.bin разными алгоритмами (CRC32, MD5, SHA1 — SHA512 и ещё несколькими), как в нём самом так и ROM.sig ничем не увенчались, что не удивительно. Идея как действовать дальше родилась мгновенно. Если флешер проверят CRC, значит он его где-то берёт или высчитывает, и сравнивает с другим значением. Значит надо дизассамблировать HPQFlash.exe и в режиме Debug по шагам найти алгоритм или то место где проходит эта проверка контрольной суммы. Ещё была идея в флешере отключить проверку CRC, однако это было чревато убитым железом вообще, в случае если БИОС проверяет свой CRC при запуске ноутбука. Был и http://forum.biosflash.com/viewtopic.php?f=1&t=1318 как поступили немцы на одном сайте. Они также не нашли где хранится контрольная сумма, но где-то узнали или подобрали алгоритм её подсчёта, и решили в оставшиеся байты где хранится информация о Broadcom-овской плате подсунуть правильно подсчитанные значения, чтоб CRC файла Rom.bin в итоге не изменился. И судя по всему у них это получилось. Как я уже писал выше, с ASM у меня всё очень плохо и максимум до чего я смог докопаться — это в дизассаемблере IDA Pro Advanced, в режиме отладки найти место где проходит цикл проверки контрольной суммы, но значений CRC найти не смог. Тут я обратился за помощью к другу, который долгое время писал на ASM, чтоб найти таки контрольную сумму. Однако до этого дело не дошло. Очередной штурм гугла дал ссылку на http://forums.mydigitallife.info/printt ... p;page=129 где пользователи просят пропатчить биос их ноутов. Дальнейшие изыскания я решил прекратить, ибо биться как муха в стекло, когда рядом открытая форточка посчитал не целесообразным. http://forums.mydigitallife.info/thread ... post111460 (Cписок уже пропатченных БИОСов для HP с отключенным whitelist) |
Страница 1 из 1 | Часовой пояс: UTC+07:00 |
Powered by phpBB® Forum Software © phpBB Limited https://www.phpbb.com/ |