Страница 1 из 1

В ядре Linux появилась новая возможность отключить защиту от Spectre

Добавлено: 05 фев 2019, 10:16
rogoznik
Как ни удивительно, меры, реализованные разработчиками для предотвращения эксплуатации нашумевших уязвимостей класса Spectre, стали настоящей головной болью для многих системных администраторов, поскольку некоторые из них существенно влияют на производительность систем. К примеру, инструкция Single Thread Indirect Branch Predictors (STIBP) уменьшает производительность PHP-серверов на 30%, в результате многие администраторы начинают задумываться о целесообразности установки патчей.

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

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

К примеру, в выпусках ядра Linux 4.15, 4.17 и 4.19 были добавлены параметры "nospectre_v2","nospec_store_bypass_disable" и "nospectre_v1", позволяющие отключить защиту от Spectre v2 (CVE-2017-5715), Spectre v4 (CVE-2018-3639) и Spectre v1 (CVE-2017-5753) соответственно. Недавно в ядре Linux появился параметр PR_SPEC_DISABLE_NOEXEC, предотвращающий запуск дочернего процесса в ситуации, когда меры защиты от Spectre все еще активированы, несмотря на прекращение выполнения родительского процесса.

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

Источник: https://www.securitylab.ru/news/497749.php

В ядре Linux появилась новая возможность отключить защиту от Spectre

Добавлено: 05 фев 2019, 12:56
Sergei K.
Спасибо за информацию darkfenix. А насколько актуальна эта угроза Spectre для простых пользователей? Направлена она в основном против серьезных фирм, организаций и банков, где действительно можно получить что-то ценное? Или злоумышленников больше интересуют компьютеры обычных пользователей (где проще надергать с каждого по-немногу)? Есть какая-то достоверная статистика?

В ядре Linux появилась новая возможность отключить защиту от Spectre

Добавлено: 06 фев 2019, 06:00
vikonrob
А есть один какой-нить параметр ядра, который отключает сразу всю защиту от всех этих ваших спектров и мелдаунов. Или надо прописывать всю вот эту ("nospectre_v2","nospec_store_bypass_disable" и "nospectre_v1") "простыню"?

В ядре Linux появилась новая возможность отключить защиту от Spectre

Добавлено: 06 фев 2019, 06:08
rogoznik
vikonrob,
vikonrob писал(а):
06 фев 2019, 06:00
надо прописывать всю вот эту ... "простыню"

В ядре Linux появилась новая возможность отключить защиту от Spectre

Добавлено: 07 фев 2019, 19:00
FreeStyler
darkfenix, блин, а почему не расписали то что конкретно нужно делать для отключения?
Начал гуглить за это и заодно всякой инфы понаходил.


Как отключить патчи, закрывающие спектры мельты и пр.

https://www.linux.org.ru/forum/desktop/14640344
В общем как я понял нужно в /etc/default/grub добавить в строку с GRUB_CMDLINE_LINUX_DEFAULT парматеры nopti nospectre_v1 nospectre_v2 nospec_store_bypass_disable noibrs noibpb l1tf=off no_stf_barrier
У меня там были ещё quiet splash
Получилось так:

Код: Выделить всё

GRUB_CMDLINE_LINUX_DEFAULT="quiet splash nopti nospectre_v1 nospectre_v2 nospec_store_bypass_disable noibrs noibpb l1tf=off no_stf_barrier"
И затем sudo update-grub && reboot

Не нашёл для чего нужны l1tf=off no_stf_barrier, остальные есть на оф. странице убунты https://wiki.ubuntu.com/SecurityTeam/Kn ... onControls
Ещё какая-то инфа https://wiki.ubuntu.com/SecurityTeam/Kn ... ndMeltdown
С лора же: https://www.linux.org.ru/forum/talks/14470919
nopti - Meltdown
nospec_store_bypass_disable - Spectre 3a и Spectre 4
l1tf=off - Foreshadow

Проверить с какими параметрами запущено ядро можно так:
dmesg | grep "Command line:" или cat /proc/cmdline


Как патчи влияют производительность.

Некоторые уязвимости актуальны только для Intel' ов, хотя и у AMD что-то есть.
Проверить затрагивает ли уязвимость ваш процессор: https://askubuntu.com/a/992144
cat /proc/cpuinfo если в "bugs" есть строки вида cpu_meltdown spectre_v1 spectre_v2 spec_store_bypass l1tf значит процессор подвержен этим уязвимостям. Если там ничего нет, значит либо не подвержен, либо используется старое ядро, в котором ещё нет инфы об этих уязвимостях.

https://www.linux.org.ru/forum/desktop/ ... d=13999835
Ощутимые просадки есть на IO, в остальном разницы нет. И чем старее процессор, тем ощутимее просадки.
Читать тред https://archlinux.org.ru/forum/post/199383/ ( меня хватило на страницу, выяснил что влияет на производительность БД, есть замеры с PostgreSQL, не влияет на 7z)
https://www.linux.org.ru/forum/general/14360595 влияет на базу данных Oracle
https://www.linux.org.ru/forum/desktop/ ... d=14641662 мнения разделились

Проверка включён ли патч https://askubuntu.com/questions/992137/ ... 186#992186
У меня после отключения только команда dmesg | grep -q "Kernel/User page tables isolation: enabled" && echo "patched :)" || echo "unpatched :(" стала писать unpatched, остальные - patched, видимо остальные проверяют имеет ли ядро патчи, а не включены ли они.

Как я понял десктоперам можно не бояться этих атак и смело всё вырубать? Если даже сервера хотят их отрубать...
Хотя здесь https://blog.ubuntu.com/2018/01/24/melt ... ed-to-know пишут что спектрой можно даже из JS пароли угнать. :sad:

Кто-нибудь уже замечал разницу в производительности после отключения?

В ядре Linux появилась новая возможность отключить защиту от Spectre

Добавлено: 07 фев 2019, 19:07
rogoznik
FreeStyler писал(а):
07 фев 2019, 19:00
а почему не расписали то что конкретно нужно делать?
Так не по адресу вопрос. Не я автор статьи. Я же указ источник - вот туда такие вопросы. Я всего лишь поделился новостью, которую прочитал.

В ядре Linux появилась новая возможность отключить защиту от Spectre

Добавлено: 08 фев 2019, 10:00
WWolf
FreeStyler писал(а):
07 фев 2019, 19:00
Кто-нибудь уже замечал разницу в производительности после отключения?
ни на буке c intel, ни на стационарнике с амд разницы не увидел...