LINUX.ORG.RU

Разработчики Linux и Windows работают над закрытием аппаратной уязвимости процессоров Intel

 , , ,


10

8

Ошибка проектирования всех процессоров Intel, выпущенных за последние 10 лет, заставила разработчиков Linux и Windows в срочном порядке перерабатывать схему разделения адресных пространств ядра и пользователя, брешь в которой вызвана этой ошибкой. По известным сейчас данным, переработка требует модификации критических частей ядра и приводит к падению производительности приложений от 5 до 30% (чипы Intel 2010 года и новее имеют в своём арсенале возможности, чтобы сократить это падение).

Суть уязвимости, скорее всего, заключается в том, что спекулятивное исполнение кода косвенно нарушает контроль доступа, и это позволяет приложению «видеть» содержимое защищенного адресного пространства ядра (раннее описание). Детали уязвимости находятся под эмбарго до выпуска исправлений, который намечается на середину января 2018, когда выйдет новое ядро Linux и ежемесячное обновление безопасности для Windows.

Для решения проблемы разработчикам ядер пришлось полностью разделить память ядра и память пользовательских процессов, однако такое решение приводит к серьёзному падению производительности из-за необходимости сброса части кэша транслированных виртуальных адресов (TLB) при входе в ядро.

Разработчики ядра Линукса в шутку предлагали следующие аббревиатуры для новой модели разделения памяти ядра и пользовательских процессов: User Address Separation (*_uass) и Forcefully Unmap Complete Kernel With Interrupt Trampolines (fuckwit_*), однако остановились на Kernel Page Table Isolation (kpti_*).

Компания AMD утверждает, что её процессоры уязвимости не подвержены.

Обсуждение патча на LWN, с результатами тестов.

Общие подробности от издания The Register

>>> Технические подробности, демонстрационный код PoC

★★★★★

Проверено: tailgunner ()
Последнее исправление: anonymous_incognito (всего исправлений: 6)

Ответ на: комментарий от Deleted

Не жили богато, нечего и начинать.

ZERG ★★★★★
()
Ответ на: комментарий от Deleted

Я учился, помнеццо, на совершенно убитых IBM PC 286. Случай, конечно, крайний...

Это случай, показываюший первые признаки зажратости :) А Электроника Д3-28 это что тогда? У нее был огромный выбор языков! Машкоды и Васик. А вот эти вот все си и ассемблеры на мощнейшей по тем временам 286й - это уже девиации на тему «вы слишком много кушать»

Linfan ★★★★★
()
Ответ на: комментарий от Deleted

Теперь и винда и линукс превратят мой i7 3770 в калькулятор? Хорошие новости в новом году!

Ну дык! Это ж ремайндер, что пора обновлять шелезяки на более новые, где бага пофикшена :)

Linfan ★★★★★
()

Ну то есть для обычного юзера, не желающего превращать свой девайс в тыкву, хоть и в угоду «безопасности» проблема на новых ядрах решается добавлением «nopti» в /etc/default/grub? Я правильно понял?

sherba800
()
Ответ на: комментарий от sherba800

для обычного юзера, не желающего превращать свой девайс в тыкву, хоть и в угоду «безопасности» проблема на новых ядрах решается добавлением «nopti» в /etc/default/grub? Я правильно понял?

Да. Хотя ходят слухи о том, что какие-то копейки еще тратятся на переключение стека, но я думаю, что по сравнению со сбросом TLB это ерунда.

А полностью проблему решает самосборное ядро с отключенной опцией CONFIG_PAGE_TABLE_ISOLATION

tailgunner ★★★★★
()
Последнее исправление: tailgunner (всего исправлений: 1)
$ xz -dc patch-4.9.74.xz | grep Isolation
$ xz -dc patch-4.14.11.xz | grep Isolation
+#define X86_FEATURE_PTI ( 7*32+11) /* Kernel Page Table Isolation enabled */
$ xz -dc patch-4.9.74.xz | grep -i kpti
$ xz -dc patch-4.14.11.xz | grep -i kpti
+ * for KPTI each mm has two address spaces and thus needs two
panzerito
()
Последнее исправление: panzerito (всего исправлений: 1)

Сосноулей.

anonymous
()
Ответ на: комментарий от VKraft

Чем оно поможет?

ЕМНИП, там нет никакого разделения памяти и смены контекста. Т.е. этот аппаратный баг по боку.

ls-h ★★★★★
()
Ответ на: комментарий от ukr_unix_user

ну так я и пишу что за 18 лет, учитывая этот факт

vasyan
()
Ответ на: комментарий от BattleCoder

блин, да что там «отрисовывать»-то???? ну что? на этих смартфонах картинку с иконками отрисовывать? ну прям усрацца сверх-задача: буфер раз в сутки нарисовать и свопить его в видео. не, это всё гнилые отмазы. софт там говно и потому жрёт ресурс.

Iron_Bug ★★★★★
()
Последнее исправление: Iron_Bug (всего исправлений: 1)
Ответ на: комментарий от Linfan

А Электроника Д3-28 это что тогда?

