Сводная группа исследователей, в которую вошли специалисты из университета Карнеги-Меллон, компании Seagate и Швейцарской высшей технической школы Цюриха, представила интересный доклад (PDF) на международном симпозиуме High-Performance Computer Architecture (HPCA). Эксперты рассказали, что чипы NAND-памяти, которые применяются в SSD, содержат «программные уязвимости» (programming vulnerabilities), которые могут использоваться для подмены и порчи данных на накопителях, а также для значительного сокращения срока службы SSD.

Раньше SSD-накопители повсеместно использовали технологию SLC (single-level cell), которая предполагает, что одна ячейка флеш-памяти NAND хранит один бит данных, ноль или единицу. Затем производители поняли, что можно использовать транзистор с плавающим затвором (floating gate transistor), который позволит хранить в ячейке два бита данных, то есть подаваемое на ячейку электрическое напряжение позволяет программировать четыре состояния: 00, 01, 10, 11. Данная технология получила название MLC (multi-level cell) и с 2015 года является превалирующей на рынке SSD. И именно MLC предложили атаковать исследователи.

Тестовый стенд команды

Первый тип атак специалисты назвали program interference, и с его помощью атакующий может записать данные на SSD. Исследователи использовали специальные шаблоны данных, которые провоцируют в 4,9 раз больше ошибок в MLC, побочным эффектом от которых становится то самое interference, то есть соседние ячейки NAND начинают влиять друг на друга, в результате чего значения битов могут меняться. В итоге атакующий способен повредить локальные данные и сократить срок службы SSD, если будет атаковать достаточно долго. Как можно заметить, данная атака во многом похожа на классическую Rowhammer-атаку, которая используется против памяти RAM, но сами исследователи никаких параллелей с Rowhammer не проводят.

Второй тип атак получил название read disturb и также связан с ошибкой в программной логике NAND-чипов. В данном случае злоумышленник может использовать эксплоит против SSD-накопителя, заставив его выполнить большое количество read-операций за короткое время. В результате это приведет к возникновению феномена, названного read disturb errors, то есть возникновению read disturb ошибок. После этого устройство окажется практически непригодно для надежного хранения данных.

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

  • Подпишись на наc в Telegram!

    Только важные новости и лучшие статьи

    Подписаться

  • Подписаться
    Уведомить о
    3 комментариев
    Старые
    Новые Популярные
    Межтекстовые Отзывы
    Посмотреть все комментарии