Сведения об уязвимостях спекулятивного выполнения в центральных процессорах ARM и Intel
Исследователи проблем безопасности недавно обнаружили уязвимости, названные Meltdown и Spectre. Эти проблемы относятся ко всем современным процессорам и влияют почти на все вычислительные устройства и операционные системы. Проблемы коснулись всех систем Mac и устройств ОС iOS, но на момент выпуска данной публикации нет известных средств использования этих уязвимостей, которые затрагивали бы клиентов. Поскольку для использования большинства из этих уязвимостей требуется загрузить вредоносную программу на компьютер Mac или устройство с ОС iOS, мы рекомендуем загружать программное обеспечение только из надежных источников, например из магазина App Store.
Компания Apple уже выпустила решения для защиты от уязвимости Meltdown в ОС iOS 11.2, macOS 10.13.2 и tvOS 11.2. Обновления системы безопасности для ОС macOS Sierra и OS X El Capitan также содержат решения для защиты от Meltdown. Чтобы обеспечить защиту от уязвимостей Spectre, компания Apple добавила программные средства в ОС iOS 11.2.2 и выпустила дополнительное обновление macOS High Sierra 10.13.2 и браузер Safari 11.0.2 для ОС macOS Sierra и OS X El Capitan. Часы Apple Watch не подвержены воздействию уязвимостей Meltdown и Spectre.
Мы продолжаем разрабатывать и тестировать средства защиты от указанных уязвимостей.
Общие сведения
Уязвимости Meltdown и Spectre используют функцию спекулятивного выполнения в современных центральных процессорах. Спекулятивное выполнение повышает скорость посредством одновременного использования нескольких инструкций, которые могут обрабатываться не в том порядке, в котором они подавались в центральный процессор. Чтобы увеличить производительность, центральный процессор предполагает, какой из путей вероятнее всего будет выполняться, и, исходя из этого предположения, продолжает спекулятивное выполнение по этому пути еще до завершения ветви. Если предположение было неправильным, это спекулятивное выполнение откатывается таким образом, что остается невидимым для программного обеспечения.
Уязвимости Meltdown и Spectre используют спекулятивное выполнение для доступа к защищенной памяти, включая память ядра, из пользовательского процесса с недостаточным уровнем доступа, например из вредоносной программы, запущенной на устройстве.
Meltdown
Meltdown — это имя уязвимости, известной как CVE-2017-5754 или rogue data cache load (загрузка в кэш мошеннических данных). Уязвимость Meltdown позволяет пользовательскому процессу считывать данные из памяти ядра. Наш анализ показывает, что у этой уязвимости самая высокая вероятность использования. Компания Apple добавила решения для защиты от Meltdown в ОС iOS 11.2, macOS 10.13.2 и tvOS 11.2, а также в обновления системы безопасности 2018-001 для ОС macOS Sierra и 2018-001 для ОС OS X El Capitan. Пользователям ОС watchOS не требуются дополнительные средства защиты.
Тестирования с помощью общедоступных эталонных тестов показали, что изменения в обновлениях (декабрь 2017 г.) не продемонстрировали измеримого уменьшения производительности ОС macOS и iOS. Тестирования выполнялись в GeekBench 4 и в таких общедоступных эталонных тестах, как Speedometer, JetStream и ARES-6.
Spectre
Spectre — это название нескольких уязвимостей, в частности (на момент выпуска данной публикации) CVE-2017-5753 или bounds check bypass (обход проверки границ), CVE-2017-5715 или branch target injection (манипуляция целевым кэшем адресов ветвлений) и CVE-2018-3639 или speculative bounds bypass (спекулятивный обход границ). Эти уязвимости потенциально делают доступными для пользовательских процессов элементы в памяти ядра, используя задержку во времени, которая необходима центральному процессору для проверки полномочий запроса доступа к памяти.
Анализ этих уязвимостей выявил, что их очень сложно использовать, даже путем локального запуска программы на компьютере Mac или устройстве с ОС iOS. Потенциально их можно использовать в коде JavaScript, выполняемом в веб-браузере. 8 января компания Apple выпустила обновления для браузера Safari в ОС macOS и iOS для блокировки этих уязвимостей, связанных с задержкой во времени. В результате тестирования, проведенного на момент выпуска защитных обновлений для браузера Safari, выяснилось, что эти обновления не оказывают явного влияния в тестах Speedometer и ARES-6, а влияние в эталонном тесте JetStream составляет менее 2,5 %. Мы продолжаем разрабатывать и тестировать средства защиты от уязвимостей Spectre в операционной системе. ОС watchOS не подвержена воздействию уязвимости Spectre.
Информация о продуктах, произведенных не компанией Apple, или о независимых веб-сайтах, неподконтрольных и не тестируемых компанией Apple, не носит рекомендательного или одобрительного характера. Компания Apple не несет никакой ответственности за выбор, функциональность и использование веб-сайтов или продукции сторонних производителей. Компания Apple также не несет ответственности за точность или достоверность данных, размещенных на веб-сайтах сторонних производителей. Обратитесь к поставщику за дополнительной информацией.
Чем опасны процессорные уязвимости Spectre и Meltdown и как с ними бороться
![]()
Не секрет, что в современных процессорах имеется множество ошибок, которые приводят к утечке конфиденциальных данных. Давайте рассмотрим самые популярные уязвимости, которые даже имеют собственные «бренды». На пальцах разберем, как работают Spectre и Meltdown, а также выясним, как от них защититься обычному пользователю.
Что за уязвимости?
Чтобы говорить конкретно о Spectre и Meltdown, сперва давайте разберемся с тем, что такое уязвимости. Это непреднамеренные ошибки, которые закладываются в процессоры еще на этапе проектирования. С их помощью злоумышленники могут получить доступ к конфиденциальным данным.
Для исполнения необходимых логических операций и достижения максимальной производительности процессора используется минимально возможное количество транзисторов. Информационная безопасность при этом страдает — популярные ЦП имеют множество «дыр», чем и пользуются злоумышленники. Для закрытия этих уязвимостей требуется немалый транзисторный бюджет. Помимо увеличения стоимости производства, само устройство чипов станет сложнее, что тоже влияет на стоимость. А производительность может даже понизиться. Очевидно, что в условиях рыночной конкуренции такой вариант не пройдет. Производители процессоров сознательно игнорируют проблему уязвимостей, хотя и осознают, какую потенциальную опасность она несет.
Что такое Spectre
Ей подвержены процессоры Intel, AMD и некоторые ARM. Уязвимость базируется на недостатках технологии спекулятивного исполнения команд, которая значительно увеличивает производительность. Ее суть заключается в использовании предсказателя ветвлений. Процессор заранее рассчитывает некоторое множество наиболее вероятных результатов, каждый из которых может быть достоверным по результату предыдущего вычисления.
Например, когда ЦП произведет вычисление результата А предыдущей задачи, уже будут рассчитаны наиболее вероятные последующие результаты В, С, D и Z. Если окажется, что результату А соответствует один из уже заранее рассчитанных результатов (например, D), то он «утверждается» и используется в дальнейшем. Таким образом, вычисление результатов A и D производится в одном периоде процессорного времени, что приводит к увеличению быстродействия.
![]()
Если выйдет так, что ни один из множества последующих результатов (В, С, D и Z) не является достоверным, то ЦП произведет его вычисление в дополнительный период времени.
Предсказатель ветвлений способен к обучению. Он запоминает закономерности в вычислении правильных результатов, а спустя время начинает считать их достоверными и предсказывает такие результаты в первую очередь. Именно это свойство и использует вредоносная Spectre.
Она встраивает свой программный код в общий поток данных и «обучает» предсказатель гарантированно прогнозировать «правильные» результаты путем многократного повторения своих команд. Когда предсказатель начнет считать результаты достоверными — то есть, не подлежащими проверке — Spectre задает в исполняемом коде другую команду. Например, на запись данных в кэш процессора. Предсказатель выполняет ее без проверки на легитимность. Спустя какое-то время процессор, конечно, поймет, что команда являлась недопустимой, и сбросит ее. Но данные атакованных приложений уже будут считаны из памяти.
Что такое Meltdown
Этой уязвимости подвержены процессоры Intel (но не AMD), а также некоторые чипы с архитектурой ARM. Она основана на недостатках технологии внеочередного исполнения машинных инструкций. Задачи, поступающие на процессор, исполняются не последовательно (одна за другой), а параллельно, то есть одновременно.
Иногда в цепочке последующая инструкция может оказаться менее сложной, чем предыдущая. Поскольку задачи исполняются одновременно, последующая инструкция будет выполнена раньше — даже если по ее результатам последующая не должна была исполняться вовсе.
![]()
Конечно, процессор поймет, что исполненная последующая инструкция недопустима, и аннулирует ее. Но до этого момента она имеет полный доступ к кэш-памяти процессора. Именно эту особенность использует уязвимость Meltdown. Она генерирует свою инструкцию, которая будет исполнена процессором раньше, чем предыдущая легитимная. И до исполнения запрещающей инструкции эксплойт успевает прочитать необходимые данные из памяти ядра.
Чем опасны
Meltdown и Spectre представляют угрозу для банков, государственных структур, оборонного сектора и серверных систем. То есть для тех секторов и отраслей, где информационная безопасность критически важна, а утечка конфиденциальных данных может привести к катастрофе.
При этом работнику такого предприятия совсем не обязательно что-либо скачивать и устанавливать. Атака может сработать прямо в браузере, нужно лишь зайти на определенный сайт.
В меньшей опасности находится рядовой пользователь, но даже он может стать жертвой. Вы же не хотите, чтобы злоумышленники похитили ваши пароли и другие личные данные?
Как обнаружили
Аппаратные уязвимости Meltdown и Spectre выявила штатная команда по кибербезопасности Google — Project Zero. Дело было в середине 2017 года, а несколько месяцев спустя «дыры» были публично раскрыты. Эксплойты могут выполняться в различных операционных системах, будь то Windows, Linux, macOS или iOS.
![]()
Примечательно, что Meltdown не затронула процессоры AMD. Также ей не подвержены продукты от Intel, произведенные до 1995 года.
![]()
Следует добавить, что Meltdown и Spectre — не единственные аппаратные уязвимости. На сегодняшний день «дыры» в процессорах исчисляются сотнями, причем у Intel их значительно больше, чем у AMD.
Как бороться
Поскольку уязвимости являются аппаратными — то есть на уровне «железа», то полностью их исправить невозможно. Для этого нужно переработать архитектуру процессора и заново его произвести. Что же делать с чипами, которые уже установлены в компьютерах пользователей? Способ может быть только один — попытаться устранить недочеты в безопасности программно, так называемыми заплатками. К сожалению, заплатки имеют неприятный побочный эффект в виде снижения производительности, вплоть до 30 %.
Проверить, подвержен ли ваш ПК уязвимостям Meltdown и Spectre несложно. Скачайте утилиту InSpectre. Она не только выявит наличие уязвимостей, но и предложит сразу поставить заплатки.
![]()
На что влияют заплатки?
Выше мы уже упомянули о побочных эффектах. Это неизбежная плата за исправление аппаратных уязвимостей программным способом. Давайте проверим на практике.
![]()
Производительность снижается почти на 10 %:
![]()
Как видим, заплатки создают дополнительную нагрузку на процессор — они добавляют системные процессы, которые предотвращают утечку данных.
Выводы
Процессоры — это технически сложные функциональные узлы, и со временем они только продолжат усложняться. В процессе тестирования инженерных образцов невозможно предусмотреть все варианты. Уязвимости обнаруживаются гораздо позже, уже на этапе эксплуатации. Их появление неизбежно.
Хотя, чего греха таить, о наличии некоторых уязвимостей в ЦП, производство которых только предстоит, производители все же знают заранее. Но, понимая, что на переработку архитектуры уже нет времени, а конкуренты наступают на пятки, компании осознанно принимают решение о производстве таких чипов.
Для рядового пользователя в большинстве случаев Meltdown и Spectre опасности не представляют. Организация атаки — это достаточно сложное мероприятие, чтобы заниматься этим для кражи данных обычного «чайника».
В случае крупных предприятий над организацией атак уже работают профессионалы за серьезные деньги — начиная от спецслужб иностранных государств и заканчивая отечественными конкурентами. Поэтому уязвимости на рабочих ПК обязательно надо закрывать.
Meltdown и Spectre: ваше устройство может быть под угрозой

