Группа исследователей из Швейцарской высшей технической школы Цюриха, Амстердамского свободного университета и компании Qualcomm опубликовали новый метод атаки класса RowHammer, позволяющий изменить содержимое отдельных битов динамической оперативной памяти (DRAM). Атаке присвоено кодовое имя Blacksmith и идентификатор CVE-2021-42114. Проблеме подвержены многие чипы DDR4, снабжённые защитой от ранее известных методов класса RowHammer. Инструментарий для тестирования своих систем на подверженность уязвимости опубликован на GitHub...Подробнее: https://www.opennet.ru/opennews/art.shtml?num=56169
Но Гугл всё будет продолжать требовать JavaScript в своей рекапче.
Опять эти С++ макаки не смогли в элементарное программирование. Ни веб осилить, ни железо разработать...ни на что не способны.
"Никак вы, б***ь, не научитесь!" (с) Геральт.
Смерть неизбежна, потому что родился
>>>В качестве практических примеров приведеныуических
>>>повреждения хранящегося в памяти открытого ключа RSA-2048 в OpenSSH (можно привести открытый ключ в чужой виртуальной машине к соответствию закрытому ключу атакующего для подключения к VM жертвы)
я жил под камнем все эти годы и как-то упустил. кто-то продемонстрировал рабочий POC, позволяющий таким битфлипом прописать в память заместо существующего открытого ключа свой открытый ключ? а не табличку, в которой записано "за три часа наблюдали сто битфлипов".
А что насчет DDR5, уязвима или нет?
чем меньше нанометров - тем более уязвима.
У меня валяется пригоршня 30- и 72-контактных модулей. Надо? Будешь неуязвимым!
В ddr5 есть самоконтроль типа ecc только внутри чипа. Так что возможно это все исследование оплачено чтобы протолкнуть ddr5
ddr5 внутри чипа избыточен по объёму ил нет?
Как-то подозрительно вовремя - аккурат под выход DDR5. Не верю я в такие совпадения...
То есть, вы можете открыть страницу в Firefox и у вас в системе уже стоит руткит.
Можешь не открывать страницу в IE/Edge/Safary по вкусу - руткит уже у тебя
> То есть, вы можете открыть страницу в Firefox и у вас в системе уже стоит руткит.Руткит запускается значительно раньше, - как только включил компютер
По-настоящему надежная память будет существенно медленнее и/или дороже. Какую вы выберете? У какой будет конкурентное преимущество? Рынок решает. Так и будут находить новые уязвимости и добавлять новые костыли. То же касается и процессоров.
Мы выберем хранение наших биткойнов в двойных бумажных кошельках или в изолированных от сети компьютерах.
На оба стула сядем в итоге. И медленную, и дорогую.
На рынке спрос рождает предложение. Если кому-то будет нужна память с упором на защиту, а не скорость, рынок её предложит, даже не сомневайся.
Так о том и речь, что основной массе потребителей это не нужно.
Ну в общем рано с DDR3 переходить. FX вечен.
DDR3 восприимчива к RowHammer.
https://users.ece.cmu.edu/~yoonguk/papers/kim-isca14.pdf
DDR2 не восприимчева, а стоит копейки
А 8 и 16 GiB модули DDR2 бывают? И тоже копейки стоят?
DDR5 сама себя не купит
Её купят перекупы!
Пусть покупают, она не нужна. Основной её сомнительный плюс - сниженное энергопотребление. Урезанная вполовину шина и два разделённых канала на модуль тоже говорят о том, что основная платформа для этого счастья видимо мобильная. Производительность в лучшем случае на уровне DDR4, обещаются золотые горы с задранными частотами, но всё это потом как обычно останется с пометкой O.C.
> для изменения одного целевого бита требуется от 3 секунд до нескольких часов
> напрямую в чип DRAM для исключения влияния контроллера памятиУдачи им в проведении реальных атак.
На vps рядом с твоими vpn
Сейчас может и не получится, но в будущем, с помощью ИИ, комбинируя разные узявимости, вполне может получится что-то стабильное.
> Применение в чипах кодов коррекции ошибок (ECC) и удвоения частоты обновления памяти не обеспечивает полной защиты, но усложняет эксплуатацию.Как тонко.
А как же ECC на уровне всего модуля памяти?Для тех кто не в курсе, то производители стали внедрять ECC прямо в чип, для того чтобы норма выхода годных чипов не падала при уменьшении техпроцесса. Говорят с DDR5 начали, но не факт.
Те каждая микруха научилась сама делать ECC внутри, но при этом наружу инфа об ошибках не выходит.
Те это не тоже самое что дополнительный 9-й чип на модуле памяти и контроль целостности в контроллере памяти.
Те для тех у кого в системе ECC память - врядли атака возможна, и уже тем более незаметная атака без ругани в логах.У меня райзены и больше половины систем с ECC памятью, остальные или развлекательные где пофиг на всё или ноут где с этим трудно.
Ах да, у райзенов же прозрачное шифрование памяти вроде как из коробки было, те предположение о том, что удастся флипнуть нужный бит оно сильно оптимистичное на фоне AES128. )
> и уже тем более незаметная атака без ругани в логах.Логи чистят после взломов, начиная уже с 90-х. Сущие пустяки что-то подчистить.
Что касается заметности-незаметности. У многих компы пашут сутками (серваки тем более).
Пациенты довольно часто отходят от своих тазиков "по делам". Так что всё возможно,
особенно если атаки таргетированы (проэксплуатировать можно в определённое удобное время).
>>>Логи чистят после взломов, начиная уже с 90-х. Сущие пустяки что-то подчистить.а экспорт логов же у нас с 80-х так доси и не изобрели. всякие там там арксайты, вот это вот все так никто и не придумал.
Состоянние TPMа подчистить не забудь.
Какие логи? Логи гипервизора вы из виртуалки чистить будете?
У меня 100% систем с ECC. Включая личный десктоп. Если память с ECC стоит всего чуть дороже памяти без ECC - выбор очевиден.
ECC -- это единственный бит контроля чётности, сбрасываются два бита и твой ЕСС идёт лесом.
При флипе двух бит система уходит в панику ваще то, дабы не повредить ценную инфу.
Хуже, не в панику, в forced halt.
> При флипе двух бит система уходит в панику ваще то, дабы не
> повредить ценную инфу.Если чип умеет считать хэш по блоку памяти. Если прикинуть какая нужна чудовищная вычислительная мощность для этого -- точно могу сказать, что система этого не делает. Уж во всяком случае не для числомолотилок.
Могу точно сказать, что система это делает, так как воспроизводил битфлипы через разгон модулей.
Блоком там является шинное слово. 64 бита. И 8 бит "чётности" к нему идут довеском.
Нет, бит контроля четности не 1 (вроде бы 4), а вот исправить можно действительно только 1.
> Нет, бит контроля четности не 1 (вроде бы 4), а вот исправить
> можно действительно только 1.Нет.
https://ru.wikipedia.org/wiki/ECC-%D0%BF%D0...
Если у вас один бит -- вы можете обнаружить одиночную ошибку.
Если у вас два бита -- можете исправить одиночную ошибку.ECC -- контролирует чётность и может и исправить одиночную ошибку. На практике -- в 9 случаях из 10 случаются ошибки типа "0 в 1". При перебросе двух битов в 1 -- не будет ни обнаружено, ни исправлено. (один бит исправлен, второй даже не обнаружен).
Меньше читайте советских газет, то есть русскоязычных педивикий.
Реальная организация ECC в модулях несколько сложнее, чем вам кажется. Типовым ныне (и уже давно) является кодирование 64/8 (бит). Такая организация позволяет исправлять ошибки в 1 бит в пределах _слова_ в 64 бита (а не 1 бита каждого байта), и гарантированно обнаруживать ошибки в 2 бита в пределах того же слова.
Или в другой нотации - 72/64, насколько помню, Hamming там.
> Типовым ныне
> (и уже давно) является кодирование 64/8 (бит). Такая организация позволяет исправлять
> ошибки в 1 бит в пределах _слова_ в 64 бита (а
> не 1 бита каждого байта), и гарантированно обнаруживать ошибки в 2
> бита в пределах того же слова.Страйк за откровенное незнание теории избыточности Шеннона.
НЕЛЬЗЯ исправить одиночную ошибку в байте единственным битом.
Так что там расскажешь за необнаружимые двухбитовые ошибки в коде Хемминга 72/64?
Действительно не обнаруживаются? :)
> Так что там расскажешь за необнаружимые двухбитовые ошибки в коде Хемминга 72/64?
> Действительно не обнаруживаются? :)Ты ещё и читать не умеешь.
Понятно, проехали.
>у райзенов же прозрачное шифрование памяти вроде как из коробки былотолько у виртуалок и только в pro версиях или threadripper или epyc.
Так было изначально, но после обнародования rowhammer AMD сделала tSME доступным даже на обычных райзенах. Просто включите в биосе.
Что и даже в Ryzen 1700? Брehня.
>Ах да, у райзенов же прозрачное шифрование памяти вроде как из коробки было, те предположение о том, что удастся флипнуть нужный бит оно сильно оптимистичное на фоне AES128. )Вашего "вроде" мне уже достаточно, чтобы никогда больше не усомниться в величии АМД 🍄
А ключ кем задаётся, если не секрет? Да это и не важно, это уже мелочи, Лизе Су виднее🔮 - она же врач, ну то есть доктор 👩⚕️
Я просто так на всячий кину соль три раза через плечо, ударю в бубен из шкуры пингвина, и три раза повторю "psfd=off"
Нет, ну, а что? А, вдруг, это тоже однажды сработает?🪄
> В качестве практических примеров приведены методы применения Blacksmith
> для изменения содержимого записей в таблице страниц памяти (PTE, page
> table entry) для получения привилегии ядра, повреждения хранящегося в
> памяти открытого ключа RSA-2048 в OpenSSH (можно привести открытый ключ
> в чужой виртуальной машине к соответствию закрытому ключу атакующего для
> подключения к VM жертвы) и обхода проверки полномочий через модификацию
> памяти процесса sudo для получения полномочий root.Вот это я понимаю - снять сливки.
Так попробуйте это сделать в облаке, где серверное железо с ECC памятью, а ещё хуже если там будет эпик стоять и гипервизор будет шифровать память разных виртуалок разными ключами.
> Применение в чипах кодов коррекции ошибок (ECC) и удвоения частоты
> обновления памяти не обеспечивает полной защиты, но усложняет эксплуатацию.
> Примечательно, что проблема не может быть блокирована в уже выпущенных чипах
> и требует реализации новой защиты на аппаратном уровне, поэтому атака
> останется актуальной ещё многие годы.
1 битфлип ECC пофиксит.
2 неудачных битфлипа поставят систему раком, и дальше "взламывать" станет нечего.
Удачно попасть 2 битовыми флипами вот этой вот имитацией рандома над рефрешем - ну, удачи :D
Вот в чем беда: один нельзя... два нельзя, а вот три битфлипа - проходят бесследно. Ну и кто дурак? :)
С двумя и более так: если удачно попадёшь - да, бесследно.
Если попадёшь не удачно - система уходит в forced halt, просто останавливает выполнение, и всё, без лишних соплей. И ломать больше нечего.
А теперь удачи подобным рандомом не в лабораторных условиях сделать "нужные" изменения так, чтобы систему раком не поставить.
Причём узнать "попал-не попал", и "куда попал" в случае данного метода невозможно никак, пока не будет попытки прочитать повреждённый участок, или не доберётся скраббинг. Короче, вдвойне удачи :DЭто хорошо в лабораторных условиях флипы считать. А в реальных - ну, есть они, но толку-то от них.
ECC может как в кокнретном чипе так и в модуле памяти+контроллере.
В новости про первое, а я про второе.
>Напомним, что атаки класса RowHammer позволяют исказить содержимое отдельных битов памяти путём цикличного чтения данных из соседних ячеек памяти.А нельзя располагать данные в ОЗУ так, чтобы каждая программа могла так влиять исключительно на собственную память?
В самом простом варианте между данными принадлежащими разным программам оставлять несколько страниц пустыми, в более искусных вариантах составить таблицу память каких приложений может между собой соседствовать.
Ну или просто постановить, что по память ядра к примеру занимает ОЗУ с такого-то по такой-то адрес, программы такого-то пользователя занимает ОЗУ с такого-то по такой-то адрес так далее.
Ну конечно понятно что скорее всего придётся писать новую версию ядра, но ведь это с другой стороны и повод сбросить кучу легаси кода и провести рефакторизацию там, где её ранее не делали.
А нельзя сначала что-нибудь про организацию памяти почитать ?
У кого райзены включайте в биосе tSME и горя не знайте, никакой RowHammer не пробьёт.Спасибо АМД за это.
А ещё лучше когда в прошивки uefi добавят подключение к wifi, автоматическое скачивание и запуск установки дистрибутива из iso.
Как твой комментарий соотноситься с моим? Зачем флудишь? Ты бот? Может нажать "к модератору"?
Видимо он хотел сказать, что прошивка прошивке рознь и не каждая прошивка имеет такие настройки, остаётся только мечтать, как он и помечтал о wifi в uefi. Тем более в ноутбуках.
Тебе расти и расти, это сарказм высшего полета.
Спасибо AMD за ещё одно плацебоМоя вера в то, что нейросеть внутри процессора АМД и так отобьёт все атаки и так была крепка, а теперь она ещё крепче!
Ну, надо сказать AMD бездонное спасибо за то, что не отключает ECC в десктопных процах.
Использовать плотные чипы (8/16/32G модули DRAM) без ECC - вообще лютое зло.
как не толерантно, у нас Смит уже блэк
Провал продаж ddr5 обеспечен, не будут массово брать электронику с таким уровнем цен на процы, видео и платы. Посидят-посидят, репу почешут, снизят цены, тем более с падением покупательской способности.
Ну что значит исказиться от чтения соседних ячеек..
А если это интенсивная обработка данных, то это уже не дыра в безапасности, а всего лишь глючная память.
Ды она не глючная, DRAM вообще так работает...
как скорректировать коды коррекций, и обнаружить ошибки в кодах обнаружения ошибок без задержек? кто перепроверит chipkill, контроллер памяти, входные данные и источник входных данных? как достоверно предсказать данные до их появления, чтобы избежать ошибок их представления? как выявить уже допущенные ошибки веток причинно-следственных связей и как верифицировать среду для этой операции?
На видео опечатка кстати.
Должно быть Let's start fussing, с учётом контекста.
Вот никогда такого не было и вот опять)))«Они лживые ублдки. Позвольте мне еще раз подчеркнуть, что проблемы Rowhammer существуют уже несколько поколений, но эти у*бки с радостью продавали заведомо сломанное оборудование потребителям и утверждали, что это “атака”, хотя на самом деле это просто “мы срезаем углы”.
Сколько раз Rowhammer, в виде переворота битов, происходил по чистой случайности при реальных нагрузках, не связанных с атаками? Мы никогда не узнаем. Потому что Intel подсовывала потребителям это дерьмо».Самизнаетекто.
Blacksmith
Название никого не оскорбляет?
Тссс!