The OpenNET Project / Index page

[ новости /+++ | форум | wiki | теги | ]

Уязвимость в NAND Flash может привести к повреждению чужих данных на SSD-накопителях

21.05.2017 18:55

Группа исследователей из Университета Карнеги-Меллона, компании Seagate и Швейцарской высшей технической школы Цюриха выявила низкоуровневую уязвимость в организации хранения информации на современных NAND Flash-чипах, применяемых в SSD-накопителях. Атакующий может сформировать определённую активность со своими данными на накопителе, в результате которой будет нарушена целостность неподконтрольных ему данных, которыми манипулируют другие процессы.

Уязвимость вызвана особенностями хранения данных чипами NAND Flash, поддерживающими технологию MLC (Multi-Level Cell), при которой каждая ячейка может принимать одно из четырёх пороговых напряжений (низкое — 0, два промежуточных — 01/10 и высокое — 11), т.е. MLC обеспечивает хранение в одной ячейке сразу двух битов, в отличие от классической схемы SLC (Single-Level Cell), при которой низкое напряжение в ячейке соответствует 0, а высокое — 1. Из-за паразитной ёмкостной связи между соседними ячейками программирование содержимого ячеек может влиять на уровень заряда в соседних ячейках и появлению ошибок в них, когда к ранее незаряженной ячейке прикладывается высокий уровень напряжения.

Для обхода подобного эффекта производители применяют двухэтапный метод программирования ячеек, при котором вначале устанавливается бит, задаваемый промежуточным напряжением, а затем напряжение ячейки доводится до высокого. Исследователи показали, что подобная мера не является полностью надёжной и имеет слабое звено. В частности, доказано, что частично запрограммированные ячейки, для которых завершён первый этап программирования, но ещё не выполнен второй, значительно более подвержены влиянию изменения напряжения в соседних ячейках и возникновению искажений при чтении ("read disturb"), чем полностью запрограммированные ячейки. В результате разработаны две атаки, нацеленные на искажение значений в частично запрограммированных ячейках.