Threat Intelligence Team 8 янв 2018

Threat Intelligence Team , 8 янв 2018
Meltdown и Spectre — две уязвимости, затрагивающие почти каждый компьютер в мире.
На этой неделе появилась информация о двух уязвмостях, затрагивающих почти каждый компьютер: это касается любой платформы Windows, Mac, Linux, Android и iOS.
До сих пор никакие вредоносные программы или кибератаки не были связаны с Meltdown и Spectre, но теперь, когда информация широко освещена в СМИ, это может измениться. Обе уязвимости могут привести к взлому памяти вашего компьютера, что означает доступ злоумышленников к паролям, фотографиям, данным кредитной карты и прочим личным данным.
Коротко об уязвимостях
Meltdown
Затрагивает практически все компьютеры, смартфоны, планшеты на базе процессоров Intel. Как можно понять, это большая проблема для крупных облачных предприятий, таких как Microsoft и Google. Если хакеры захотят воспользоваться этой уязвимостью, они смогут просто арендовать сервер в общем облачном сервисе и оттуда получить доступ к данным других пользователей. Для решения этой проблем был быстро разработан патч, но, к сожалению, он может замедлить работу вашего устройства до 30%.
Spectre
Если Meltdown специфичен для процессоров Intel, то Spectre затрагивает почти каждый процессор на рынке. Эта уязвимость может быть использована для «подбора» доступа к программам по безопасности вашей системы. Ключи доступа, встроенные в эти программы, фактически делают приложения более уязвимыми. Сам недостаток присущ из-за строения чипов, и его можно исправить только путем перепроектирования аппаратного обеспечения. Это придет, но потребует какого-то времени.
Устранение проблем
В этой статье мы представили несколько решений для снижении риска быть под угрозой Meltdown и Spectre, включая обновления ОС, браузера или прошивки.
1. Microsoft выпустила условные исправления для Windows, предлагая их только тем пользователям, чьи антивирусные программы внесли корректировки для поддержки патчей. Avast был одним из первых, кто это сделал. Пользователи без антивируса могут вручную установить ключ реестра, чтобы разрешить обновление.
Обновлено 9 января: Microsoft прекратила распространение обновлений для компьютеров на базе процессоров AMD после появления информации, что они выводят устройство из строя. Проблема решится, вероятнее всего, в следующих патчах.
Ниже представлена диаграмма, в которой подробно описывается состояние поддержки патчей антивирусными программами по состоянию на 5 января.

