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)
Ответ на: комментарий от StReLoK

В этом и проблема - все слишком привыкли к 3.5 архитектурам и отсутствию конкурентов.

Проблема в том, что технологиям, по которым проектируются современные процессоры - over 30 лет. Наука замерла и не развивается.

Deleted
()

Кто, КТО эти уроды, которые постоянно ищут уязвимости в моем ДОРОГОМ Intel процессоре?! Им что, заняться больше нечем, руки некуда приложить?! Минус 30% производительности, а вернуть 30% стоимости моего компа они не хотят, нет?! Куда все катится...

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

Пруфы на kernel.org в гите можешь посмотреть

anonymous
()

В прошедшем году владельцы интелов у Санта-Клауса/Деда Мороза, похоже, попали в «список плохих детишек».

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

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

StReLoK ☆☆
()

Между прочим, пишут что уязвимость только у 64-битных систем. Любители 32 бит выиграют в скорости работы, хе-хе-хе.

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

Вообще, если падение производительности подтвердится на широком круге задач, то Intel ждёт обвал акций, а AMD взлетит.

Подумай ещё раз. Теперь для 99% пользователей апгрейд даст от 5 до 50% прибавки производительности. Такого не было со времён Intel Core по-моему. Продажи процессоров у Intel взлетят ого-го как. Intel ждёт серьёзный рост акций. А вот AMD не факт.

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

Если такая херня случится - я сваливать на оптероны буду. Ну его накуй.

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

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

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

Отключишь для себя. Меня вот ваще десктоп мало волнует. У меня есть одна железка с 5 тысячами запросов к БД в секунду. Вот мне че делать? )

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

Между прочим, пишут что уязвимость только у 64-битных систем. Любители 32 бит выиграют в скорости работы, хе-хе-хе.

Так они и проигрывают значительно. Врядли сравняется.

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

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

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

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

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

Ну так я про те же приложения, что и в посте - серверное с нагрузкой.

Тестирования на всяких похоронила хотя есть - там не копейки в разнице.

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

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

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

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

Тестирования на всяких похоронила хотя есть - там не копейки в разнице.

Где за 32 битную систему принимается дебиановский (или аналогичный) i386 (не использующий более-менее современные инструкции CPU)...

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

убавка производительности

Подумай ещё раз. Теперь для 99% пользователей апгрейд даст от 5 до 50% прибавки производительности. Такого не было со времён Intel Core по-моему. Продажи процессоров у Intel взлетят ого-го как. Intel ждёт серьёзный рост акций. А вот AMD не факт.

Я так понял, что будет не прибавка, а наоборот - убавка производительности после апргейда. Поправьте, если не прав.

Windows ★★★
()
Ответ на: убавка производительности от Windows

После апгрейда софта — просадка производительности.

Покупаешь новый процессор, с красной крышечкой без этой дыры, получаешь прирост (минимум на эту самую просадку).

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

да, таки проблема чаще всего в разных SSE и т.д. например, https://stackoverflow.com/questions/10317932/x64-performance-compared-to-x86

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

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

Да, если верить в теории заговора, это вообще может быть умышленное запланированное устаревание процессоров.

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

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

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

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

я тоже так думаю

Dbeed
()

Все на VIA!!!111

https://www.overclockers.ru/hardnews/88769/processory-via-zhaoxin-kx-7000-smo...

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

Любители 32 бит выиграют в скорости работы, хе-хе-хе.

А ещё думал, переходить уже на 64 бит или пока погодить )

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

расслабься, это только на новом ядре будет

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

А ещё думал, переходить уже на 64 бит или пока погодить )

У 32-битной ОС есть ограничение в max поддержке оперативной памяти 4 Гбайт. В действительности памяти выходит меньше, в районе 3.5 Гбайт, т.к. происходит использование части памяти для нужд системы. 64 битная ОС применяет ту оперативную память, плата которой находится у вас на материнке, т.е. практически любой.64-битники производительнее используют большие файлы, по сравнении с 32-битными системами. К примеру, при работе с файлом в пять Гбайт 32-битной операционной системе предстоит загружать его частями, т.к. у ней доступ лишь к трём гигабайтам оперативной памяти. Некоторые научные программы при работе с 32-битными системами не приносят точных данных, поэтому для работы с ними приходится использовать только 64-битные ОС.

Dbeed
()