Если честно, то я о подобных девайсах умолчал из скромности.
Конечно, всё это было тоже.

У нее был огромный выбор языков!

Точно так!

Deleted
()
Ответ на: комментарий от Iron_Bug

картинку с иконками отрисовывать? ну прям усрацца сверх-задача: буфер раз в сутки нарисовать и свопить его в видео

Мне кажется, изображение на экране меняется чаще, чем раз в сутки. ;)

ls-h ★★★★★
()
Ответ на: комментарий от Deleted

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

нет, есть ещё разработка. мало, но есть. государство всячески её уничтожает, вставляет палки в колёса, душит налогами и поборами. но ещё не всех перебили. я сама в таких компаниях работала. где честно, с нуля делали качественное дорогое оборудование. но проблема в том, что такое оборудование и стоит соответственно. поэтому для нашей страны его закупали редко, а вот за границу оно уходило хорошо. в силу хреновой экономики мы чаще всего просто не видим тех высокотехнологичных продуктов, которые в нашей стране производят. да и софт в основном пишут для аутсорца. причём наши программисты котируются. но по продажам внутри РФ - это около 5%. а какой смысл вообще продавать софт в РФ, если от всей прибыли это какой-то мизер? при колоссальных затратах на маркетинг и прочее фуфло. потому и не продают. делают, но для заграницы. или напрямую работают по подряду на иностранные компании. и мы потом видим импортную продукцию, в которой часто работает код, написанный буквально в соседнем офисе. но это уже бренд и его продают за хорошие деньги.

Iron_Bug ★★★★★
()
Ответ на: комментарий от Deleted

А потом юзеропроблемы и нытье про жор памяти и тормоза.

foror ★★★★★
()
Ответ на: комментарий от ls-h

Мне кажется, изображение на экране меняется чаще, чем раз в сутки. ;)

Такими темпами „прогресс” говнотехнологий дойдёт до того что это будет реальностью. Телефон станет как мейнфрейм: сегодня дал команду открыть телефонную книгу, завтра подходишь и смотришь.

h578b1bde ★☆
()
Ответ на: комментарий от ls-h

но не настолько часто, чтобы говорить, что это именно оно жрёт проц и память и просаживает аккумулятор.

Iron_Bug ★★★★★
()
Ответ на: комментарий от ls-h

Чем оно поможет?

ЕМНИП, там нет никакого разделения памяти и смены контекста. Т.е. этот аппаратный баг по боку.

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

VKraft ★★
()
Ответ на: комментарий от Iron_Bug

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

Аутсорц — это следствие дешёвой рабочей силы.

h578b1bde ★☆
()
Ответ на: комментарий от prizident

Особенно регуляторы. Пополнение бюджета штата - хорошее занятие.

Deleted
()
Ответ на: комментарий от Deleted

Я учился, помнеццо, на совершенно убитых IBM PC 286. Случай, конечно, крайний, но слабая элементная база приучает к бережному расходованию системных ресурсов. Были компы и помощнее, но задачи автоматизации отрабатывали на подобных древних машинах. А чо? Для ассемблера с сями самое оно.

Полноцветная стратежка реального времени на JavaME в телефон с тачскрином спокойно влезает:

Name: Age of Empires 2
Size: 207 KB
Game Type: Action/ Strategy
File Format: Jar
Supported on : Java supported mobile with 400x240 touchscreen

Age of Empires 2 is game from the giant Microsoft. Microsoft really changed the view of human being and by the game Age of Empires Microsoft did changed the view of a game. The game is nice and full of amazing controls and features. Its a absolute game to have on a Nokia Asha series 40 Smartphones like on Nokia Asha 305, 306, 308, 309, 311 java supported full touchscreen phones. Enjoy the Age of Empires.
http://nokia-flasher.blogspot.ru/2013/02/age-of-empires-2-hd-400x240-game.html

207 КБ jar-архив! Вот где эффективное использование программно-аппаратных ресурсов.

На IBM PC 286 запустится разве что Civilization I (пошаговая стратегия 1991 года, 3,4 МБ весь каталог с игрой).

iZEN ★★★★★
()
Ответ на: комментарий от Iron_Bug

Угу, как-то так, да.

а какой смысл вообще продавать софт в РФ, если от всей прибыли это какой-то мизер?

На ум пришла СУБД «Линтер». Сертифицирован по самые помидоры. По крайней мере так написано, и врать, я думаю, не станут. Но... Кругом в госах стоит Аракель и ФБ. Какая-то несусветная дичь!

есть ещё разработка

Ещё есть, но без науки она быстро засохнет.

Deleted
()
Ответ на: комментарий от Iron_Bug

но не настолько часто

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

ls-h ★★★★★
()
Ответ на: комментарий от Iron_Bug

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

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

Linfan ★★★★★
()
Ответ на: комментарий от Iron_Bug

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

Чтобы не каждый wasm-скрипт в браузере мог получить привелегии ядра, прочитать всё что сочтёт интересным и установить браузер Амиго.

kirill_rrr ★★★★★
()
Ответ на: комментарий от VKraft

Баг аппаратный.