2. Разработчики Linux выпустили патчи, которые решают определённые проблемы Meltdown. Один из таких — патч под названием KPTI (Kaiser).
3. Apple сообщили, что обновление ОС, а именно версии iOS 11.2, MacOS 10.13.2 и tvOS 11.2, помогут защитить устройства компании от Meltdown. В настоящее время компания работает над надстройками для защиты от Spectre, но они будут выпущены в следующих версиях.
4. Защитить браузеры является первостепенной задачей: достаточно написать JavaScript, чтобы совершить атаку на устройство и выкрасть пароли и личные данные. Firefox 57, последняя версия Internet Explorer и Edge для Windows 10 уже имеют исправления, встроенные в обновления, Chrome получит обновление во второй половине января, а Apple выпустит новую версию Safari для защиты от Spectre в ближайшие дни.
Avast рекомендует вам в скором времени установить все необходимые обновления безопасности и оставаться в курсе последних новостей о данной угрозе, например следить за нашим блогом или страницами в социальных сетях: ВКонтакте, Одноклассники, Facebook и Twitter.
Записки IT специалиста
Meltdown и Spectre — трезво оцениваем риски или безопасность против производительности
- Автор: Уваров А.С.
- 04.10.2018
В самом начале 2018 года широкую компьютерную общественность буквально огорошили сообщениями о двух серьезных уязвимостях — Meltdown и Spectre. Пожалуй, впервые за всю историю компьютерной индустрии столь серьезная уязвимость оказалась аппаратной и касается практически всех современных процессоров. Ситуацию дополнительно усугубило то, что все доступные варианты устранения последствий данной ошибки ведут к падению производительности, в ином случае значительной. Сейчас, когда вся информационная пена схлынула, настало время трезво разобраться насколько это серьезно и что следует делать.
Научиться настраивать MikroTik с нуля или систематизировать уже имеющиеся знания можно на углубленном курсе по администрированию MikroTik. Автор курса, сертифицированный тренер MikroTik Дмитрий Скоромнов, лично проверяет лабораторные работы и контролирует прогресс каждого своего студента. В три раза больше информации, чем в вендорской программе MTCNA, более 20 часов практики и доступ навсегда.
Почему все так серьезно?
Есть одна известная старая шутка, в которой две новости и обе плохие. В данной ситуации она как никогда уместна. Начнем с того, что обе указанные уязвимости аппаратные, причем связанные не с ошибкой реализации конкретной модели процессора, а с изъянами некоторых положенных в основу современных CPU архитектурных решений. Это означает, что уязвимо все то, что было выпущено в обозримом прошлом, то, что лежит на прилавках и то, что сходит с конвейеров в настоящее время.
Данные уязвимости нельзя закрыть без серьезной переработки многих технологий работы процессора, которые направлены в первую очередь на увеличение производительности. Тем более до сих пор не понятно ограничится ли дело только Meltdown и Spectre, либо будут найдены новые ошибки в аппаратных алгоритмах. Как бы там ни было, первые процессоры с аппаратно исправленными ошибками скорее всего еще находятся в бумагах разработчиков, поэтому нам всем придется принять новую реальность и как-то к ней приспосабливаться.
Коротко о Meltdown
Данная уязвимость использует особенности спекулятивного выполнения и позволяет программе получить доступ к памяти используемой ядром операционной системы. Спекулятивное выполнение — это специальный механизм, предназначенный для ускорения работы процессора, который заключается в том, что если у процессора есть код, но еще нет данных, то он пытается их предсказать и произвести вычисления. Если предсказание было неудачным, то код выполняется заново, а ошибочный результат некоторое время находится в кеше, откуда его можно получить через данную уязвимость.
Если говорить проще, то основная опасность Meltdown именно в том, что процесс может прочитать память ядра, это позволяет запустить специальный код внутри виртуальной машины и получить данные хоста или других виртуальных машин. Т.е. теперь, чтобы украсть с VPS ваши данные, пароли, ключи шифрования больше не нужно атаковать, взламывать или заражать систему, достаточно вполне легально купить еще одну виртуальную машину на том же хосте.
Под угрозой Meltdown находятся в первую очередь хостеры и операторы облачных сервисов, а также их клиенты. Причем клиенты тут находятся в заведомо проигрышном положении, так как для закрытия уязвимости исправления должен установить хостер.
Из процессоров уязвимы только Intel и ARM, продукция AMD данной уязвимости не подвержена.
Коротко о Spectre
Если Meltdown — уязвимость достаточно простая и понятная, то Spectre гораздо глубже и до сих пор полностью не изучена. Она также связана со спекулятивным выполнением, но с другим его механизмом — блоком прогнозирования ветвлений, проще говоря, если код пять раз выполнился по ветви A, то в шестой раз процессор, не дожидаясь данных исполнит код по этой ветви. Злоумышленник может при помощи специального кода обучить этот блок таким образом, что когда придет запрос от атакуемой программы, то она будет предварительно выполнена по заложенному им сценарию и когда неудачные данные будут отброшены, то в кеше окажется интересующая его информация.
Обнаружить такие атаки крайне сложно, так как они не изменяют никаких данных, а только читают их, следовательно, не вызывают сбоев или ошибок и вообще не выделяются аномальной активностью. При этом уязвимы практически все современные процессоры: Intel, AMD, ARM, с последними ситуация осложняется тем, что сама ARM процессоров не производит, продавая лицензию и документацию, поэтому разновидностей этого семейства существует великое множество и уязвимы они могут быть в разной степени.

