Meltdown и spectre что это
Перейти к содержимому

Meltdown и spectre что это

  • автор:

Разбираемся с Meltdown и Spectre: что нужно знать о новых уязвимостях, которые обнаружены практически во всех CPU

Похоже, производители процессоров получили серьезный удар: за несколько дней все новостные сайты заговорили сразу о двух хардварных уязвимостях под названием Meltdown и Spectre. Должен сказать, что это очень горячая неделя, какую давно не видели в технологической отрасли. Но не буду спешить, так что разберемся со всем по порядку.

Исследователи безопасности, работающие в группе Google Project Zero, наряду с другими исследовательскими группами и академическими институтами, обнаружили ряд угроз безопасности, связанных с спекулятивным выполнением. Спекулятивное выполнение является одним из краеугольных камней высокой производительности современных процессоров и, по существу, все процессоры имеют более высокую производительность, чем встроенный микроконтроллер. В результате практически каждый современный высокопроизводительный процессор на рынке, выпущенный за последние несколько десятилетий, уязвим для одного или более эксплойтов.

В данный момент главную опасность представляет эксплойт, называемый Meltdown. Он затрагивает в первую очередь процессоры Intel, хотя есть подтверждение об уязвимости нескольких процессоров ARM. С помощью Meltdown вредоносный код может злоупотреблять реализациями спекулятивного выполнения Intel и ARM, что приведет к утечке информации из других процессов — напрямую из всезнающего ядра операционной системы. В результате Meltdown можно легко использовать для отслеживания других процессов и похищения информации, которая должна быть изолирована ядром, другими программами или другими виртуальными машинами.

Между тем второй тип эксплойта называется Spectre, а число процессоров, подверженных риску эксплуатации, еще шире. По сути, каждый высокопроизводительный процессор, когда-либо созданный — Intel, AMD, ARM и POWER — считается уязвимым. Подобно Meltdown, атака Spectre злоупотребляет спекулятивным выполнением, чтобы получить информацию, которая должна быть изолирована. Однако особенность Spectre заключается в том, что это более сложная и гораздо коварнейшая атака; в то время как Meltdown основан на злоупотреблении конкретной реализацией спекулятивного выполнения, Spectre можно рассматривать как (ранее неизвестную) фундаментальную уязвимость спекулятивного исполнения, которую теперь можно использовать для атак. Spectre требует больше усилий по подготовке, чтобы принудить целевое приложение к утечке информации, но фундаментальная природа риска означает, что уязвимость Spectre намного сложнее устранить, и она еще не полностью исследована.

Meltdown разрушает наиболее фундаментальную изоляцию между приложениями и операционной системой. Эта атака позволяет программе получить прямой доступ к памяти, а значит к секретным данным других программ и оперативной системы.

Если процессор вашего компьютера подвержен уязвимости, и вы пользуетесь непропатченной операционной системой, работать с секретной информацией небезопасно. Высок шанс утечки информации. Это касается как персональных компьютеров, так и облачной инфраструктуры. К счастью, выпущены софтварные патчи для защиты от Meltdown.

Spectre нарушает изоляцию между различными приложениями. Это позволяет атакующему получить данные даже из программ, которые соблюдают все правила безопасности и работают без ошибок. Фактически, проверки безопасности упомянутых программ увеличивают поверхность атаки и могут сделать приложения более восприимчивыми к Spectre. Эксплойт Spectre применить более сложно, чем Meltdown, однако нивелировать угрозу такой атаки, соответственно, намного сложнее. Тем не менее возможно предотвратить некоторые уже известные варианты эксплойта установкой последних софтварных патчей.

Поспешный релиз не раскрыл всю ситуацию

В информационное пространство обрушился не спланированный поток новостей о Meltdown и Spectre, и в результате исследователи, поставщики hardware и software, да и общественность в целом пытались понять, что же произошло и что с этим делать. Теперь мы знаем, что упомянутые уязвимости были обнаружены прошлым летом, с тех пор вектор действий поставщиков и исследователей безопасности нацелен на понимание последствий эксплойтов и разработку необходимых исправлений и рекомендаций. Было принято решениео том, что информация о Meltdown и Spectre не должна публиковаться до вторника, 9 января – даты выхода первого патча этого года.

Вместо этого произошло следующее: поскольку исправления для эксплойтов были зафиксированы в хранилище ядра Linux, у пользователей возникло подозрение, что произошло что-то серьезное. В связи с быстрым развитием всевозможных спекуляций на этой почве, поставщики софта и железа перенесли дату оповещения общественности и выпуска патчей на 3 января. Результат преждевременной публикации, как и можно было ожидать, был несколько случайным: я внимательно прочитал различные источники и вижу, что даже теперь не все опубликовали советы (или, зачастую, не опубликованы полный список рекомендаций).