Первая атака реализуется через выполнение операций записи данных, соответствующих определённому шаблону, который позволят в 4,9 раза увеличить вероятность возникновения ошибки при работе алгоритма программирования ячеек MLC и в качестве косвенного влияния приводит к повреждению значений в соседних ячейках, находящихся в первой фазе программирования. Метод во многом напоминает атаку Rowhammer, нацеленную на повреждение содержимого ячеек DRAM и также разработанную в университете Карнеги-Меллон.

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

  1. Главная ссылка к новости (https://www.bleepingcomputer.c...)
  2. OpenNews: Разработан метод атаки на уязвимость в DRAM-памяти с использованием JavaScript
  3. OpenNews: Продемонстрировано использование уязвимости в DRAM-памяти для повышения привилегий в системе
  4. OpenNews: Содержимое ячеек DRAM может быть повреждено в результате цикличного чтения
  5. OpenNews: Представлен метод скрытого изменения памяти чужих виртуальных машин
Лицензия: CC-BY
Тип: Проблемы безопасности
Короткая ссылка: https://opennet.ru/46576-flash
Ключевые слова: flash, memory, rowhammer
При перепечатке указание ссылки на opennet.ru обязательно
Обсуждение (57) Ajax | 1 уровень | Линейный | +/- | Раскрыть всё | RSS
  • 1.1, rugen (?), 21:08, 21/05/2017 [ответить] [﹢﹢﹢] [ · · · ]  
  • –15 +/
    До исследования проблемы, видимо, не существовало. Аппаратная уязвимость "минус N-го дня", и вопрос к исследователям - уже этического плана.
     
     
  • 2.7, maximnik0 (?), 22:17, 21/05/2017 [^] [^^] [^^^] [ответить]  
  • +4 +/
    > До исследования проблемы, видимо, не существовало. Аппаратная уязвимость "минус N-го дня",
    > и вопрос к исследователям - уже этического плана.

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


     
     
  • 3.65, fx (ok), 15:59, 25/05/2017 [^] [^^] [^^^] [ответить]  
  • –2 +/
    > ,и не в коем случае не розгонять память

    у тибя каррекция сламалась и память розагналась?
    ", и ни в коем случае не разгонять память"

     
  • 2.9, Аномномномнимус (?), 22:27, 21/05/2017 [^] [^^] [^^^] [ответить]  
  • +5 +/
    Если вопрос "а в безопасности ли мои данные" вызывает у вас вопросы этического плана, то у вас всё плохо с этикой
     

  • 1.2, lone_wolf (ok), 21:19, 21/05/2017 [ответить] [﹢﹢﹢] [ · · · ]  
  • –16 +/
    Не ну нашли молодцы, но это больше напоминает похвалите нас мы нашли уязвимость но как её исправлять или как закрыть уже на проданных устройствах, мы либо не скажем вам либо сами не знаем (нужное подчеркнуть). И возникает вопрос нахрена об этом объявлять?
     
     
  • 2.3, anonymous (??), 21:26, 21/05/2017 [^] [^^] [^^^] [ответить]  
  • +6 +/
    > И возникает вопрос нахрена об этом объявлять?

    Чтобы покупатели не покупали кота в мешке.

     
  • 2.4, bircoph (ok), 21:38, 21/05/2017 [^] [^^] [^^^] [ответить]  
  • +17 +/
    Объявлять, чтоб люди знали, что их железо не безопасно.

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

     
     
  • 3.25, Адекват (ok), 09:17, 22/05/2017 [^] [^^] [^^^] [ответить]  
  • –8 +/
    > Объявлять, чтоб люди знали, что их железо не безопасно.
    > Я вообще против всей этой политики сокрытия уязвимостей до их исправления. Я
    > за свободный софт и информация о его характеристиках тоже должна быть
    > свободной. Все равно всякие паскудные ведомства уже имеют на руках эти
    > 0-day, так что он молчания выигрывают лишь они.

    Ты изменишь свою точку зрения, когда от раскрытия уязвимости до исправления пострадаешь или лично ты, или кто-то из твоих близких. Как вот было с Wannacry - просто представь, что оно бы появилось ДО того, как майкрософт заплатки бы выпусило, и способа защититься не было бы в принципе.

     
     
  • 4.26, Аноним (-), 09:34, 22/05/2017 [^] [^^] [^^^] [ответить]  
  • +8 +/
    Вечно ты со своим ником пишешь неадекватные заявления.

    1. Будь код винды открытым, эта уязвимость не существовала бы столько лет неизвестной.

    2. Никто из нас тут от уязвимостей винды не пострадает, очевидно же. Страдать - ваш удел.

     
     
  • 5.30, Адекват (ok), 10:12, 22/05/2017 [^] [^^] [^^^] [ответить]  
  • –5 +/
    Ну, только если следовать вашей же логике - сначала WannaCry у всех все пошифров... большой текст свёрнут, показать
     
     
  • 6.53, Vcoder (ok), 15:53, 22/05/2017 [^] [^^] [^^^] [ответить]  
  • +/
    > изучить каждую строчку кода ядра, всех библиотек и программного обеспечения, а так же все исходные коды компилятора, которым будете собирать (были собраны) бинарные файлы и библиотеки.

    ... а также исходные коды компилятора, которым будет собираться компилятор, которым будете собирать...

    ... а также исходные коды компилятора, которым будет собираться компилятор, которым будет собираться компилятор, которым...

    ...

     
  • 6.66, Аноним (-), 19:29, 25/05/2017 [^] [^^] [^^^] [ответить]  
  • +/
    Закрытие всех удалённых уязвимостей (пошаговая инструкция):

    1. Обрубить сетевой кабель в подъезде.
    2. ???
    3. PROFIT!

     
  • 4.28, Zlo (??), 10:01, 22/05/2017 [^] [^^] [^^^] [ответить]  
  • +5 +/
    Ох уж этот Wannacry, до него типа шифровальщиков не было и народ не страдал. Если бы не шумиха в сми никто бы и его не запомнил.
     
  • 4.29, Led (ok), 10:01, 22/05/2017 [^] [^^] [^^^] [ответить]  
  • +3 +/
    > Wannacry - просто представь, что оно бы появилось ДО того,
    > как майкрософт заплатки бы выпусило, и способа защититься не было бы
    > в принципе.

    А что случилось бы? Вам, вендузятникам, страдать не привыкать.

     
     
  • 5.69, Аноним (-), 11:16, 06/06/2017 [^] [^^] [^^^] [ответить]  
  • +/
    В том то и дело что, чаще всего "вендузятники" - безопасностью, а то и вовсе наличием обновлений - не страдают...
     
  • 4.31, Аноним_oyc (?), 10:33, 22/05/2017 [^] [^^] [^^^] [ответить]  
  • +3 +/
    Какое дело людям здесь присутвующим до проблем софта Мелкомягких? И тем более, что они сами первым делом сообщают о своих уязвимостях этим самым паскудным ведомствам.
     
  • 4.32, Michael Shigorin (ok), 10:34, 22/05/2017 [^] [^^] [^^^] [ответить]  
  • +1 +/
    > Как вот было с Wannacry

    А какие версии ядра/библиотек/софтов оно задевает, что-то не припомню?

    PS: и вот всё у вас так.

     
  • 4.35, Аноним (-), 10:59, 22/05/2017 [^] [^^] [^^^] [ответить]  
  • –3 +/
    За вирусы такого типа (любые шифровальщики, даже не за деньги  продающие ключи) нужно вводить ответственность уровнем чуть ниже чем за терроризм, будет наиболее эффективно, да по началу будут несколько пострадавших "дурачков" но со временем понимание ценности сохранности чужих данных на примере пожизненно работающих в отдалённых местах будет приходить ещё в детском возрасте. А у спецслужб появится неплохая мотивация к поиску и наказанию.
     
     
  • 5.41, Гость (??), 11:13, 22/05/2017 [^] [^^] [^^^] [ответить]  
  • +4 +/
    > нужно вводить ответственность уровнем чуть ниже чем за терроризм

    Вот это пригорело.."Эникейщики" не виноваты?

     
     
  • 6.70, Аноним (-), 11:20, 06/06/2017 [^] [^^] [^^^] [ответить]  
  • +/
    >> нужно вводить ответственность уровнем чуть ниже чем за терроризм
    > Вот это пригорело.."Эникейщики" не виноваты?

    А, понял он вероятно про то чоэтих тыррористов надо принудительно террористический отдел армии и спецслужб слать. Ну так давно же ловят - и тихо шлют. Работать - во благо своей страны/ОПГ.

     
     
  • 7.71, Аноним (-), 11:22, 06/06/2017 [^] [^^] [^^^] [ответить]  
  • +/
    Впрочем "любые шифровальщики, даже не за деньги  продающие ключи" скорее к статье УК: похищение с целью  вымогательства.
     
  • 4.39, Admino (ok), 11:04, 22/05/2017 [^] [^^] [^^^] [ответить]  
  • +5 +/
    > и способа защититься не было бы в принципе.

    Ну да, файрволы запретили же ещё в 1981-м.

     
  • 4.40, Andrew Kolchoogin (ok), 11:12, 22/05/2017 [^] [^^] [^^^] [ответить]  
  • +/
    > и способа защититься не было бы в принципе.

    X8-O

    Винду нельзя бэкапить?

    Охренеть, бл...

     
  • 2.6, Смертьврагампролетариата (?), 21:56, 21/05/2017 [^] [^^] [^^^] [ответить]  
  • –2 +/
    Как закрыть, как закрыть ?? Пишем данные сразу двумя байтами, чтобы было как в single-level. Закрывается на уровне дров диска/фс
     
     
  • 3.33, Michael Shigorin (ok), 10:38, 22/05/2017 [^] [^^] [^^^] [ответить]  
  • +2 +/
    > Натоящий инженер всегда объявит о несовершенстве технологии

    Ага, особенно когда у него работодатель сюгейт (барракуды которого сыпались *много лет* на протяжении нескольких серий, включая ту же ES.2, из-за косяков адаптивного форматирования на первых цилиндрах).  Даже придумалось:

    Seagate недаром злится -- прошла его пора,
    флэшак стучит в головку и гонит со двора.

    PS: понятно, что для долгосрочного хранения диски всё-таки получше будут, но юмор списка "открывателей" остаётся.

     
     
  • 4.67, Аноним (-), 19:32, 25/05/2017 [^] [^^] [^^^] [ответить]  
  • –1 +/
    > PS: понятно, что для долгосрочного хранения диски всё-таки получше будут

    Кроме сигейта. Было два сигейта, оба умерли от одного симптома. Данные выташить не удалось, все имена и прочая информация сохранилась а данных нет. Обидно до сих пор.

     
  • 3.37, X3asd (ok), 11:03, 22/05/2017 [^] [^^] [^^^] [ответить]  
  • –2 +/
    > Пишем данные сразу двумя байтами

    и что? соседних ячеек у двух байт даже ещё больше(!), чем это было при записи одним байтом

     

  • 1.5, Аноним (-), 21:41, 21/05/2017 [ответить] [﹢﹢﹢] [ · · · ]  
  • +9 +/
    Вспомнилось нетленное: Причина смерти HDD: первый блин -- комом.
     
  • 1.8, Аноним (-), 22:25, 21/05/2017 [ответить] [﹢﹢﹢] [ · · · ]  
  • –1 +/
    > 4.9 раза увеличить

    Ето как с 0.01% на 0.049% или с 10% на 49%?

     
  • 1.11, Anonplus (?), 22:35, 21/05/2017 [ответить] [﹢﹢﹢] [ · · · ]  
  • –7 +/
    С тем же успехом вредоносная программа может зашифровать ваши или украсть. Или банально стереть их, что намного проще.

    Если у юзера на ПК запускается хрен знает что, полученное хрен знает откуда ("крякер интернета"), то тут проблема не в SSD...

     
     
  • 2.12, Аноним (-), 22:42, 21/05/2017 [^] [^^] [^^^] [ответить]  
  • +6 +/
    > Если у юзера на ПК запускается хрен знает что, полученное хрен знает
    > откуда ("крякер интернета"), то тут проблема не в SSD...

    Про многопользовательские системы вы видимо не слышали.

     
  • 2.68, Аноним (-), 19:34, 25/05/2017 [^] [^^] [^^^] [ответить]  
  • +/
    > Если у юзера на ПК запускается хрен знает что, полученное хрен знает
    > откуда

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

     

  • 1.14, Аноним (-), 23:27, 21/05/2017 [ответить] [﹢﹢﹢] [ · · · ]  
  • +/
    > выявила низкоуровневую уязвимость в организации хранения информации на современных NAND Flash-чипах, применяемых в SSD накопителях

    Откатываемся на HDD - так победим!

     
     
  • 2.16, Аноним (-), 00:44, 22/05/2017 [^] [^^] [^^^] [ответить]  
  • +/
    зря смеетесь.
    DDR2, либо ранние DDR3, ибо все, что новее - подвержено похожей уязвимости бай дезигн. Кора дуба или амд до бульдозера, ибо в них нет интел ме и псп. Ну и так далее.
     
     
  • 3.24, foo (?), 08:41, 22/05/2017 [^] [^^] [^^^] [ответить]  
  • –1 +/
    ну, может, если критично - надо ECC всё-таки использовать?
     
     
  • 4.36, Аноним (-), 11:02, 22/05/2017 [^] [^^] [^^^] [ответить]  
  • +/
    > ну, может, если критично - надо ECC всё-таки использовать?

    ну так можно 2-3 бита за раз сломать...

     

  • 1.15, grsec (ok), 00:22, 22/05/2017 [ответить] [﹢﹢﹢] [ · · · ]  
  • –4 +/
    Всем в облака. Это же так прекрасно, дешево и безопасно.
     
     
  • 2.17, Аноним (-), 01:04, 22/05/2017 [^] [^^] [^^^] [ответить]  
  • +4 +/
    Там много белокрылых лошадок и единорогов, а также полный serverless. Ура товарищи!
     
  • 2.52, Омский линуксоид 2 (?), 15:33, 22/05/2017 [^] [^^] [^^^] [ответить]  
  • +1 +/
    There is no cloud, it is just someone's computer. Извините. Вырвалось.
     

  • 1.21, Ivan_83 (ok), 03:44, 22/05/2017 [ответить] [﹢﹢﹢] [ · · · ]  
  • +1 +/
    Только вот я слышал что современные накопители не пишут то что прислал юзер, а предвательно обрабатывают: кто то сжимает, кто то шифрует константным ключём просто чтобы была энтропия.

    Точно так же АМД в райзенах решило и ровхаммер похерить в консьюмерском сегменте, там вроде как оператива на лету шифруется контроллером.
    Плюс там теперь типа защита от того что память вытащят и прочитают все секреты.
    Одним шифрованием двух зайцев.

     
     
  • 2.34, Аноним_oyc (?), 10:45, 22/05/2017 [^] [^^] [^^^] [ответить]  
  • +/
    Наверное, правильнее будет сказать, не шифруется, а скремблируется. И как это спасёт от расшифровки вытащенной памяти, если ключ константный?
     
     
  • 3.38, Аноним (-), 11:04, 22/05/2017 [^] [^^] [^^^] [ответить]  
  • +/
    > Наверное, правильнее будет сказать, не шифруется, а скремблируется. И как это спасёт
    > от расшифровки вытащенной памяти, если ключ константный?

    Почему константный?
    Кто мешает при каждом включении генерировать новый?

     
  • 3.49, Ivan_83 (ok), 13:09, 22/05/2017 [^] [^^] [^^^] [ответить]  
  • –1 +/
    Нет, именно шифруется.
    Это видимо для коперастов сделали, чтобы юзеры не могли вытянуть ключи из памяти совсем ни как.
    Процу ничего не мешает генеририть ключ каждый раз на ините и хранить где то внутри контроллера памяти.
    Хз как при этом будет гибернейт.
    АМД доку пока не выпустило.
     

  • 1.42, Гость (??), 11:15, 22/05/2017 [ответить] [﹢﹢﹢] [ · · · ]  
  • –2 +/
    А чего все так возбудились на завуалированную рекламу TLC от Samsung? "Атакующий может сформировать определённую активность со своими данными на накопителе" - никто даже не додумался, что нужен физический доступ к компу?
     
     
  • 2.43, 1 (??), 11:45, 22/05/2017 [^] [^^] [^^^] [ответить]  
  • +2 +/
    а как же скриптик на js в браузере ?
     
     
  • 3.45, Гость (??), 12:02, 22/05/2017 [^] [^^] [^^^] [ответить]  
  • +/
    NoScript запрещен?
     
     
  • 4.46, Аноним (-), 12:13, 22/05/2017 [^] [^^] [^^^] [ответить]  
  • –1 +/
    > NoScript запрещен?

    увы, но сейчас не 2010 год. нынешний интернет, точнее уеб, без js уже не юзабелен.

     
     
  • 5.47, Гость (??), 12:55, 22/05/2017 [^] [^^] [^^^] [ответить]  
  • +/
    Вова всех "уравняет" и сделает Интернет по паспорту. Недавняя история с "Мегафоном" - лишнее тому доказательство.
     
     
  • 6.51, 1 (??), 14:30, 22/05/2017 [^] [^^] [^^^] [ответить]  
  • +/
    Это не исключит запуска js
     
  • 6.55, Гость (??), 19:18, 22/05/2017 [^] [^^] [^^^] [ответить]  
  • –1 +/
    А зачем тебе js без Интернета? Пацанам в песочнице хвастаться?
     
  • 3.62, Lucifer Morningstar (?), 12:03, 23/05/2017 [^] [^^] [^^^] [ответить]  
  • +/
    Соснет твой скриптик в браузере. Он может писать ТОЛЬКО через вызовы браузера, а тот ТОЛЬКО через вызовы ОС, которая в свою очередь это будет делать через API ФС.

    Нет, конечно теоретически можно делать echo "ATA_КОМАНДА" > /dev/nvme0n1 или шота около того, но если JS позволит такое делать, это уже будет дыра в JS, а не в NAND.

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

     
  • 2.54, Аноним (-), 15:55, 22/05/2017 [^] [^^] [^^^] [ответить]  
  • +/
    > завуалированную рекламу TLC от Samsung?

    Если двухбитные MLC уязвимы, то трёхбитные TLC и подавно (хотя допускаю, что атаковать их надо несколько иначе). Надо наоборот на SLC переходить.

     
     
  • 3.56, Гость (??), 19:19, 22/05/2017 [^] [^^] [^^^] [ответить]  
  • –1 +/
    > Надо наоборот на SLC переходить.

    Сколько это удовольствие будет стоить?

     
     
  • 4.57, MT (ok), 21:34, 22/05/2017 [^] [^^] [^^^] [ответить]  
  • +/
    Теоретически всего вдвое дороже двухуровневой MLC.
     
     
  • 5.64, Аноним (-), 20:35, 24/05/2017 [^] [^^] [^^^] [ответить]  
  • +/
    Если выйдут на те же тиражи, то существенно меньше, чем вдвое. Цена не только числом ячеек определяется.
     

  • 1.44, xv (??), 11:50, 22/05/2017 [ответить] [﹢﹢﹢] [ · · · ]  
  • +/
    Судя по методу, на накопители с включенным Opal или с LDPC такая атака смысла не имеет.
     
  • 1.50, Аноним (-), 13:28, 22/05/2017 [ответить] [﹢﹢﹢] [ · · · ]  
  • –2 +/
    Да ладно MLC плохой теперь надо бежать покупать 3D MLC там такого нет видимо. Просто продвижение технологии не более
     

     Добавить комментарий
    Имя:
    E-Mail:
    Текст:



    Спонсоры:
    Inferno Solutions
    Hosting by Hoster.ru
    Хостинг:

    Закладки на сайте
    Проследить за страницей
    Created 1996-2020 by Maxim Chirkov
    Добавить, Поддержать, Вебмастеру