У технологических компаний есть небольшие провалы, есть крупные, а есть и огромные: сообщается, что практически все процессоры Intel, выпущенные за последнее десятилетие, имеют серьёзную уязвимость в безопасности. В результате, как предполагается, обычные пользовательские программы — начиная с приложений баз данных и заканчивая кодом JavaScript в веб-браузерах могут получать до определённой степени доступ к структуре данных из защищённых областей памяти, относящихся к ядру операционной системы.
По сути, современные процессоры Intel включают ошибку проектирования, которая может позволить вредоносным программам читать защищённые области памяти ядра (область ОЗУ, выделенная для наиболее важных основных компонентов операционной системы и их взаимодействия с системным оборудованием). Этот недостаток может потенциально открыть защищённую информацию, такую как пароли. Поскольку ошибка внесена на аппаратном уровне 64-битных чипов Intel, она требует исправления на базовом уровне в каждой популярной операционной системе, включая Windows, Linux и macOS.
Детальные сведения об ошибке проектирования кристаллов и о том, насколько уязвимы пользователи, в настоящее время специалисты хранят в секрете, но поскольку разработчики работают над программными заплатками засучив рукава, желая выпустить обновления в ближайшие недели, похоже, дело весьма серьёзное. В самом худшем предполагаемом сценарии даже такое простое и распространённое ПО, как JavaScript или облачное вредоносное ПО, запущенные через веб-страницу в браузере, могут получить доступ к некоторым наиболее чувствительным внутренним функциям компьютеров на базе чипов Intel.
Поскольку заплатка повлечёт за собой полное разделение памяти ядра и пользовательских процессов, «исправленные» операционные системы потенциально могут привести к значительному падению производительности ПК — от 5 % до 30 %, в зависимости от конкретной задачи и модели процессора. Издание The Register поясняет:
«Эти исправления KPTI [Kernel Page Table Isolation] переносят ядро ОС в полностью отдельное адресное пространство, поэтому оно не просто незаметно для запущенного процесса, его нет в этом адресном пространстве. В нормальных условиях такие меры совершенно не требуются, но проблема лежит в аппаратной архитектуре чипов Intel и в противном случае позволяет каким-то образом обходить защиту доступа к ядру ОС.
Но проблема такого разделения памяти состоит в том, что достаточно ресурсоёмко поддерживать переключение между двумя отдельными адресными пространствами для каждого системного вызова и для каждого аппаратного прерывания. Эти переключения контекста не происходят мгновенно, и они заставляют процессор выгружать кешированные данные и заново загружать информацию из оперативной памяти. Это увеличивает расходы ресурсов на работу ядра ОС и снижает производительность компьютеров с процессорами Intel».
От 5 до 30 процентов — это чудовищное прогнозируемое падение производительности, но из-за связанной с проблемой секретности в настоящее время трудно сказать, насколько заметным в реальности окажется воздействие заплаток на работу рядовых пользователей. Наибольший урон могут понести такие масштабные системы, как центры обработки данных. Например, при работе СУБД PostgreSQL исправление KPTI приносит падение производительности в лучшем случае на 17 %, а в худшем — на 23 %. Для среднестатистического пользователя, возможно, заплатка принесёт минимальные проблемы. Кроме того, в будущем не исключено появление более эффективных способов решения аппаратной проблемы.
Блог Python Sweetness написал недавно: «Срочная разработка программной заплатки ведётся в открытом и недавно выпущенном ядре Linux, аналогичные новшества стали добавляться в ядра NT в ноябре. В худших случаях исправления приводят к весьма существенным замедлениям некоторых типичных задач. Есть основания считать, что уязвимость заметно влияет и на распространённые среды виртуализации, включая Amazon EC2 и Google Compute Engine».
Как можно видеть, проблемы уязвимости могут быть настолько серьёзными и глубокими, что их оказываются неспособны выявить самые изощрённые специалисты в области безопасности в течение десятка лет. Однако после обнаружения подобной дыры в миллионах систем может воспользоваться весьма широкий круг злоумышленников. По крайней мере, небольшой доле владельцев систем на базе процессоров AMD переживать в данном случае не о чем: архитектура этих чипов устойчива к подобным типам атак.
Источник