Pull to refresh

Microsoft отозвала сертификаты драйверов устройств — последствия для пользователей

Level of difficultyEasy
Reading time5 min
Views39K

11 июля 2023 года для операционной системы Windows 10 (актуальных версий) вышли очередные обновления безопасности, которые должны были закрыть уязвимость связанную с установкой драйверов, подписанных скомпроментированными сертификатами цифровой подписи. После установки этих накопительных обновлений, либо вышедших в последующие месяцы, у некоторых пользователей появились проблемы в работе устройств. Возникала ошибка с кодом 39, а в поле описания было указано, что Windows не может проверить цифровую подпись файла драйвера, так как сертификат был отозван. Эта проблема коснулась владельцев старых компьютеров, а точнее ноутбуков, так как нарушала работу Wi-Fi и/или Bluetooth.

Пример ошибки с кодом 39 для устройства Bluetooth производителя Ralink
Пример ошибки с кодом 39 для устройства Bluetooth производителя Ralink

Предыстория появления проблемы

В июне 2021 года здесь на Хабре появилась новость о том, что Microsoft признала, что подписала вредоносный драйвер. Там была ссылка на англоязычную статью специалиста по информационной безопасности компании G Data - Карстена Хана, где указывалось, что обнаружен руткит в драйвере, подписанный сертификатом с действительной цифровой подписью. Своё внимание к обнаруженной проблеме направили и другие специалисты в данной сфере. Изучение и понимание ситуации заняло пару лет, после чего в июле 2023 года здесь на Хабре появилась новость о том, что Хакеры использовали политику Microsoft для изменения даты подписи вредоносных драйверов до 29 июля 2015 года. Тут уже представлена расширенная информация об обнаруженной ранее проблеме и какое решение приняла Microsoft.

Так стало известно, что ещё с 2018-2019 годов существовали инструменты, разработанные китайскими хакерами, позволяющие внедрить руткит в файл драйвера устройства и подписать его сертификатом с действительной цифровой подписью. Но при этом, даты подписи изменённых драйверов необходимо было выбирать до 29 июля 2015 года. Злоупотребления обнаружили эксперты Sophos, Cisco Talos и Trend Micro. Были выявлены десятки поддельных сертификатов, которыми были подписаны сотни драйверов с внедрённым вредоносным кодом. В данной ситуации компания Microsoft решила отозвать старые сертификаты (до указанной выше даты), путём включения в июльский пакет обновления CRL (certificate revocation list - отзывной список сертификатов).

Последствия для пользователей

Если вы обладатель нового стационарного компьютера или ноутбука, выпущенного после 2015 года, то скорее всего входящие в него устройства работают под управлением таких же "свежих" драйверов. Вам не о чем беспокоится и установка очередных накопительных обновлений Windows 10, отзывающих какие-то там сертификаты для старых устройств, пройдёт для вам незамеченной. Но если ваш ПК более "древний", то после установки очередных накопительных обновлений Windows 10, вышедших в июле 2023 года или позже могут возникнуть проблем в работе устройств, так как ОС не допустить в работу драйвер с отозванной цифровой подписью.

Я владею ноутбуком HP Probook 4540s - модель из "бизнес серии", выпускавшаяся в 2012 году - старенький, тяжеленький, но меня устраивает. На нём тестирую свои сборки ОС семейства Windows. Хоть слово "сборка" иногда воспринимается негативно, но ничего противоестественного с образом WIM не делаю. Так, с помощью штатного инструмента DISM и своих скриптов, отключаю некоторые ненужные функции, удаляю "магазинные приложения", включаю .NET Framework 3.5 и интегрирую обновления. Всё это успешно делалось много лет, с периодичностью раз в год и не вызывало проблем. Очередная моя "сборка" устанавливалась на этот ноутбук и успешно проходила тест на работоспособность. Но этой зимой так не получилось.

Мой опыт обнаружения проблемы