В результате я все еще собираю информацию, и, вероятно, к тому времени, когда я закончу писать, что-то в этой статье будет устаревшим или неправильным. Но на данный момент это все, что мы знаем с момента релиза новостей.

НЕ ПАНИКУЙ

Говорят, что, несмотря на множество вопиющих (а иногда и фатальных) неточностей, путеводитель «Автостопом по Галактике» превзошел по популярности «Галактическую Энциклопедию», потому что он немного дешевле и потому, что имеет слова «НЕ ПАНИКУЙ», написанные большими веселыми буквами на обложке.

Прежде чем погрузиться в некоторые из глубоких технических аспектов Meltdown и Spectre, я думаю, что лучше начать с обзора сложившейся ситуации на более высоком уровне. Это включает в себя риски, связанные с новыми эксплойтами, как с ними бороться, и что отдельные пользователи должны делать (если есть такая возможность) перед лицом опасности.

Для начала хорошая новость: если вы не поставщик облачных услуг, непосредственный риск от этих атак очень низок. Плохая новость заключается в том, что, поскольку эти эксплойты основаны на уязвимости hardware, потребуется некоторое время для исправления. И есть очень много устройств, на которых работает множество различных ОС, и все это необходимо исправлять.

Что нам известно:

Это локальные атаки: и Meltdown, и Spectre — локальные атаки, требующие выполнения вредоносного кода на целевой машине. Это означает, что эти атаки не являются (напрямую) атакой удалённого запуска кода – как были Nimda или Code Red – а значит, системы нельзя атаковать, просто подключившись к сети. Понятно, что они ближе к атакам эскалации привилегий, классу атак, которые помогают глубже проникнуть в систему (к которой у вас уже есть доступ). Однако, исследователи показали, что они могут выполнять атаки на основе Spectre, используя JavaScript, поэтому веб-браузер может запустить вредоносный файл JavaScript, и таким образом позволить атаку.

Это read-only атаки (доступ к информации). Хотя мы и упомянули, что атаки не могут быть проведены удаленно, в случае если Meltdown и Spectre удалось запустить в локальной системе, характер эксплойта заключается в том, что это read-only атаки. То есть, все что они могут – это прочитать информацию из системы. Они не могут напрямую принудительно произвести выполнение кода в ядре ОС, других виртуальных машинах или других программах. И все же атаки раскрытия информации могут быть очень разрушительными в зависимости от того, какая информация получена. Всегда есть риск использования этой информации для проведения успешной атаки уже путем выполнения кода, а значит, угроза все же существует. Но реальный риск заключается именно в использовании этих уязвимостей злоумышленниками для похищения информации, а не для контроля над системой.

Чем является / не является обнаруженная уязвимость:

— способ, с помощью которого злоумышленник может наблюдать содержимое привилегированной памяти, обходя существующие уровни привилегий
— вредоносный код, использующий уязвимости и запущенный локально, способен получить критическую информацию, такую как пароли и ключи шифрования.

— атака отключения сервисов
— сетевая атака
— способ инъекции измененного кода или подмены содержимого памяти.

В основном это угроза для распределенных сред размещения. Учитывая вышеизложенное, эти атаки наиболее опасны для общедоступных хостинговых сред, где несколько пользователей могут выполнять код в одной системе. В результате провайдеры облачных сервисов, такие как Amazon и Microsoft, уже принимают меры по защите своих сервисов от атак. Отдельные системы и устройства, в сравнении с облачными, имеют гораздо меньший практический риск. Злоумышленнику по-прежнему необходимо запустить вредоносный код в отдельной системе, прежде чем он сможет начать атаку; но если злоумышленник все же сможет это сделать, то указанная отдельная система окажется в очень незавидном положении.

Защититься от Meltdown и Spectre можно софтварно: поскольку корень проблемы Meltdown и Spectre находится на аппаратном уровне, в идеале, это оборудование стоило бы заменить. Однако замена всех систем, выпущенных за 20 лет уж никак не выглядит привлекательной затеей. Как и другие ошибки процессора, ее можно смягчить комбинацией микрокода процессора и обновлений операционной системы. Поставщики, такие как Microsoft, Apple и дистрибутивы Linux, уже находятся в процессе развертывания этих исправлений, в том числе мы наблюдали ультра-редкое внеплановое обновление от Microsoft в среду вечером.

… но это займет некоторое время: однако, поскольку информация об эксплоите была выпущена раньше запланированного, не все меры обеспечения безопасности будут готовы. Полнный комплекс мер требует как обновления программного обеспечения, так и микрокодов. Как отметила Intel, усилия по смягчению последствий потребуют нескольких дней и недель.