Насколько я помню сингулярютю, там у приложений насильственно выпиливаются все инструкции обращения к произвольным адресам памяти. Баг аппаратный, ну нужно ещё как-то задать адрес, где испортить память.

ls-h ★★★★★
()
Ответ на: комментарий от Iron_Bug

Я и не отрицал. ^^ Но в то же время я считаю, что на современных дисплеях что дюймов, что пикселей многовато - обычному обывателю столько не надо.

BattleCoder ★★★★★
()
Последнее исправление: BattleCoder (всего исправлений: 1)
Ответ на: комментарий от Slackware_user

У geekbench закрытый код, неизвестно.

Попробуй определить: http://cdn.geekbench.com/Geekbench-4.2.0-Linux.tar.gz

Мне вот это ни о чем не говорит:

ELF 64-bit LSB executable, x86-64, version 1 (SYSV), dynamically linked, interpreter /lib64/ld-linux-x86-64.so.2, for GNU/Linux 2.6.24, stripped

Но, предугадывая твой следующий шаг, спрошу — а какая к дьяволу разница, если разницу видно и на открытом софте, собираемом GCC/clang?

Bruce_Lee ★★
()

Этот «замедляющий патч» нужен только для небезопасных ( Bugs: cpu_insecure )
процессоров Штеуда, а сейчас творится полный беспредел:

1) «замедляющий патч» внедрили для ВСЕХ процессоров

2) разработчик из AMD отправил вдогонку свой патч,
чтобы «замедляющий патч» включался только для Intel,
потому что для безопасных AMD процессоров он НЕ НУЖЕН

3) разработчики Штеуда всячески препятствуют ему -
хотят чтобы замедлялись все процессоры а не только Intel !

https://www.phoronix.com/scan.php?page=news_item&px=x86-PTI-EPYC-Linux-4....

Это реальный пипец

SakuraKun ★★★★★
()

А не заставить ли нам Intel отозвать все бракованные процы и заменить на патченные. За 10 лет.
Что там на reddit решили? Уже подают class action suite? На пару триллионов баксов

Karapuz ★★★★★
()
Ответ на: комментарий от SakuraKun

разработчики Штеуда всячески препятствуют ему -

хотят чтобы замедлялись все процессоры а не только Intel !

https://www.phoronix.com/scan.php?page=news_item&px=x86-PTI-EPYC-Linux-4....

И откуда ты взял, что «разработчики Штеуда препятствуют»? По ссылке такого нет. У тебя инсайд?

tailgunner ★★★★★
()
Последнее исправление: tailgunner (всего исправлений: 1)
Ответ на: комментарий от iZEN

Помню, в те времена когда был бум этих смартфонов, у меня ещё был телефон на java me, не помню, сколько там было памяти, то ли 30 мегабайт, то ли 100 (такого порядка), на момент покупки это считалось МНОГО. Более простые модели могли иметь меньше десятка мегабайт. И столько игрулек на java me помещалось.

И я до сих пор в шоке, вроде телефоны в размерах увеличились ненамного, но почему-то каждое приложение для смартфона может весить по 10-50 мегабайт и больше... А полезной нагрузки там ненамного больше - большую часть какие-нибудь звуки да картинки весят...

BattleCoder ★★★★★
()
Ответ на: комментарий от Einstok_Fair

Если процессор, который я использую, выпущен более чем десять лет назад, то всё ок? (Core 2 Quad, 2006 год)

Всё кроме производительности.

Ramil ★★★★
()
Ответ на: комментарий от Karapuz

Те времена давно прошли. Покладут болт на простых смертных, а с крупными конторами договорятся и замнут.

ox55ff ★★★★★
()
Ответ на: комментарий от BattleCoder

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

Потому что каноничъную Java ME заменили на монстра Linux + Dalvik который требует 8Гиг оперы чтобы все кэшировать. Иначе тормоза и выгрузка из памяти

Karapuz ★★★★★
()
Ответ на: комментарий от ls-h

Баг аппаратный, ну нужно ещё как-то задать адрес, где испортить память

Согласен, эксплуатация в «сингуларити» намного сложнее и при соблюдении _всех_ мер сводится к минимуму но не «0». Непонятно почему проект свернули.

VKraft ★★
()
Ответ на: комментарий от ox55ff

Да не, все реально. На Apple одна баба подала иск на $999 999 999 999 за то, что Apple замедляла работу старых айфонов. ну, не $ 999 999 999 999 но думаю что $ 99 999 отсудит

Karapuz ★★★★★
()
Ответ на: комментарий от BattleCoder

по 10-50 мегабайт и больше...

Ресурсы: фулхд иpображения, музыка, 3D + набор рекламы, чтобы показывать оффлайн.

ox55ff ★★★★★
()
Ответ на: комментарий от tailgunner

Намного сложнее если соблюдать техпроцесс сборки программ под данную ОС. Если бинарники произвольно сгенерены то тут всё плохо. да

VKraft ★★
()
Ответ на: комментарий от Karapuz

Ну ты сравнил. 99999 и отзыв процов, как в лохматом году. Так интел разорится, поэтому инвесторы не допустят.

ox55ff ★★★★★
()
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.