В декабре 2023 года сделал свою сборку Windows 10 Enterprise LTSB 2016 (v1607), установил на свой ноутбук и после обновления драйверов обнаружил, что Wi-Fi и Bluetooth не работают. Причиной были ошибки описанные в начале статьи и ссылающиеся на отсутствующие (отозванные) сертификаты драйверов. Попробовал установить сборку этой же версии Windows 10, но сделанную мной годом ранее - всё работает с этими же драйверами. Однако, загрузка и установка обновлений из Центра обновлений Microsoft, после перезагрузки приводит к тому же результату. Подумал, что обновления в декабре выдались "неудачными" и решил подождать января. Подождал - то же самое.

Начал разбираться в проблеме и итерационным путём выяснять в каком же месяце в течение 2023 года вышли обновления нарушающие работу устройств. И выяснил! Сборка Windows 10 с интеграцией обновлений за июнь 2023 года является полностью рабочей, а с обновлениями за июль 2023 года - уже нет. Но тут же возникает опасность, что дай ОС выход в Интернет - она тут же обновится и станет нерабочей. Пробовал сделать сборку Windows 10 Enterprise LTSC 2019 (v1809) с интеграцией обновлений по январь 2024 года. Результат несколько лучше - не работал только Blurtooth. И опять же, итерационным путём выяснил, что крайние рабочие обновления были за июнь 2023 года.

Мой опыт решения проблемы

Первое, что пришло в голову, чтобы обойти проверку цифровой подписи драйверов устройств это отключить с помощью Локальных политик возможность такой проверки. Всё просто - выполнил gpedit.msc и через редактор локальной групповой политики нашел соответствующий параметр в одном из разделов Административных шаблонов в Конфигурации компьютера и включил его. Даже, с помощью утилиты RegShot вычислил соответствующий твик реестра. Перегрузил и обнаружил, что решение оказалось нерабочим. Видимо в используемой версии Windows 10 данный параметр игнорируется.

Второе, что могло помочь судя по информации из различных источников в Интернете, это модификация сценария загрузки Windows, таким образом, чтобы ОС всегда загружалась в тестовом режиме с отключением цифровой подписи драйверов. При этом в углу экрана присутствовала бы надпись уведомляющая об этом. Это решение показалось мне "некрасивым", поэтому даже не стал его пробовать. Кто знает: есть ли какие-либо ограничения в работе ОС в тестовом режиме?

Я выбрал третий вариант: "досрочный" End of Support для используемых мною для создания своих сборок версий Windows 10. Собрал сборки с интеграцией накопительных обновлений по июнь 2023 года и на этом всё, финиш! Хотя всё же вложил последние зимние обновления .NET Framework 4.8 так как они ничего не портят. Также отключил с помощью локальных политик автоматическую проверку и установку обновлений. Соответствующий твик реестра:

[HKEY_LOCAL_MACHINE\SOFTWARE\Policies\Microsoft\Windows\WindowsUpdate\AU]
;Отключить автоматическое обновление Windows
"NoAutoUpdate"=dword:00000001

Можно было бы отключить и службу Центра обновлений Windows, но тогда бы была утрачена возможность устанавливать драйверы устройств из репозитория Microsoft. При этом в интерфейсе настроек Windows остаётся кнопка Проверить обновления, нажатие на которую при доступе в Интернет приводит не только к проверке, но и к скачиванию и установке.

Мнение о решении Microsoft

Наверное, высшее руководство M$ считает, что компьютеры и ноутбуки старше 10 лет должны быть выкинуты пользователями на свалку, а взамен них куплены новые. Возможно, пользователи ноутбуков должны обратиться в специализированные мастерские, где им вскрыв корпус заменять плату комбинированного модуля Wi-Fi/Bluetooth на более новую со "свежими" драйверами.

Я считаю, что пользователь является собственником своего компьютера и должен иметь возможность принимать на себя риски, чтобы решать, допускать ли работу устройств с вероятностью присутствия руткита в драйвере или нет. Если не отключать автоматическое обновление, то какие есть способы решения изложенной здесь проблемы?

Tags:
Hubs:
Total votes 34: ↑28 and ↓6+33
Comments62

Articles