Защита от Meltdown будет иметь влияние на производительность: в двух словах, меры по защите от Meltdown включают в себя лучшее разделение программ пользовательского пространства от ядра ОС. В результате переключение контакта между пользовательским пространством и ядром происходит с серьезными задержками. Однако фактическое влияние этого процесса на производительность будет зависеть от рабочей нагрузки и архитектуры процессора.

Это плохая неделя для Intel: Intel является доминирующим поставщиком ЦП для провайдеров облачных услуг, которые, в свою очередь, подвергаются наибольшему риску от Meltdown и Spectre. В сочетании с тем фактом, что Intel гораздо сильнее подвержена влиянию более насущной угрозы Meltdown, чем любой другой поставщик, означает, что клиенты высокооплачиваемых серверов Intel в первую очередь оказываются в зоне риска таких атак. А это, в свою очередь, плохо отражается на репутации Intel.

Касательно процессоров, уязвимых к атаке: Intel подтвердила, что это все Core-based архитектуры, включая первое поколение (Nehalem). Стоит обратить внимание, что нельзя исключать и более ранние процессоры.

Для AMD эта неделя получше (но тоже не подарок): AMD, наоборот, имеет и хорошие новости.

Если говорить коротко, их процессоры не уязвимы для атак Meltdown – и это единственный поставщик среди Big 3, которого разрушительная новость обоша стороной. Учитывая, что Meltdown является более насущным риском, это означает, что AMD и ее пользователи несут риски несравнимо меньшие, чем пользователи Intel. Однако процессоры AMD по-прежнему уязвимы для атак Spectre, и в долгосрочной перспективе все еще остается слишком много неизвестных моментов: насколько опасен Spectre, и насколько вообще возможно от него защититься.

И что неизвестно:

Когда полные обновления для защиты будут доступны для каждой платформы: как отмечалось выше, развертывание обновлений для защиты от эксплойтов займет несколько дней или недель. С точки зрения ПК, обновление Microsoft — это всего лишь одна часть головоломки, хотя, возможно, самая важная, поскольку она может снизить риск Meltdown без обновления микрокода. Однако мы все еще ожидаем обновления микрокодов, чтобы повысить защиту от Spectre на процессорах Intel (это в равной мере касается процессоров AMD).

С другой стороны, Google объявила о том, что они уже выпустили обновления Android с рекомендованными ARM защитными мерами для поддерживаемых устройств Nexus и Pixel, но эти обновления не содержат всех необходимых исправлений для ядра Linux.

Наши меры безопасности:

Мы принимаем комплекс мер, чтобы предоставить наиболее безопасные платформы. Это включает в себя комбинацию из патчей для операционных систем и прошивок, разработанных в сотрудничестве с партнерами по индустрии, поставщиками операционных систем и OEM поставщиками.

Ожидается, что весь комплекс защитных мер будет доступен для пользователей в период от нескольких дней до нескольких недель.

Неясно, как повлияют такие меры безопасности на производительность: возвращаясь к вопросу комплекса мероприятий по защите от Meltdown, неясно, каково будет влияние на производительность. Чисто теоретически, отдельные операции и рабочие нагрузки могут быть замедлены на 30%, но в значительной степени это будет зависеть от того, насколько часто задача переключается на ядро. На практике все же ожидается, что средний эффект в реальности менее «пагубный», особенно для пользователей настольных компьютеров. А вот пользователям серверов (что касается производительности) менее повезло.

Между тем влияние на производительность защит от Spectre практически неизвестно, отчасти потому, что поиск защиты от Spectre продолжается. Основываясь на том, что опубликовали поставщики оборудования, воздействие должно быть минимальным.

С нашей стороны, мы все еще ждем обновление микрокода, и даже после этого нам прийдется методом проб и ошибок выяснять все возможные последствия. Это определенно то, во что нам стоит в будущем углубиться в стиле AnandTech, как только будут получены все необходимые обновления.

Наконец, со своей стороны, группа Azure от Microsoft опубликовала свои собственные данные в рекомендациях для клиентов, отметив, что влияние на производительность весьма незначительно.

Большинство пользователей Azure не увидят заметного влияния на производительность после обновления. Мы работали над оптимизацией путей передачи данных между процессором и диском и не обнаружили особого влияния на производительность после того, как исправление было применено. Хотя некоторые клиенты все же могут столкнуться с некоторым падением производительности сети.

