Найти тему
В мире ИТ 🌌

Уязвимости безопасности ядра Windows

Получены первые результаты длительного изучения безопасности ядра операционной системы Windows. Эксперт по безопасности изучал ядро ​​Windows и добился отнюдь не радующих пользователей результатов. Обнаружено в совокупности более пятнадцати уязвимостей. Это феноменальное количество недостатков, которые предоставляют доступ к привилегиям ядра. Все они были исправлены Microsoft c помощью патчей системы, но распространенность операционной системы и место данного кода в структуре управления ядром операционной системы оставляет вопрос безопасности её для пользователя открытым.

Эксперт по безопасности Гил Дабах более года изучал ядро Windows и, в частности, компонент «win32k», который управляет отображением данных в 32-битных системах. Время выпуска данного кода относится к девяностым годам прошлого века, но win32k до сих пор встречается во всех версиях Windows по причинам совместимости.

Гил Дабах первого апреля 2020 года опубликовал исследование, в котором он продемонстрировал существование семейства уязвимостей безопасности, которое он назвал «SmashTheRef» и которое позволяет осуществлять привилегированное выполнение данного кода в контексте ядра. Изначально эксперт обнаружил тринадцать уязвимостей и опубликовал для них демонстрационный код на GitHub, и затем выявил пятнадцать других, потенциально пригодных для атаки.

Исследователь связался с Microsoft и уверяет, что все обнаруженные недостатки были исправлены компанией. Работа над глобальным исправлением, позволяющим удалить все это семейство ошибок тем не менее продолжается. Но это не просто, потому что код старый и довольно сложный. На данный момент Microsoft изменила некоторые ключевые части кода, но это не решает проблему полностью.

В чем состоит суть проблемы? Изначально код win32k не был частью ядра Windows, но в итоге был интегрирован в него из-за его постоянно возрастающей важности. Результирующая операция данного кода довольно сложна, с бесконечными перемещениями между областью ядра («ядро-земля») и функциями, доступными для пользователя («пользователь-земля»).

В 2008 и 2011 годах исследователи показали, что злоумышленники могли использовать эти циклы для получения ошибок типа «Использовать после освобождения». Объект, созданный ядром - например, окно - может быть уничтожен на стороне пользователя при сохранении указателя на него, что разрешает незаконный доступ к области памяти ядра. Microsoft представила исправления, и «сегодня эти ошибки почти не актуальны», считает Гил Дабах.

Эксперт нашел еще одну возможность для атак, нацеленных на подчиненные объекты. Разрушение исходного объекта всегда приводит к разрушению подчиненного объекта, но область памяти последнего не всегда полностью разрушена. Гил Дабах нашел довольно сложные способы, чтобы восстановить подчиненный объект и снова вызвать ошибку «Использовать после освобождения».

Исследователь также обнаружил несколько других недостатков в win32k, которые не были связаны с уязвимостью SmashTheRef. Они также были исправлены Microsoft. В общей сложности он нашел и опубликовал более пятнадцати уязвимостей в ядре Windows в течение года. Эксперт продолжает поиск других уязвимостей, о которых незамедлительно сообщает в Microsoft.

🚍 ЧИТАТЬ НА КАНАЛЕ:

Три новых функции браузера Edge, которые сделают вашу жизнь проще

WhatsApp для Windows 10 и macOS

Блокировщики рекламы для браузера

Горячие клавиши для быстрой работы Windows 10

Активируем и деактивируем защитник Windows 10

Антивирус для Windows 10

Поиск файлов в Windows 10

Пароль WiFi в Windows 10