? Все MacBook станут хуже, и ваш тоже. Что нужно знать об уязвимости Intel

Иван Петров avatar | 10
FavoriteLoading В закладки

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

Вот только попытка исправить уязвимость приведет к замедлению абсолютно любого компьютера, неважно это Windows, Linux или macOS – совместимая машина.

Попробуем объяснить, в чем причина такого серьезного фейла Intel, который можно смело отнести к крупнейшему в истории чипмейкера.

Это пояснение приводит один из пользователей форума Reddit. Оно максимально адаптировано под рядового потребителя и может вызвать улыбку у технически подкованного специалиста. Но главное в тексте — максимально наглядно пояснить суть уязвимости.

Как работает процессор и программы

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

Из соображений безопасности процессора имеет два режима: пользовательский режим и режим ядра. В первом работают все приложения и программы, во втором выполняются операции, которые невозможно выполнить в пользовательском режиме.

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

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

Установленная в компьютере память разделена на ячейки. При работе с приложениями все процессы ссылаются на определенные ячейки памяти, но не на физические, а на виртуальные. Такие виртуальные ячейки сортируются на так называемые страницы, имеющие определенный размер. Например, 1 килобайт.

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

Выглядит это примерно так:


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

В чем ошибка Intel

В целях безопасности процессоры Intel хранили часть памяти ядра отдельно от самого процесса. Т.е. происходила ситуация, при которой процесс конкретного приложения «уверен», что его таблица (ссылок на память) имеет 2 000 страниц.

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

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

Так должен работать процессор. Но выяснилось, что обычный процесс может вполне получить доступ к таблицам, хранящимся в режиме ядра. Как именно это происходит, Intel пока не сообщает и обещает раскрыть все подробности к концу января.

Почему все очень грустно

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

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

Так изначально должны были работать все процессоры Intel. Но они так не работали, а с точки зрения безопасности это очень плохо.

Как результат, выпуск нового патча для устранения уязвимости (а заниматься этим будут разработчики операционных систем Windows, Linux и macOS) может замедлить наши компьютеры и ноутбуки вплоть до 30%.

Таковы печальные реалии, с которыми придется смириться.

1 Звезд2 Звезды3 Звезды4 Звезды5 Звезд (Проголосуйте первым за статью!)
undefined
iPhones.ru
Все очень грустно.
Прокомментировать

🙈 Комментарии 10

  1. fimoz avatar
    fimoz4 января 2018
    0

    Наконец-то будут хоть как-то задействованы дополнительные ядра, простаивающие в бытовых задачах без дела.)))))

  2. Илья Березовский avatar
    1

    давно бы послали этих интел и нивидию и клепали свои А-чипы в маки

    Mes Zadrot avatar
    Mes Zadrot4 января 2018
    0

    @Илья Березовский, не поможет – эта же уязвимость есть и в ARM64.

  3. iAur avatar
    iAur4 января 2018
    1

    Глупые copy pasteы – на reallife нагрузках разница не более 5%

    ya ne robot avatar
    ya ne robot4 января 2018
    0

    @iAur, на свежих 5%, на старых 30%, Intel не глупее Эппл в новых процессорах мизерный прирост производительности а продавать нужно

    iAur avatar
    iAur4 января 2018
    0

    @ya ne robot, :D :D :D точно! теория заговора! )
    идите учите мат часть и как устроены ОС. самый большой overhead на syscall’ах которые делают мизерную работу – типа getpid, gettimeoffday и прочие. на всех остальных – не заметно. поэтому большая часть программ никак не заметит overhead.

    ya ne robot avatar
    ya ne robot4 января 2018
    0

    @iAur, а ты думал лол что корпорации для тебя стараются, ну уморил … )))
    Оставь адрес я тебе результаты скину, грамотный ты наш

  4. ravenby avatar
    ravenby4 января 2018
    3

    dislike вам.
    Пустая статья.

  5. joker2k2 avatar
    joker2k24 января 2018
    0

    да пропатчили уже, в конце ноября, ничего хуже не стало
    харош нагнетать уже

  6. SkyMaxx avatar
    SkyMaxx4 января 2018
    0

    А с какого поколения процессоров Intel касается эта уязвимость?

Вы должны авторизоваться или зарегистрироваться для комментирования.

Нашли орфографическую ошибку в новости?

Выделите ее мышью и нажмите Ctrl+Enter.

Как установить аватар в комментариях?

Ответ вот здесь