Аппаратное обеспечение представляет собой основу, поверх которой работают программы. Для распознавания аппаратных компонентов и взаимодействия с ними операционная система использует драйверы. Код драйвера позволяет установить связь между аппаратным обеспечением и ядром ОС с привилегиями, выше чем у обычного пользователя или даже администратора. В связи с этим уязвимости в драйверах представляют большую опасность, поскольку с их помощью злоумышленник может получить наивысшие привилегии и добраться до ядра ОС.
Поскольку драйверы также используются для обновления прошивки аппаратного обеспечения, через уязвимости атакующий может получить доступ к компонентам на более глубоком уровне и вмешаться в их работу или вовсе вывести из строя.
Специалисты компании Eclypsium выявили уязвимости в более сорока драйверах (в том числе от ASUS, Toshiba, Intel, Gigabyte, Nvidia и Huawei), позволяющие повысить свои привилегии от уровня пользовательского пространства до уровня ядра. По их словам, с помощью уязвимостей злоумышленники могут использовать драйвер как прокси для доступа с высокими привилегиями к аппаратным компонентам и, к примеру, читать/записывать данные в процессоре, а также получать доступ к пространству ввода-вывода, моделезависимым регистрам (MSR), управляющим регистрам (CR), регистрам отладки (DR), физической памяти и виртуальной памяти ядра.
Уязвимые драйверы используются во всех устройствах под управлением актуальных версий Windows, в том числе Windows 10. «Проблемы затрагивают все современные версии Microsoft Windows, и универсального механизма, позволяющего Windows-машине не загружать один из этих драйверов, в настоящее время не существует», - отмечают исследователи.