До сих пор неясны масштабы угрозы уязвимости Spectre: в то время как Meltdown — это более насущная угроза, уже ясно, как это работает и что нужно сделать для защиты. Spectre, однако, попросту переменная с неизвестным значением. Существует множество доказательств таких атак, но, в более широком смысле, атаки Spectre — это новый класс атак, не совсем похожих на то, что мы встречали ранее. В результате никто не уверен, что полностью понимает возможные последствия применения эксплойта. Существует риск того, что атаки Spectre могут использоваться гораздо более широко, чем мы себе это представляем.

Также неясно, насколько вообще можно защититься от Spectre. Не понимания всего диапазона применения Spectre, до конца не понятны и способы защиты от него. Исследователи, работающие над уязвимостью, совсем не уверены в том, что для полного решения проблемы обновлений программного обеспечения или микрокода будет достаточно. Скорее на данный момент эти меры должны рассматриваться как временные решения. Конкретные уже известные типы атак Spectre могут быть предотвращены, но защита может оказаться бесполезной против других атак Spectre. Это та область, требующая гораздо больше исследований.

Что могут пользователи сделать сейчас?

Наконец, возникает вопрос, какие меры предпринять владельцам компьютеров и гаджетов перед лицом угрозы атаки Meltdown и Spectre. Фундаментальная уязвимость, которая допускает атаки спекулятивного выполнения, находится в самом hardware, поэтому проблема не может быть действительно решена без замены устройств. Единственное, что можно сделать прямо сейчас, — это снизить угрозу с помощью программных и микрокодовых патчей, которые пытаются хоть как-то закрыть дыру в безопасности.

Кумулятивное обновление Windows 10 Version 1703 для x64 систем (KB4056891)

Была обнаружена проблема с безопасностью в продуктах Microsoft, которая может влиять на вашу систему. Вы можете помочь нам защитить вашу систему, установив обновление от Microsoft. Чтобы просмотреть полный список исправлений, обратитесь к соответствующей главе в Базе Знаний Microsoft. После установки обновления понадобится перезагрузка.

Ответ на вопрос «что же делать пользователю» как бы простой, но не особо полезный: мало что можно сделать в принципе. Обновления программного обеспечения и микрокода для защиты от этих эксплойтов будут распространяться обычным путем, поэтому обновление ваших систем и мобильных устройств до последней версии ОС — самый важный шаг, который можно предпринять. Как упоминалось ранее, все поставщики уже выпустили или находятся в процессе развертывания необходимых обновлений программного обеспечения. Но в случае, если для атаки будет применен специально разработанный узконаправленный инструмент, пользователю попросту будет нечем защититься. Задача производителей как можно быстрее найти решение данной проблемы.

И напоследок

Обязательно держите себя в курсе событий, читайте дополнительную информацию об этих атаках. В частности, я хочу продолжить изучение важности спекулятивного выполнения и почему атака на него может иметь существенные последствия для проектирования ЦП. Спекулятивное выполнение — довольно важная функция для повышения производительности на современных процессорах, но, как показали эти атаки, даже (казалось бы) идеально реализованная, она имеет некоторые нерешенные проблемы с безопасностью, что в нынешнюю эпоху вычислений, увы, неприемлемо.

Необходимо глубже рассматривать Meltdown и Spectre, и, хотя обе они являются атаками на спекулятивное исполнение, представляют собой очень разные виды атак. Сейчас Meltdown является самой большой проблемой из-за его относительной простоты в использовании. Но, как отмечают авторы публикации о Spectre, Spectre — более фундаментальная уязвимость, которая останется с нами надолго. Нам еще предстоит увидеть, что это означает для безопасности систем. А с точки зрения компьютерной науки, я ожидаю, что эти открытия окажут большое влияние на всю разработку будущих процессоров.

На правах рекламы. Успейте воспользоваться в новом году интересным предложением и получить скидку в размере 25% на первый платеж при заказе на 3 или 6 месяцев!

Это не просто виртуальные серверы! Это VPS (KVM) с выделенными накопителями, которые могут быть не хуже выделенных серверов, а в большинстве случаев — лучше! Мы сделали VPS (KVM) c выделенными накопителями в Нидерландах и США (конфигурации от VPS (KVM) — E5-2650v4 (6 Cores) / 10GB DDR4 / 240GB SSD или 4TB HDD / 1Gbps 10TB доступными по уникально низкой цене — от $29 / месяц, доступны варианты с RAID1 и RAID10), не упустите шанс оформить заказ на новый тип виртуального сервера, где все ресурсы принадлежат Вам, как на выделенном, а цена значительно ниже, при гораздо более производительном «железе»!

  • Блог компании ua-hosting.company
  • Информационная безопасность
  • Системное администрирование

Meltdown и Spectre: что нужно знать о самой масштабной уязвимости процессоров

