Всем привет! Полагаю из названия статьи, понятно, о чем пойдет речь. Статья посвящена инструменту, который позволит проверить, уязвима ли ваша Linux система, к довольно известным на данный момент уязвимостям Spectre-Meltdown.
Spectre — аппаратная уязвимость, ошибка в большинстве современных процессоров, имеющих спекулятивное выполнение команд и развитое предсказание ветвлений, позволяющая проводить чтение данных через сторонний канал в виде общей иерархии кэш-памяти. Затрагивает большинство современных микропроцессоров, в частности, архитектур х86/x86_64 (Intel и AMD) и некоторые процессорные ядра ARM
Meltdown — аппаратная уязвимость, обнаруженная в ряде микропроцессоров, в частности, производства Intel и архитектуры ARM. Meltdown использует ошибку реализации спекулятивного выполнения команд в процессорах Intel и ARM, из-за которой при спекулятивном выполнении инструкций чтения из памяти процессор игнорирует права доступа к страницам. Уязвимость позволяет локальному атакующему (при запуске специальной программы) получить несанкционированный доступ на чтение к привилегированной памяти.
Теперь, о самом сканере уязвимостей:
Spectre & Meltdown Checker – является инструментом, проверяющим является ли ваша система уязвимой для CVE с 3-мя «спекулятивными исполнениями».
Запуск без параметров проверит ваше текущее ядро. Вы также можете указать образ ядра в командной строке, если вы хотите проверить ядро, которое вы не используете.
Скрипт сделает все возможное, чтобы найти решение проблемы, включая backported non-vanilla patches, независимо от объявленного номера версии ядра.
Краткий обзор CVE:
CVE-2017-5753 bounds check bypass (Spectre Variant 1):
Запуск проверки:
По результатам, видно, что причин для беспокойства нет. Система в относительной безопасности.
Проверка моего сервера на Amazon показала иные результаты:
На этом, пожалуй, все, спасибо за уделенное внимание.
Spectre — аппаратная уязвимость, ошибка в большинстве современных процессоров, имеющих спекулятивное выполнение команд и развитое предсказание ветвлений, позволяющая проводить чтение данных через сторонний канал в виде общей иерархии кэш-памяти. Затрагивает большинство современных микропроцессоров, в частности, архитектур х86/x86_64 (Intel и AMD) и некоторые процессорные ядра ARM
Meltdown — аппаратная уязвимость, обнаруженная в ряде микропроцессоров, в частности, производства Intel и архитектуры ARM. Meltdown использует ошибку реализации спекулятивного выполнения команд в процессорах Intel и ARM, из-за которой при спекулятивном выполнении инструкций чтения из памяти процессор игнорирует права доступа к страницам. Уязвимость позволяет локальному атакующему (при запуске специальной программы) получить несанкционированный доступ на чтение к привилегированной памяти.
Теперь, о самом сканере уязвимостей:
Spectre & Meltdown Checker – является инструментом, проверяющим является ли ваша система уязвимой для CVE с 3-мя «спекулятивными исполнениями».
Запуск без параметров проверит ваше текущее ядро. Вы также можете указать образ ядра в командной строке, если вы хотите проверить ядро, которое вы не используете.
Скрипт сделает все возможное, чтобы найти решение проблемы, включая backported non-vanilla patches, независимо от объявленного номера версии ядра.
Краткий обзор CVE:
CVE-2017-5753 bounds check bypass (Spectre Variant 1):
- Область воздействия: ядро и все программное обеспечение.
- Решение: перекомпилируйте программное обеспечение и ядро с модифицированным компилятором, который вводит код операции LFENCE в соответствующие позиции в полученном коде.
- Эффективность: незначительная.
- Область воздействия: Ядро
- Решение 1: Введение нового кода операции с помощью обновления микрокода, который должен использоваться современными компиляторами для защиты BTB.
- Решение 2: введение «retpoline» в компиляторы и перекомпиляция программного обеспечения / ОС.
- Эффективность: высокая для решения 1, средняя для решения 2, в зависимости от вашего процессора.
- Область воздействия: Ядро
- Решение: обновление ядра (с исправлениями PTI / KPTI), обновления ядра достаточно.
- Эффективность: Низкая, до средней степени.
Код:
git clone https://github.com/speed47/spectre-meltdown-checker
Запуск проверки:
Код:
./spectre-meltdown-checker.sh
По результатам, видно, что причин для беспокойства нет. Система в относительной безопасности.
Проверка моего сервера на Amazon показала иные результаты:
На этом, пожалуй, все, спасибо за уделенное внимание.