Новая уязвимость затрагивает практически каждый чип Intel, произведенный с 2011 года
Специалисты по информационной безопасности обнаружили новую уязвимость в чипах Intel, которую можно использовать для кражи конфиденциальной информации непосредственно из процессора. Исследователи назвали ее «ZombieLoad». ZombieLoad — это атака побочного типа, нацеленная на чипы Intel, позволяющая хакерам эффективно использовать недостаток в их архитектуре для получения произвольных данных, но при этом она не дает возможности внедрить и выполнить произвольный вредоносный код, таким образом использовать ее как единственный инструмент для вторжения и взлома удаленных компьютеров невозможно.
Как сообщает Intel, ZombieLoad представляет из себя четыре ошибки в микрокоде их чипов, о которых исследователи сообщили компании всего месяц назад. Уязвимости подвержены практически все компьютеры с чипами Intel, выпущенными начиная с 2011 года. Чипы ARM и AMD данной уязвимости не подвержены.
ZombieLoad напоминает нашумевшие в прошлом Meltdown и Spectre, которые использовали ошибку в системе спекулятивного (опережающего) выполнения команд. Спекулятивное выполнение помогает процессорам в определенной степени предсказывать, что может понадобиться приложению или операционной системе в ближайшем будущем, благодаря чему приложение будет работать быстрее и эффективнее. Процессор вернет результаты своих прогнозов, если они окажутся верными, или сбросит результаты выполнения, если прогноз оказался ложным. Как Meltdown, так и Spectre используют возможность злоупотребления этой функцией, чтобы получить прямой доступ к информации, которой оперирует процессор.
ZombieLoad переводится как «загрузка зомби», что отчасти объясняет механизм уязвимости. В ходе проведения атаки в процессор подается такое количество данных, которое он не может обработать должным образом, заставляя процессор запрашивать помощь у микрокода для предотвращения сбоя. Обычно приложения могут видеть только свои собственные данные, но ошибка, вызванная перегрузкой процессора, позволяет обойти это ограничение. Исследователи заявили, что ZombieLoad в состоянии получить любые данные, используемые ядрами процессора. Intel сообщает, что исправление для микрокода поможет очистить буферы процессора при перегрузке, предотвращая чтение приложениями не предназначенных для них данных.
В видеодемонстрации работы уязвимости исследователи показали, что она может быть использована для того, чтобы узнать, какие веб-сайты посещает человек в режиме реального времени, но ее так же легко применить, чтобы получить, например, пароли или токены доступа, используемые пользователями для платежных систем.
Подобно Meltdown и Spectre, ZombieLoad подвержены не только ПК и ноутбуки, но и облачные серверы. Уязвимость можно использовать на виртуальных машинах, которые должны быть изолированы от других виртуальных систем и их хост-устройств, чтобы потенциально обойти эту изоляцию. Так, Даниэль Грусс (Daniel Gruss), один из исследователей, открывших уязвимость, утверждает, что она может считывать данные из серверных процессоров так же, как и на персональных компьютерах. Это потенциально серьезная проблема в облачных средах, где виртуальные машины разных клиентов работают на одном серверном оборудовании. Хотя об атаках с использованием ZombieLoad никогда не сообщалось публично, исследователи не могут исключить, что они могли иметь место, так как не всегда кража данных оставляет за собой какие-то следы.
Что это значит для обычного пользователя? Нет нужды паниковать. Это далеко не эксплойт или уязвимость нулевого дня, когда злоумышленник может захватить ваш компьютер в одно мгновение. Грусс объясняет, что применить ZombieLoad «легче, чем Spectre», но «труднее, чем Meltdown» — и то и другое требует определенного набора навыков и усилий для использования в атаке. Фактически, для выполнения атаки при помощи ZombieLoad вы должны каким-то образом загрузить зараженное приложение и самостоятельно запустить его, тогда уязвимость поможет злоумышленнику скачать все ваши данные. Тем не менее, есть гораздо более простые способы взломать компьютер и украсть их.
Корпорация Intel уже выпустила микрокод для исправления уязвимых процессоров, включая чипы Intel Xeon, Intel Broadwell, Sandy Bridge, Skylake и Haswell, Intel Kaby Lake, Coffee Lake, Whiskey Lake и Cascade Lake, а также все процессоры Atom и Knights. Другие крупные компании также выпустили исправление уязвимости со своей стороны. Apple, Microsoft и Google для своего браузера также уже выпустили соответствующие патчи.
В интервью для портала TechCrunch Intel заявила, что обновления для микрокода чипов, как и предыдущие патчи, будет влиять на производительность процессоров. Представитель Intel сообщил, что большинство исправленных потребительских устройств могут в худшем случае потерять 3% производительности, и до 9% потери составят для дата-центров. Но, по мнению Intel, это вряд ли будет заметно в большинстве сценариев.
Впрочем, с Intel совершенно не согласны инженеры Apple, которые на специальной странице о методе полной защиты от «Microarchitectural Data Sampling» (официальное название ZombieLoad) утверждают, что для окончательного закрытия уязвимости требуется полностью отключить в процессорах технологию Intel Hyper-Threading, что по тестам специалистов из Apple может понизить производительность пользовательских устройств в ряде задач на 40%.
Ни Intel, ни Даниэль и его команда, не опубликовали код, реализующий уязвимость, поэтому прямой и непосредственной угрозы для обычного пользователя нет. А оперативно выпущенные патчи нивелируют ее полностью, но, учитывая, что каждое такое исправление стоит пользователями определенных потерь в производительность, к Intel возникают некоторые вопросы.