В начале недели ряд СМИ распространили неофициальную информацию об уязвимости процессоров Intel. Издания сообщили, что о проблеме уже известно как минимум два месяца, и разработчики работают над ее исправлением: например, выпуск обновлений для основных операционных систем, включая Linux, Windows и macOS.

В ответ на появление подобной информации компании-производители чипов и операционных систем начали распространять официальные подробности об уязвимости. Проблема оказалась куда серьезнее — атакам подвержены не только процессоры Intel, но и других компаний, а на устранение ошибок потребуется определенное количество времени. Редакция AIN.UA рассказывает о масштабной проблеме процессоров.

Что это за уязвимость?

Исследователи опубликовали официальный документ о двух главных ошибках, которым подвержены почти все современные процессоры. Это проблема не с самими физическими деталями, а с их архитектурой. В современных процессорах в некоторых местах — например, ядре — информация содержится в незашифрованном виде. Впрочем, она защищена от стороннего вмешательства и от наблюдения со стороны других процессов и приложений.

Исследователи определили два типа техник — Meltdown («Крах») и Spectre («Призрак») — с помощью которых можно обходить эту защиту и узнавать почти все данные, которые обрабатывает компьютер: пароли, зашифрованную информацию и так далее.

Meltdown нарушает барьер между приложениями и внутренней памятью операционной системы и позволяет получить данные, которые хранятся в памяти ОС. Spectre же позволяет одному приложению получить информацию другого. Как отмечает TechCrunch, Spectre намного сложнее в исполнении, но в то же время эту уязвимость сложнее искоренить.

Кто подвержен уязвимости?

Почти все современные устройства. Ошибки, к примеру, были найдены в процессорах Intel, произведенных в 2011 году. TechCrunch предполагает, что уязвимости могут быть подвержены все процессоры компании, созданные с 1995 года. Так как Meltdown и Spectre действуют на архитектурном уровне, не имеет значения, на какой ОС работает устройство — Windows, MacOS или Android — все платформы уязвимы.

Следовательно, под угрозой могут оказаться огромное количество устройств. Уязвимость нашли не только в процессорах Intel — также проблема есть и у чипов от AMD и ARM. Представители последней признали наличие уязвимости в процессорах из серии Cortex-A (в нее входят чипы смартфонов Apple), но добавили, что ошибки не были обнаружены в чипах серии Cortex-M, которые используются в IoT-устройствах.

Как компании будут решать эту проблему?

TechCrunch обращает внимание, что многие устройства «уязвимы» к этим техникам, но это не означает, что они полностью не защищены от атак. Пока что настоящие атаки с помощью Meltdown и Spectre не были зафиксированы. Intel, AMD и ARM знают об этой проблеме уже несколько месяцев и за это время могли предпринять определенные меры.

Meltdown можно исправить, усовершенствовав защиту ядра процессора. Но как сообщалось ранее, такое решение может снизить скорость его работы — на 5-30%. Что касается Spectre, то из-за сложностей в исправлении ошибки компаниям понадобится время, чтобы прийти к каким-либо решениям. Скорее всего, производители ПО будут выпускать обновления, чтобы защитить пользователей от наиболее вероятных атак, связанных со Spectrum.

Некоторые компании уже выпустили обновления, направленные на исправление уязвимости Meltdown. Microsoft выпустила экстренное обновление Windows 10, несколько патчей выпустили разработчики Linux. СМИ сообщали, что Apple частично исправила проблему с обновлениемMacOS 10.13.2.

От уязвимости могут пострадать и провайдеры облачных услуг. Microsoft Azure и Amazon AWS уже также начали проводить обновления.

Неужели о проблеме никто не знал раньше?

Знали. Как оказалось, команда Google Project Zero сообщила о проблеме производителям еще в прошлом 2017 году. Компании начали проводить обновления своих систем, но рассказывать о проблеме публично никто не стал. По предварительным данным, большой анонс должен был пройти 9 января, но СМИ узнали о проблеме раньше, что и послужило причиной большого скандала: акции компании Intel обвалились на несколько пунктов, все мировые СМИ написали об одной из самых массовых проблем в истории производства чипов.

Что мне делать?

Как обычно, производители советуют устанавливать все последние обновления для своих операционных систем — это позволит закрыть брешь в безопасности компьютера. Все это может занять некоторое время, но другого выхода сейчас нет. Также TechCrunch пишет, что решить проблему полностью скорее всего не удастся, так как она весьма серьезная. Скептики уже отметили, что одним из лучших вариантов станет замена гаджета, но спешить его покупать пока не стоит.