Насколько все плохо?
На первый взгляд может показаться, что все пропало и все мы находимся в списке потенциальных жертв. Но, если взглянуть на проблему трезво, то станет ясно, что Meltdown и Spectre — это локальные уязвимости. Их нельзя использовать удаленно, с их помощью нельзя получить доступ к системе либо как-то нарушить ее работу. Их можно эксплуатировать только легально запустив на целевом узле программный код.
Первое, что приходит на ум — это виртуалки, выше мы рассматривали этот сценарий. Но и на локальной системе легально запустить код в общем-то не сложно, достаточно специально написанного java-скрипта встроенного в сайт самого безобидного содержания. Однако такая возможность активно устраняется разработчиками браузеров.
Ну и никто не отменял классического вредоносного ПО, потому что практика показывает, что если пользователь хочет запустить какой-то файл, то он это сделает, несмотря на все уровни защиты системы и наличие в ней антивирусов. Эпидемии шифровальщиков отличное тому подтверждение.
Но в остальном, если на вашей системе нет возможности легально запускать сторонний код, то непосредственного риска от данных уязвимостей нет. Если у вас внутри периметра находятся рабочие сервера, на которых крутится только известное и проверенное ПО, то реальных сценариев атаки с помощью Meltdown и Spectre остается крайне немного — разве что вы сами запустите сторонний код.
Также на сегодняшний день не зафиксировано реального использования данных уязвимостей, что связано с высокой сложностью их реализации и крайне высокими требованиями к квалификации. С одной стороны, хорошо, что условный Джон Смит, Вася Пупкин или Чжан Сань не смогут на коленке собрать троян, ворующие пароли к онлайн-банку, но плохо то, что если такое ПО будет реализовано, то его уровень будет гарантированно высоким.
Исправления и производительность
Так как уязвимость аппаратная, то устранить ее без замены процессора невозможно физически, все существующие патчи устраняют возможность эксплуатации уже обнаруженных уязвимостей программным методом. На сегодняшний день выпущены как обновления микрокода CPU, так и программные заплатки для всех актуальных систем и это, вполне ожидаемо, привело к снижению производительности. Общая оценка снижения: от 10 до 30%.
Intel провела собственные исследования, согласно которым в большинстве задач на системах c SSD и процессорами 8-го поколения (Kaby Lake, Coffee Lake) падение производительности составило около 6%, на более старых процессорах и системах с HDD значение оказалось немного более высоким — около 10%. Однако есть задачи, на которые негативное влияние более существенно:
Тест, который показал наибольшее снижение производительности — SYSMark 2014 SE Responsiveness. Он показал, что производительность снижается на величину до 21% для рабочих нагрузок, таких как запуск приложений, запуск файлов, просмотр веб-страниц с несколькими вкладками, многозадачность, копирование файлов, шифрование и сжатие файлов, а также установка фонового приложения.
Исполнительный вице-президент Microsoft по Windows Терри Маерсон (Terry Myerson) в официальном блоге привел также различные данные:
На компьютерах под управлением Windows 10 на современных процессорах (относящихся к поколениям 2016 года или более новым, то есть Skylake, Kabylake и более новые), тесты продемонстрируют замедление от силы на единицы процентов, которое подавляющее большинство пользователей не сможет заметить, так как в абсолютных величинах разница будет измеряться миллисекундами.
Компьютеры с Windows 10 на относительно старых процессорах (относящихся к поколениям до 2015 года включительно, Haswell и более старые) в некоторых тестах могут показать более значительное падение производительности, возможно некоторые пользователи смогут его заметить.
Производительность систем под управлением Windows Server на любых процессорах заметно пострадает, особенно на приложениях, интенсивно использующих ввод-вывод, при активации изоляции недоверенного кода.
В Linux ситуация также обстоит не лучшим образом, исследования показывают падение производительности в пределах 5-30%. Довольно подробные исследования провели специалисты RedHat, их результаты во много перекликаются с предыдущими исследованиями:
Наибольшее проседание производительности (8-20%) наблюдается в работе СУБД на нагрузках OLTP, при случайном доступе к прокэшированной памяти, при активном буферизированном вводе/выводе, при большой интенсивности переключения контекста между ядром и пользовательским уровнем (выполнение системных вызовов). Большие потери наблюдаются в тестах tpc, sysbench, pgbench, netperf (до 256 байт) и fio (случайный доступ к памяти NvME).
Падение производительности на 3-7% отмечается при выполнении аналитических запросов в СУБД, в системах поддержки принятия решений (DSS) и в Java VM, в моменты интенсивного обмена информацией по сети или при обращениях к диску.
Снижение производительности на 2-5% наблюдается в решениях HPC (High Performance Computing) при большой вычислительной нагрузке на CPU.
Как видим, менее всего пострадали обычные рабочие станции и домашние ПК, в большинстве задач их пользователи могут совсем не заметить разницы. Для того, чтобы не быть голословными мы провели тестирование своей настольной системы с включенной и выключенной защитой от Meltdown и Spectre. Как и ожидалось, для процессора 4-го поколения i5-4670 (Haswell) потеря производительности составила около 10%.