В очередной раз убеждаемся в том, что сложность современных процессоров и ПО настолько зашкаливает, что в мире наверное только единицы досконально понимают, как это работает. Иначе как можно 10 лет не замечать проблемы. Чем сложнее что-либо, тем оно менее надежно. Видимо скоро наступит тупик.ИМХО

decoder
()

до 30%

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

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

Видимо скоро наступит тупик.ИМХО

Если все останется на текущем пути развития - то согласен, безусловно. Это уже стало явным, только никому не выгодно об этом распространяться.

Возможно, положение изменит какой-нибудь ИИ (или приближенная к нему метапрограмма), который будет создавать верификаторы для всего спектра ПО: от схем микропроцессоров и алгоритмов моделей их работы, до системого ПО, и потом, может, дело и до прикладного ПО дойдет.

Т.е. верификатор должен свести количественную сложность всего ПО к некоторым обозримым параметрам (входным и результатам), которые способен проконтроллировать человек

Deleted
()
Последнее исправление: Deleted (всего исправлений: 1)

Ошибка проектирования всех процессоров Intel, выпущенных за последние 10 лет

ЯННП, если у меня кора дуба, выпущенная более 10 лет назад, я в безопасности?

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

ЯННП, если у меня кора дуба, выпущенная более 10 лет назад, я в безопасности?

Может ты и в безопасности, но падение производительности коснется и тебя. Пока фикс применяется ко всем x86, безотносительно наличия бага в cpu.

Aber ★★★★★
()
Последнее исправление: Aber (всего исправлений: 1)

У 32-битной ОС есть ограничение в max поддержке оперативной памяти 4 Гбайт.

Есть режим PAE (Physical Address Extension) в котором проц поддерживает до 64 Гб в 32-битной ОС, правда это в целом, одна задача без переключения сегментов в линейном режиме больше 4Гб использовать не может.

praseodim ★★★★★
()

Здростя приехали, 10 лет ёпрст

падению производительности приложений от 5 до 30%

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

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

Тогда может не " для новой модели разделения памяти ядра" а отдельно для inel, или что они свою «фичу» в новых процессорах фиксить не собираются?

Ой как много я хочу сказать, но одно точно, господа это Эпично и аэ так смешно что грустно.

Deleted
()

На phoronix пишут что игровая производительность не пострадала, хотя они испытывали на Intel Core i7 8700K, наверное fps уперся в gpu, интересно что будет на i3.

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

Я правильно понимаю, что с исправлением система начнет работать безопасно, но медленно?

Нынешние жирные ОС с софтом на говноэлектроне и без того медленные.

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

Загрузится с nopti, как и сказано по твоей ссылке.

Вангую упоминание nopti в каждой новой теме про «У меня медленно работает...».

Aber ★★★★★
()

Напомните мне в январе 2018го что бы я ядро не обновлял. У меня amd во все поля и я не хочу получить тормоза из за «новой модели памяти».... пора форкать ядро :D

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

Хороший повод для апгрейда!

С Core2Duo на Core2Quard? А то современные процессоры не готовы.

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

как раз лет десять, как эта зараза поползла

Угу. Проапгрейдил свой боевой ноут, на днях. Как раз десятилетним процем. Ну, вместо 1.86 вкорячил 2.3 с трёхметровым кешем, с поддержкой виртуализации. Производительность выросла значительно. Проверить кондёры, поменять хард и можно будет жить ещё лет шесть. Смотрел спеки свежатины, аж затошнило. Самое печальное, что впереди никакого просвета.

ЗЫ Мечтаю припаять дискретку. Место и разводка под слот есть, но сама процедура довольно геморройная.

ЗЫЗЫ Я «больной» на все эти штуки. Хлебом не корми, дай поколупаться и попридумывать чо-нить полезно-бессмысленное. Типа хобби. Наряду с различной системщиной.

Deleted
()

чипы Intel 2010 года и новее имеют в своём арсенале возможности, чтобы сократить это падение

Ок, захожу в Википедию:

Intel Pentium Dual-Core — микропроцессоры архитектуры x86 от Intel с 2006 по 2009 год.
Pentium E5700 ... 8 августа 2010.

Там же в таблице разброс дат появления камней на Wolfdale от 31 августа 2008 до 28 ноября 2010. Сомневаюсь, что у более поздних моделей сильно перепиливали архитектуру.

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

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