Ранее AIN.UA рассказывал о крупной уязвимости в протоколе шифрования беспроводных сетей WPA2.

Чем опасны процессорные уязвимости Spectre и Meltdown и как с ними бороться

Чем опасны процессорные уязвимости Spectre и Meltdown и как с ними бороться

Современные процессоры имеют некоторые ошибки, из-за которых может произойти утечка информации — уязвимости

Такие уязвимости довольно распространенное явление. Как защититься от них — рассмотрим в рамках данной статьи. Также разберем основные аспекты Spectre и Meltdown.

Процессорные уязвимости — что это?

Прежде чем разбирать функционал Spectre и Meltdown, необходимо поговорить про процессорные уязвимости и выяснить что это такое. Когда еще только идет этап проектирования процессора, могут случайно возникнуть определенные ошибки. Они могут использоваться как лазейка для мошенников с целью получения доступа к личной конфиденциальной информации.

Чтобы осуществить требуемые логические операции и достичь максимального уровня производительности ЦП, разработчики используют транзисторы в минимально возможном количестве. В этом случае безопасность данных несовершенна и имеет много своеобразных уязвимостей. Чтобы их закрыть нужен довольно большой транзисторный бюджет. Соответственно, это не только увеличит затраты на производство, но и усложнит установку чипов. Это крайне невыгодно в условиях множества конкурентных преимуществ на современном рынке. Поэтому, игнор таких уязвимостей производителями происходит осознанно, хоть они и понимают всю опасность ситуации.

Суть Spectre и Meltdown

Группа аппаратных уязвимостей Spectre представляет серьезную опасность, так как стопроцентной защиты от них не существует. Они воздействуют на самые распространенные марки ЦП: АМD, Intel и частично ARM. Meltdown устройства АМD не подвержены, опасность есть только для Intel и некоторых ARM.

Принцип их работы заключается в том, что с помощью них одни программы могут украсть данные у других ПО. Это происходит незаметно для пользователей и разрешения не требует.

При наличии Meltdown может произойти кража информации из самого ядра ОС, который по сути является самым защищенным элементом системы, вторжение куда должно быть недопустимо. Но они являются аппаратными уязвимостями, поэтому и происходит такая ситуация.

На первый взгляд может показаться, что относительно Spectre все намного легче. Ведь взаимодействие в этом случае происходит только между программами, а ядро системы не трогается. Но по мнению специалистов, именно данные процессорные уязвимости намного опаснее, так как нельзя полностью защититься от них.

Опасность уязвимостей

Утечка конфиденциальной информации всегда будет представлять опасность. Ведь это может быть информация банковских карт и счетов, данные доступа (логин, пароль) и т.д. Наверное мало кому захочется, чтобы это все попало в руки злоумышленникам, так как последствия в этом случае не очень благоприятные.

На сегодняшний день специалисты отмечают достаточно высокий рост вредоносных программ, которые действуют при использовании Spectre и Meltdown. Исчисляются они сотнями, что крайне много.

К тому же, пользователь не обязательно может поймать вредителя через скачивание какой-либо информации. Сделать это можно просто зайдя в Интернет браузер и посетить web-сайт. Вредоносные блоки могут быть даже на проверенных платформах (в форме рекламы, например). Кроме того, сейчас действует множество приложений, замаскированные под настоящие ПО, но по факту работающие в отдельном окне браузере с персональными настройками. Поэтому защита от Spectre и Meltdown все же должна быть установлена. Решение, конечно же за вами, но мы настоятельно рекомендуем это сделать.

Кто в ответе за ошибки?

Производители обычно отговариваются, что не видели допущенных ошибок и перед запуском проводили полную техническую проверку. Они утверждают, что если бы ошибки вдруг были обнаружены — их бы уже давно исправили разработчики.

Но в этом осознанно вряд ли кто признается. Компании очень следят за такими “секретами”, чтобы не произошла огласка. Поэтому конкретно виновных в данном случае нет. Обвинить можно всех и никого в частности.

Получить большую производительность устройства хочется всем, но за сам системный механизм отвечают много специалистов и один этап разработки логично вытекает из другого. Поэтому, на решение данной многозадачной головоломки время и силы обычно не тратятся.

Как защититься от Spectre и Meltdown?

Сделать это проще всего владельцам Apple. Нужно выполнить обновление ОС на всех устройствах до macOS 10.13.2, iOS 11.2, tvOS 11.2 и Safari до 11.0.2. Отметим, что устаревшие устройства, не обновленные до указанных версий останутся в зоне уязвимости.

На Android выполнить защиту сложнее. Обновления ОС выпускаются производителями, что не всегда происходит вовремя. Но все же следить за исправлениями необходимо и желательно устанавливать их сразу же.

