Двухфакторная аутентификация позволяет добавить новый уровень безопасности для процедуры входа в аккаунт на веб-ресурсах. В результате стандартные атаки, нацеленные на кражу учетных данных, часто оказываются безуспешными, потому что доступ к учетной записи не предоставляется без второго шага аутентификации.
Для подтверждения запроса аутентификации пользователям необходимо ввести код, использовать личное устройство или приложение для аутентификации. Существуют различные формы двухфакторной аутентификации. Коды, отправляемые по электронной почте или SMS, раньше были обычным явлением, но у этого метода есть недостаток, связанный с тем, что информация передается в виде обычного текста.
Новые методы аутентификации, предусматривающие использование приложений и устройств безопасности, позволили повысить уровень безопасности. Входы в аккаунт без пароля за счет использования дополнительных устройств становятся все более распространенными, поскольку они исключают пароль из процедуры аутентификации. Например, клиенты Microsoft могут переключиться на полностью беспарольные учетные записи.
Тем не менее, злоумышленники могут использовать новые виды атак для обхода двухфакторной аутентификации. Исследователь безопасности mr.dox разработал новую атаку, которая использует функциональность Microsoft Edge WebView2 для кражи учетных данных, обхода двухфакторной аутентификации и извлечения файлов cookie. Для успешной эксплуатации необходимо, чтобы приложение выполнялось в системе жертвы, что дает злоумышленникам большие возможности, особенно в отношении входа в онлайн-сервисы.
Чтобы лучше понять принцип атаки, необходимо поближе познакомиться с Microsoft Edge WebView2. По своей сути WebView2 позволяет разработчикам встраивать веб-контент в свои настольные приложения Windows, а для отображения этого контента используется Microsoft Edge. Используя эту технологию, можно встраивать код HTML, CSS и JavaScript в пользовательское приложение и загружать сайты с помощью WebView, аналогично тому, как веб-браузеры взаимодействуют с веб-сайтами.
Богатая функциональность WebView2 делает технологию привлекательной для киберпреступников. Злоумышленник может загрузить любую страницу входа, в том числе найденную на Amazon, Microsoft, Google или Facebook*, используя WebView.
*Meta, владеющая Facebook, признана экстремистской в России.
Фишинговая атака WebView2
Одной из ключевых особенностей WebView2 является возможность использования JavaScript. Встроенная функция позволяет веб-разработчикам внедрять JavaScript на веб-сайты. Именно эту возможность mr.dox использовал для внедрения вредоносного кода JavaScript на легитимные веб-сайты, загруженные в приложение на базе WebView2.
Для демонстрации риска безопасности mr.dox создал приложение WebView2, которое загружает сайт Microsoft Office и включает в него код кейлоггера на JavaScript.
Поскольку выполняется загрузка легитимного сайта, то процесс не блокируется антивирусом и не защищается двухфакторной аутентификацией. Пользователи не увидят никаких различий между загруженным сайтом и сайтом, открытым в браузере. Фишинговые сайты могут выглядеть иначе, чем исходный сайт из-за внесения изменений в легитимный сайт.
На странице проекта GitHub показано, как пользовательское приложение WebView2 используется для кражи всего пользовательского ввода с помощью внедренного кейлоггера. Поскольку это происходит в фоновом режиме, большинство пользователей даже не догадаются, что каждая активируемая ими клавиша регистрируется и отправляется злоумышленнику.
Хотя данная проблема безопасности может привести к успешной компрометации учетной записи, она не предоставляет доступ к учетным записям, защищенным с помощью систем двухфакторной аутентификации.
Однако, на этом атака не прекращается. WebView2 поставляется со встроенной функцией извлечения файлов cookie. Злоумышленник может украсть файлы cookie для последующей аутентификации, и ему просто нужно дождаться завершения входа в систему. Файлы cookie предоставляются в формате base64, но расшифровать данные для раскрытия информации не представляет особых сложностей.
Более того, WebView может использоваться для кражи всех файлов куки у активного пользователя. Одной из возможностей WebView2 является запуск с «существующей папкой данных пользователя» вместо создания новой. Используя эту функцию, злоумышленники могут украсть пользовательские данные из Chrome или других установленных браузеров.
Во время тестирования в Chrome, исследователю удалось украсть пароли, данные сеанса, закладки и другие сведения. Для этого потребовалось запустить WebView2, используя путь профиля Chrome, после чего файлы cookie были извлечены и переданы на удаленный сервер в Интернете.
Используя эту информацию, злоумышленник может получить доступ к аккаунту жертвы в веб-приложениях при условии, что сессия все еще активна и нет никаких других защитных систем, которые могут препятствовать доступу с новых устройств. Большинство извлеченных файлов cookie остаются действительными до истечения срока действия сеанса.
Нюансы
Основной недостаток атаки на основе WebView2 — необходимость запуска вредоносного приложения на пользовательском устройстве. Для кражи данных требуется вход в легитимные веб-службы, но кража файлов cookie и сеансов может происходить и без этого.
Другое вредоносное ПО может предоставлять злоумышленникам иные средства для получения доступа к пользовательскому устройству и его данным. Выполнение любой вредоносной программы приводит к катастрофе с точки зрения пользователя, и многие пользователи до сих пор небрежно относятся к выполнению программ и запуску вложений на своих устройствах.
Зачем злоумышленникам прибегать к атакам WebView2, когда другие виды атаки проще реализовать? Mr.dox предполагает, что атака WebView2 может предоставить злоумышленникам дополнительные возможности, такие как прямой запуск кода JavaScript на целевых сайтах.
Антивирусы могут предотвратить запуск вредоносных приложений Webview2. Демонстрационное приложение с кейлоггером, доступное на сайте исследовательского проекта GitHub, не было заблокировано Microsoft Defender, хотя предупреждение SmartScreen отображалось, что, впрочем, не помешало запуску.
Защита от атак с использованием WebView2
Когда речь заходит о защите от атак данного вида, все сводится к десятилетним практикам безопасности. Основной вариант защиты — не допускать запуска приложений, которые поступают из неизвестных источников или не заслуживают доверия. Вложениям электронной почты и веб-загрузкам нужно уделять особое внимание, поскольку пользователи компьютеров по-прежнему часто запускают их, не задумываясь о последствиях.
Другие варианты включают сканирование файла современными антивирусными движками или такой службой, как Virustotal. Virustotal сканирует файлы с помощью десятков антивирусных движков и в считанные секунды возвращает результаты проверки пользователю.
Угрозы безопасности
• Apache устраняет обход уязвимости удаленного выполнения кода в веб-сервере Tomcat
• Основные киберугрозы 2024 года в России: утечки данных, вымогатели и фишинг
• Обнаружен скрытый руткит Pumakit для Linux. Он может использоваться в таргетированных атаках
• Уязвимость OpenWrt Sysupgrade позволяет распространять вредоносные образы прошивки. Обновите свои устройства
• Хакеры используют драйвер Avast Anti-Rootkit для отключения антивирусов
• Системы Ubuntu затронуты уязвимостью «needrestart», которая позволяет получить root-привилегии