При этом различные показатели производительности системы пострадали примерно равномерно, разве что практически не затронуло работу с ОЗУ.

При этом в большинстве повседневных задач такое снижение практически не ощущается, поэтому можно сказать, что большинство пользователей, которые используют ПК для домашних или офисных нужд не должны почувствовать каких-либо ухудшений.
Но этого нельзя сказать про профессиональные применения, на этой же рабочей станции мы обнаружили сильное падение производительности дисковой подсистемы, которая выразилась в сильном увеличении времени отклика и росте очереди при операциях записи большого объема информации (например, при постановке виртуальных машин на паузу) или активном случайном доступе.
Также достаточно сильно страдают операции с СУБД, начиная от внутренней базы 1С и заканчивая PostgreSQL и MS SQL, особенно это заметно на операциях переиндексации и реструктуризации, а также выгрузки-загрузки дампов (где дополнительно сказывается снижение производительности дисковой подсистемы).
Промежуточные выводы
Однозначно что-то советовать в данной ситуации нельзя, следует трезво взвесить все риски и выбрать наиболее оптимальное решение. Однозначно не следует отключать защиту, если вы предоставляете услуги хостинга, либо не контролируете запуск и выполнение стороннего кода на ваших серверах (виртуальные и терминальные среды, в которых работают пользователи).
Рабочие станции находятся в группе риска, однако он невелик, на текущий момент (осень 2018) нет известного вредоносного ПО, которое бы использовало данные уязвимости. Однако если вы не испытываете проблем с производительностью, то мы бы также не советовали отключать защиту.
А вот на серверах приложений и СУБД, а также в тестовых виртуальных средах защиту будет лучше выключить, риски в данном случае близки к нулю, а производительность страдает значительно, особенно если у вас не самое свежее железо.
В любом случае хорошо все обдумайте, а только потом действуйте, также будет неплохо выполнить объективный замер производительности с включенной и выключенной защитой, после чего еще раз оценить принятое решение.
Включаем / выключаем защиту от Meltdown и Spectre в Windows
Сразу хотим обратить ваше внимание, что описанные ниже методы работают только в том случае, если вы установили все требуемые обновления, в противном случае вносимые изменения не дадут никакого результата. Проще говоря, если патчи не стоят, то от правки реестра защита не включится. Полный список необходимых обновлений можно найти в официальной статье.
Для включения отключения защиты следует воспользоваться правкой реестра, официальные рекомендации Microsoft предлагают следующие варианты:
Отключение защиты от Meltdown и Spectre
reg add "HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Session Manager\Memory Management" /v FeatureSettingsOverride /t REG_DWORD /d 3 /f
reg add "HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Session Manager\Memory Management" /v FeatureSettingsOverrideMask /t REG_DWORD /d 3 /f
Включение защиты от Meltdown и Spectre
reg add "HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Session Manager\Memory Management" /v FeatureSettingsOverride /t REG_DWORD /d 0 /f
reg add "HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Session Manager\Memory Management" /v FeatureSettingsOverrideMask /t REG_DWORD /d 3 /f
Отключение защиты только от Spectre (актуально для AMD)
reg add "HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Session Manager\Memory Management" /v FeatureSettingsOverride /t REG_DWORD /d 1 /f
reg add "HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Session Manager\Memory Management" /v FeatureSettingsOverrideMask /t REG_DWORD /d 1 /f
Включение защиты только от Spectre
reg add "HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Session Manager\Memory Management" /v FeatureSettingsOverride /t REG_DWORD /d 0 /f
reg add "HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Session Manager\Memory Management" /v FeatureSettingsOverrideMask /t REG_DWORD /d 1 /f
После применения изменений компьютер следует перезагрузить. Если вы не хотите возиться с реестром, то можно воспользоваться специальной утилитой InSpectre, которая позволяет выяснить статус защиты вашей системы, влияние ее на производительность, а также включать и отключать ее.

