Как проверить, уязвим ли ваш серверный сервер Linux / Ubuntu для Spectre и Meltdown

3 января 2018 года Project Zero Команда Google объявила об «открытии» эксплойтов Meltdown и Spectre, созданных процессорами Intel, AMD и ARM, которые используют «синхронизацию кэша данных ЦП» для «утечки информации из ошибочного исполнения», с подтверждением, что « Почти каждый компьютер, изготовленный с 1995 года, опасен ». Meltdown и Spectre — это уязвимости безопасности в 64-битных центральных процессорах Intel (ЦП), которые предоставляют доступ к привилегированной системной памяти неавторизованным процессам и позволяют кибератакам обманным путем вводить программы в утечку конфиденциальных данных.

Хотя, как уже упоминалось, проблема восходит к 1995 году, она выходит только до даты, однако история этого сложна, и мы не будем обсуждать ее здесь. Одно можно сказать наверняка, многие администраторы серверов запаниковали, увидев этот спор в цифровой газете, и сразу же нашли решение. Однако, прежде чем применять решение, вы можете узнать, уязвимы ли вы к этой проблеме, верно? Наиболее распространенный ответ будет «конечно, да». Тем не менее, просто чтобы (напрасно потратить некоторое время на свою работу) быть уверенным, вы можете подтвердить эту проблему самостоятельно с помощью сценария оболочки specter-meltdown-checker.

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

1. Загрузите spectre-meltdown-checker.sh

Specter-meltdown-checker — это очень простой сценарий оболочки, который сообщает, уязвима ли ваша установка Linux / Ubuntu к трем CVE «спекулятивного исполнения», которые были опубликованы в начале 2018 года. Без опций будет проверяться ваше работающее ядро. Вы также можете указать образ ядра в командной строке, если вы хотите проверить ядро, которое вы не используете. Сценарий сделает все возможное, чтобы обнаружить меры по снижению риска, в том числе исправленные не ванильные исправления, независимо от номера версии объявленного ядра.

отказ

Сценарий specter-meltdown-checker имеет очень четкий отказ от ответственности, который вы должны прочитать перед использованием его на своем сервере:

Этот инструмент делает все возможное, чтобы определить, является ли ваша система невосприимчивой (или имеет надлежащие меры по смягчению) для
коллективно названные уязвимости «спекулятивного исполнения». Он не пытается использовать какой-либо эксплойт и не может гарантировать
что ваша система безопасна, но скорее помогает вам проверить, есть ли в вашей системе известные правильные меры по снижению риска.
Тем не менее, в вашем ядре также могут существовать некоторые смягчения, которые этот сценарий пока не знает, как обнаружить, или он может
ложно выявлять смягчения, которые в итоге не работают должным образом (например, на портированных или модифицированных ядрах).
Ваша система воздействия также зависит от вашего процессора. На данный момент процессоры AMD и ARM помечены как защищенные от некоторых или всех этих
уязвимости (за исключением некоторых конкретных моделей ARM). Все процессоры Intel, выпускаемые с 1995 года, считаются уязвимыми.
Какой бы процессор ни использовался, можно было бы запросить дополнительную информацию у производителя этого процессора и / или устройства.
в котором он работает.
Характер обнаруженных уязвимостей является довольно новым, можно ожидать ландшафта уязвимых процессоров
изменяться со временем, поэтому этот сценарий предполагает, что все процессоры уязвимы, за исключением случаев, когда производитель
прямо указано иное в публичном объявлении, поддающемся проверке.
Этот инструмент был выпущен в надежде, что он будет полезен, но не используйте его, чтобы делать выводы о вашей безопасности.

Если вы согласны с заявлением об ограничении ответственности, тогда давайте начнем! Очевидно, что для запуска скрипта вам понадобится его исходный код, вы можете скачать файл sh из репозитория или скачать его с помощью wget:

wget https://raw.githubusercontent.com/speed47/spectre-meltdown-checker/master/spectre-meltdown-checker.sh

Или, если вы предпочитаете использовать Curl:

curl https://raw.githubusercontent.com/speed47/spectre-meltdown-checker/master/spectre-meltdown-checker.sh --output spectre-meltdown-checker.sh

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

2. Дайте разрешение на выполнение файла

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

Заметка

Вы можете пропустить этот шаг, если вы можете выполнить файл, используя sudo bash ./spectre-meltdown-checker.sh на третьем этапе.

chmod +x ./spectre-meltdown-checker.sh

Теперь файл должен быть исполняемым с терминала.

3. Запустите скрипт

В соответствии с разрешениями, которые у вас есть для файла, вы можете выполнить его, используя следующую команду (если вы использовали chmod + x):

sudo ./spectre-meltdown-checker.sh

В противном случае, не добавляя права доступа к файлу, просто запустите скрипт, используя sudo bash:

sudo bash ./spectre-meltdown-checker.sh

Это запустит инструмент, и через несколько секунд вы узнаете, уязвим ли ваш процессор к Spectre или Meltdown:

Проверка уязвимости прилива призрака

Оба эксплойта направлены на «ядро», практически невидимую часть операционной системы вашего устройства, которая, возможно, является наиболее важным программным компонентом вашего компьютера (или телефона, или планшета). Это промежуточное звено для всех ваших приложений и основных частей вашего компьютера: процессора, памяти и самого устройства (например, клавиатура и тачпад на ноутбуке или кнопка питания на телефоне). Сказав это, хотя эта статья не нацелена на то, как решить проблему, а на то, как ее обнаружить, вкратце, ваша проблема может быть решена путем обновления ядра вашего сервера. Digital Ocean опубликовал полезную статью о том, как исправить эти недостатки, который в основном состоит из обновления программного обеспечения вашей системы, в основном ядра (yum, apt-get, dnf).

Для получения дополнительной информации о Spectre и Meltdown, обязательно проверьте статья блога Google Zero или же сайт Spectre Attack здесь.

Счастливый обзор безопасности!

Ссылка на основную публикацию