С помощью Cortana можно прочитать файлы и запускать ПО на заблокированном ПК под Windows 10
Голосовой помощник Cortana способен слушать пользователя и осуществлять поиск по индексированному содержимому файлов даже тогда, когда экран компьютера заблокирован. Кроме того, Cortana выдает на этот экран меню, с помощью которого хакер может запустить на устройстве вредоносный код.
Уязвимость в Cortana
С помощью голосового помощника Cortana хакер может запустить исполнение вредоносного кода на компьютере, даже если его экран заблокирован. Об этом сообщили исследователи безопасности из компании McAfee. Уязвимость получила кодовое название CVE-2018-8140. Microsoft только что выпустила обновление Windows 10, которое ее устраняет.
Поиск по файлам
В ходе исследования специалисты McAfee воспользовались тем фактом, что Windows индексирует файлы и их содержимое для облегчения поиска по ним. Одновременно они учли, что Cortana настроена помогать пользователю в поисках различного контента и слушает его даже тогда, когда компьютер заблокирован. В итоге выяснилось, что если хакер при заблокированном экране обратится к голосовому помощнику, и продиктует ему для ввода какие-то символы — например, комбинацию pas — то ему в виде контекстного меню будет показана поисковая выдача, содержащая названия файлов, в которых есть введенный фрагмент.
Далее, наведя курсор на какой-либо из результатов поиска, хакер увидит всплывающую подсказку, в которой указан путь к файлу, а иногда и фрагмент его содержимого, если этот фрагмент содержит совпадение с введенной комбинацией символов. Например, наведя курсор на название файла taxes password.txt можно увидеть фрагмент TurboTax password: IL0v3P4yingT4x3$, узнав таким образом пароль от программы подготовки подоходного налога TurboTax.
Запуск вредоносного кода
Поэкспериментировав с различными типами файлов в поисковой выдаче, специалисты McAfee смогли запустить такие программы, как калькулятор, просто кликнув на их названия. Также удалось открыть в текстовом виде, но не исполнить некоторые скрипты, например, PowerShell. Получить доступ к командной строке не удалось. Выяснилось также, что при клике правой клавишей мыши на результате поиска выпадают меню, где предлагается открыть местонахождение файла или скопировать полный путь к нему, причем эти меню варьируются для различных типов файлов.
Также оказалось, что по запросу txt голосовой помощник находит текстовые файлы и выводит в результатах поиска те из них, которые просматривались последними.
Тогда исследователи решили поместить скрипт PowerShell в публичную папку или в хранилище OneDrive, содержимое которого также индексируется, включая папки совместного использования. Просто подключить USB-устройство со скриптом нельзя, поскольку файлы на накопителе не проиндексированы. Затем ученые позвали Cortana и продиктовали ей для ввода комбинацию PS1. Cortana выдала только что проиндексированный скрипт PowerShell из OneDrive в результатах поиска, и исследователи открыли его в текстовом формате.
Далее они попросили OneDrive выполнить поисковый запрос txt. Поскольку PowerShell только что открывался, он попал в поисковую выдачу недавно просмотренных файлов. Оказалось, что если в результатах именно этого поиска кликнуть на него правой клавишей мыши, система предложит запустить его уже не в текстовом виде, а с помощью PowerShell.
Доступ к командной строке
Однако описанная выше атака не будет вполне успешной без доступа к командной строке. Но, как выяснилось, Cortana может решить и эту проблему. Оказалось, что если сразу после пробуждения голосового помощника пользователь нажимает на какую-либо клавишу — например, пробел — то на экране выпадает контекстное меню с пустым полем поиска.
В это поле следует ввести команду. Как только система распознает во введенном наборе символов именно команду, она выведет на экран пункт меню «Команды». Правый клик мышью на этом слове приводит к пункту «Запустить на правах администратора». Кликнув на этом пункте, хакер добьется исполнение команды на заблокированном устройстве.