При использовании Linux, обновление ядра нужно сделать до версии 4.14.11 и выше. Совместно надо обновить и другие ПО с драйверами.

Еще сложнее ситуация обстоит с Windows. Исправления ОС есть только для версий 7 SP1, 8.1 b 10. Плюс для браузеров Edge и Internet Explorer. Установить обновления можно вручную.

После того, как все обновления были успешно загружены — рекомендуем проверить систему на наличие уязвимостей с помощью inSpectre. Не бойтесь, если не обнаружите защиту. Это может быть из-за отсутствия обновлений микрокода ЦП, что зависит от производителя. Не советуем делать это самостоятельно, чтобы не загубить оборудование. В данном вопросе могут помочь специалисты.

Рекомендуем не пренебрегать антивирусными программами. Их также нужно не только установить на ваш ПК, но и своевременно обновлять. То же самое касается и браузеров. Обновления нужно устанавливать до самой последней версии. Чтобы не возникли проблемы совместимости, это рекомендуется сделать до загрузки обновлений операционной системы.

Помимо прочего, желательно все таки стараться не заходить на незнакомые сайты и установить блокировщик рекламы. Скачивать файлы с непроверенных платформ или переходить по ссылкам от подозрительных людей также не рекомендуем.

Таким образом, процессорные уязвимости Spectre и Meltdown хоть и являются непреднамеренным промахом производителей, но при их использовании злоумышленниками можно получить серьезный вред системы. Поэтому рекомендуем по максимуму защитить себя от таких ситуаций и не пренебрегать указанными в статье советами.

  • Все посты
  • HDD и SSD диски (69)
  • KVM-оборудование (2)
  • Powerline-адаптеры (2)
  • Безопасность (4)
  • Беспроводные адаптеры (2)
  • Блоки питания (14)
  • Видеокарты (49)
  • Видеонаблюдение (6)
  • Дисковые полки (2)
  • Звуковые карты (4)
  • ИБП (26)
  • Инструменты (1)
  • Кабели и патч-корды (7)
  • Коммутаторы (13)
  • Компьютерная периферия (43)
  • Компьютеры (49)
  • Контроллеры (6)
  • Корпусы (14)
  • Материнские платы (30)
  • Модули памяти (18)
  • Мониторы (40)
  • Моноблоки (8)
  • МФУ (6)
  • Ноутбуки (37)
  • Общая справка (56)
  • Охлаждение (19)
  • Планшеты (3)
  • Плоттеры (1)
  • Принтеры (6)
  • Программное обеспечение (65)
  • Процессоры (55)
  • Рабочие станции (6)
  • Распределение питания (1)
  • Расходные материалы (1)
  • Ретрансляторы Wi-Fi (3)
  • Роутеры (17)
  • Серверы и платформы (46)
  • Сетевые карты (5)
  • Сетевые фильтры (2)
  • Сканеры (1)
  • СХД (6)
  • Телефония (4)
  • Тонкие клиенты (2)
  • Трансиверы (5)
  • Умный дом (1)
  • Шкафы и стойки (6)

Также вас может заинтересовать

Meltdown и Spectre. Разбираем фундаментальные уязвимости в процессорах

Самый большой подарок всем хакерам преподнесли в новогодние праздники эксперты по безопасности. Они нашли фундаментальные недостатки в архитектуре современных процессоров. Используя эти уязвимости, легко нарушить изоляцию адресного пространства, прочитать пароли, ключи шифрования, номера банковских карт, произвольные данные системных и других пользовательских приложений в обход любых средств защиты и на любой ОС.

Корень проблемы

Изначально в блоге Google Project Zero сообщалось об успешной реализации трех вариантов атаки на кеш процессора:

  • злонамеренная загрузка данных в кеш;
  • обход границ массива;
  • инъекция целевой ветви.

Формально их описали как две сходные уязвимости — Meltdown (первый вариант атаки) и Spectre (второй и третий варианты). Сценарии их практического использования зависят от микроархитектуры ЦП и операционной системы, в разной степени затрагивая производителей железа, облачных провайдеров и сообщество Linux.

Авторы исследования знали о проблеме давно. 1 июня 2017 года они отправили свои отчеты в Intel, AMD и ARM, пообещав не публиковать детали до тех пор, пока разработчики не выпустят патчи. Однако произошла утечка информации, из-за которой им пришлось обнародовать подробности раньше.

Уязвимости имеют много сходных черт на концептуальном уровне. Обе делают возможным проведение атаки по стороннему каналу, используя недостатки физической реализации процессоров. Впервые данный класс атак подробно описал Пол Кёхер (Paul Köcher) еще в 1996 году применительно к популярным криптосистемам. Он также выступил соавтором исследования Meltdown и Spectre.