Запутаться в ней решительно негде, если какие-то методы защиты недоступны (не установлены патчи) или неприменимы (защита от Meltdown на AMD), то связанные с ними кнопки будут неактивны. После применения изменений также потребуется перезагрузка.
Включаем / выключаем защиту от Meltdown и Spectre в Linux
Также, как и в Windows описанные ниже методы будут работать только если вы обновили свою систему и установили все необходимые патчи. Ознакомиться с текущим состоянием защиты можно на официальных сатах используемых вами дистрибутивов, например, для Debian или Ubuntu. Если коротко, то изменения сводятся к включению опции Kernel Page Table Isolation (PTI), которая как раз негативно влияет на производительность и пачту от Google — retpoline, влияние которого на систему крайне незначительно.
Прежде всего выясним текущий статус защиты, в системах Debian / Ubuntu для этого можно воспользоваться пакетом spectre-meltdown-checker.
Проще всего владельцам Ubuntu 18.04, для установки пакета им достаточно набрать:
apt-get install spectre-meltdown-checker
В Debian 9 потребуется сначала подключить репозиторий stretch-backports, для этого выполним команду:
add-apt-repository "deb http://ftp.debian.org/debian stretch-backports main"
Затем обновим список пакетов и установим нужный нам пакет с прямым указанием репозитория:
apt-get update
apt-get install -t stretch-backports spectre-meltdown-checker
Для Ubuntu 16.04 и Debian 8 проще всего будет скачать пакет вручную (первая команда сменит текущую директорию на домашнюю):
cd ~
wget http://ftp.ru.debian.org/debian/pool/main/s/spectre-meltdown-checker/spectre-meltdown-checker_0.39-1~bpo9+1_all.deb
И установить его командой:
dpkg -i spectre-meltdown-checker_0.39-1~bpo9+1_all.deb
Теперь запустим проверку, так как выводится достаточно большое количество информации для удобства сразу перенаправим вывод утилите more:
spectre-meltdown-checker | more
На экране вы должны увидеть примерно следующее:
![]()
Как видим, наша система (в данном случае Debian 9.5) защищена от уязвимостей, PTI включен.
Для отключения, негативно влияющего на производительность PTI, необходимо добавить специальную опцию загрузки. Для этого откроем /etc/default/grub и найдем там параметр GRUB_CMDLINE_LINUX_DEFAULT, в кавычках расположены опции данного параметра, в самый их конец, через пробел, добавим nopti, например, в Debian 9 у вас должно получиться:
GRUB_CMDLINE_LINUX_DEFAULT="quiet nopti"
Сохраним файл и обновим загрузчик:
update-grub
Перезагрузимся и вновь запустим проверку:
![]()
Как видим, система стала уязвима к Meltdown (Variant 3), но осталась защищена от Spectre Variant 1 и 2, потому что для защиты от них используется retpoline, который не вызывает снижения производительности.
Заключение
Надеемся, что после прочтения данной статьи вы будете лучше представлять, что такое Meltdown и Spectre, какие угрозы они несут и как от них можно защититься. Также сможете правильно оценить степень риска именно для вашей системы и принять правильное решение по включению или отключению защиты.
Следует помнить, что любая безопасность имеет свою стоимость и если она оказывается дороже, чем возможный ущерб от ее отсутствия, то такой уровень безопасности явно является чрезмерным. Поэтому любые решения следует принимать на основе объективных показателей и здравого смысла, а не под воздействием медийного шума.
Научиться настраивать MikroTik с нуля или систематизировать уже имеющиеся знания можно на углубленном курсе по администрированию MikroTik. Автор курса, сертифицированный тренер MikroTik Дмитрий Скоромнов, лично проверяет лабораторные работы и контролирует прогресс каждого своего студента. В три раза больше информации, чем в вендорской программе MTCNA, более 20 часов практики и доступ навсегда.
Помогла статья? Поддержи автора и новые статьи будут выходить чаще:
![]()
![]()
Или подпишись на наш Телеграм-канал: