Атаки на уразливі драйвери ядра Windows ― популярні техніки

Компанія ESET ― лідер у галузі інформаційної безпеки ― підготувала детальний огляд про використання уразливих драйверів ядра. Уразливості у драйверах часто застосовуються розробниками ігрових чит-кодів для обходу механізмів захисту, а також декількома APT-групами та у шкідливих програмах. Цей тип драйверів може бути використаний зловмисниками для доступу до ядра Windows.

Серед різних типів драйверів ядра (центрального компонента операційної системи Windows) є програмні драйвери, які забезпечують певні функції, не пов'язані з обладнанням, такі як налагодження та діагностика програмного забезпечення, системний аналіз тощо. Вони здатні розширювати можливості зловмисників під час атак.

Хоча завантаження шкідливого непідписаного драйвера неможливе у нових версіях Windows, а руткіти ядра вже в минулому, все ще існують способи проникнення шкідливого коду у ядро, зокрема шляхом зловживання легітимними підписаними драйверами. Насправді, існує безліч драйверів від різних виробників апаратного та програмного забезпечення, які пропонують можливості для повного доступу до ядра з докладанням мінімальних зусиль.

Уразливості драйверів часто використовуються розробниками ігрових читів. ESET.

Серед уразливостей, які найчастіше спостерігаються у драйверах ядра:

  • збої у додаванні перевірок, які обмежують доступ читання та запису до критичних регістрів для конкретних моделей (MSR);
  • здатність відображати фізичну пам'ять з режиму користувача для читання та запису;
  • можливість доступу до віртуальної пам'яті ядра з режиму користувача для читання та запису.

«Коли зловмисникам необхідно запустити шкідливий код у ядрі Windows на системах зі 64-розрядною версією з примусовим підписом драйверів, використання уразливого підписаного драйвера ядра здається підходящим варіантом для цього. Цей метод, відомий як «Bring Your Own Vulnerable Driver» (BYOVD), використовується в реальному середовищі як APT-групами, так і в масовому шкідливому програмному забезпеченні», ― пояснює Пітер Калнай, дослідник ESET.

Серед зловмисників, які використовують цей метод, ― APT-група Slingshot, яка розробила свій основний модуль під назвою Cahnadr у вигляді драйвера ядра. Іншим прикладом є APT-група InvisiMole, яка була виявлена ​​дослідниками ESET у 2018 році. Їх унікальний новий варіант шкідливого програмного забезпечення використовує регістри MSR у 64-розрядних версіях систем Windows 10 у реальному середовищі.

Ще одним прикладом є програма-вимагач RobbinHood, ціль якої охопити якнайбільше користувачів. Використання методу BYOVD у цьому випадку досить рідкісне явище. Ця програма-вимагач використовує уразливий драйвер материнської плати GIGABYTE, щоб вимкнути перевірку підпису драйверів та встановити власний шкідливий драйвер.

Крім цього, перший в історії руткіт UEFI також використав драйвер RWEverything для отримання доступу до UEFI-модулів жертв.

«Хоча центральний процесор або операційна система використовують кілька механізмів, більшість з них можна обійти за допомогою деяких підступних прийомів», ― коментує дослідник ESET.

Спеціалісти ESET підготували рекомендації, які допоможуть запобігти подібним зловмисним технікам.

  • Безпека на основі віртуалізації. Ця функція, представлена ​​у Windows 10, використовує апаратну віртуалізацію для розміщення ядра в пісочниці, таким чином захищаючи операційну систему за допомогою різних способів.
  • Анулювання сертифіката. У сучасних системах Windows драйвери повинні мати дійсний підпис на основі прийнятного сертифіката. Отже, анулювання сертифіката уразливого драйвера було б простим способом знешкодити його та зробити непотрібним у більшості випадків.
  • Занесення драйверів до списку заблокованих. Ця практика використовується як Microsoft, так і різними сторонніми постачальниками продуктів з безпеки, включно з ESET, для виявлення та видалення найвідоміших уразливих драйверів, знайдених у системі.

Більше інформації про уразливі драйвери ядра доступно за посиланням.