На сегодня продемонстрировано три базовых сценария использования этих уязвимостей, которые мы подробнее разберем ниже. Важно то, что во всех вариантах конечной целью атак является кеш. Разными уловками процессор вынуждают кешировать значение байта из адреса памяти, недоступного вредоносному процессу.

Обрати внимание: зловред не считывает сами данные (он не может читать кеш в произвольном месте). Вместо этого он вычисляет ошибочно закешированные байты уже в своем адресном пространстве, просто измеряя задержки чтения в разных строках заранее созданного массива.

По сути Meltdown и Spectre — это разновидность атаки по времени. Основная разница между ними состоит в том, как они вызывают кеширование данных из защищенных страниц памяти. Meltdown пользуется задержкой в обработке исключения, а Spectre обманывает блоки предсказания. Чтобы понять эти детали, нужно освежить в памяти базовое устройство процессора.

Бомба замедленного действия

Сама идея внеочередного исполнения инструкций была предложена IBM в 1963 году. Рядовые пользователи столкнулись с ней только в 1995 году, когда появился первый Pentium Pro. С тех пор линейный конвейер канул в Лету, а все современные процессоры используют архитектуру с внеочередным (out-of-order) и одновременно упреждающим (или спекулятивным — speculative) механизмом исполнения команд.

Как же это работает? Для программиста все выглядит просто. Он отправил очередь инструкций на вход и получил ее исполнение на выходе. Однако внутри процессора творится своя магия. Современное процессорное ядро использует многоуровневый конвейер с нелинейными путями. Все входящие инструкции в нем кешируются и декодируются по нескольку штук за такт. Они дробятся на микрооперации, которые переупорядочиваются в собственном буфере (ROB, Re-Order Buffer). Ни одна из них не работает с реальными адресами памяти и физическими регистрами процессора. Блок управления памятью транслирует виртуальные адреса и определяет параметры доступа к ним.

После ROB микрооперации отправляются в станцию резервации, где обрабатываются параллельно на разных исполнительных блоках. Вдобавок современные процессоры используют разные типы кешей для ускорения обработки данных, изначально загружаемых в не слишком быструю оперативную память. Простейший кеш для инструкций применялся еще в 1982 году, а кеш данных используется с 1985 года. Сейчас они оба относятся к базовому кешу первого уровня (L1), помимо которого появились L2 и L3 общего назначения.

Блоковая диаграмма конвейера Intel Skylake / Kaby Lake (источник: wikichip.org)

Все эти архитектурные навороты создавались для уменьшения времени простоя отдельных исполнительных блоков процессора. Пока один блок ожидает загрузки данных из оперативной памяти для своей инструкции, другой параллельно обрабатывает следующие. В этом ему помогает MMU (Memory Management Unit) и общая архитектура конвейера, который старается работать на упреждение и постоянно подгружает наиболее востребованные данные в кеш.

Ключевой момент в этой схеме состоит в том, что в большинстве процессоров все проверки легитимности исполнения инструкций и даже контроль за разделением доступа к памяти в самом MMU происходят уже на заключительном этапе обработки инструкций, когда начинается выстраивание промежуточных результатов в порядке исходной очереди команд. Запрещенные операции игнорируются (вызывают исключение), а невостребованные данные при этом остаются в кеше. Собственно, это и есть главная проблема.

В большей мере задержками в проверке условий и длинным забеганием вперед по ветвям инструкций грешат процессоры Intel с длинным конвейером (кроме Itanium и первых Atom), но AMD и даже ARM это тоже касается — просто в эксплоитах для них потребуется более точный таймер, другие размеры массивов и техники забивания кеша. Если Meltdown для них пока не смогли убедительно воспроизвести, то Spectre — вполне.

Блоковая диаграмма конвейера AMD Zen (источник: wikichip.org)

Целых 27 лет ведущие разработчики считали, что скорость обработки инструкций важнее безопасности, а все проверки можно делать уже после пробного исполнения команд «на выходе» из конвейера. В том или ином виде внеочередное исполнение сегодня реализовано во всех процессорах. Из-за параллельной работы исполнительных блоков задержка в обработке исключения, лаг MMU и очистки кеша тоже есть всегда, просто в случае микроархитектуры Core они заметнее и ими проще воспользоваться.

Присоединяйся к сообществу «Xakep.ru»!

Членство в сообществе в течение указанного срока откроет тебе доступ ко ВСЕМ материалам «Хакера», позволит скачивать выпуски в PDF, отключит рекламу на сайте и увеличит личную накопительную скидку! Подробнее

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *