Перейти к содержанию

Атака на оперативную память RowPress | Блог Касперского


Рекомендуемые сообщения

Сегодня мы поговорим о методе атаки на микросхемы оперативной памяти, актуальном и для персональных компьютеров, и для серверов, и для смартфонов. Тем более есть хороший повод: недавно было опубликовано свежее исследование, в котором предложен новый метод атаки через «простукивание ячеек памяти», получивший название RowPress. Сама по себе идея не нова — впервые нечто подобное было представлено почти 10 лет назад под именем RowHammer. Однако RowPress — более эффективный вариант атаки. Но для начала давайте разберемся, что именно понимается под тем самым «простукиванием».

Как работает оперативная память

Микросхемы оперативной памяти всегда были не очень надежными. Каждая ячейка памяти, хранящая один бит информации, представляет собой, ну если совсем упростить, миниатюрную батарейку. Когда мы ее заряжаем — записываем в ячейку единицу. Если заряда нет — это ноль. Только представьте, что это происходит миллионы раз в секунду. В современных микросхемах плотность таких ячеек фантастически высока: на кристалле размером с ноготь их миллиарды. При высокой частоте обновления данных и предельной миниатюрности электронных компонентов рано или поздно будут происходить сбои. Например, наша упрощенная «батарейка» потеряет заряд, и единица превратится в ноль. Иногда сбои могут возникать из-за внешних причин, скажем, если модуль памяти сильно нагреется, или даже из-за космических лучей.

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

Атака RowHammer

Но вернемся к исследованию RowHammer 2014 года. Исследователи из Университета Карнеги-Меллон и компании Intel показали, как можно воспользоваться вышеописанными особенностями динамически обновляемой оперативной памяти для причинения вреда. Если чтение данных деструктивно и после них следует перезапись, то что будет, если мы напишем программу, которая будет выполнять чтение десятки и сотни тысяч раз в секунду?

Схематичное изображение структуры ячеек оперативной памяти

Схематичное изображение структуры ячеек оперативной памяти. Источник

Ячейки памяти расположены в виде матрицы, и при любой операции с конкретной ячейкой происходит обращение к целому их ряду. Оказалось, что последовательное, многократное обращение к определенному ряду ячеек влияет на соседние ряды. Если проделать эту операцию очень много раз, информация в ячейках соседнего ряда может измениться: единица превратится в ноль или наоборот. В 2014 году возможность такой атаки показали для еще актуальных в то время модулей памяти стандарта DDR3.

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

В 2015 году представители компании Google показали, что атаку RowHammer можно применить для получения неограниченного доступа к оперативной памяти компьютера. Это очень сложная атака, в которой много неизвестных: надо еще как-то ухитриться попасть в нужную область памяти и вызвать «правильное» повреждение данных, чтобы компьютер не завис, программа не прекратила работу, а сделала то, что нужно потенциальному злоумышленнику. Но теоретическая возможность такой атаки была подтверждена.

BlackSmith: обход защиты RowHammer

Как вообще защищают данные от атаки RowHammer? Самый простой способ: если поступают запросы на чтение данных из какого-то ряда ячеек, можно принудительно обновить информацию и в соседних рядах тоже. Таким образом вероятность повреждения данных значительно снижается. Как и в случае аппаратных уязвимостей в процессорах, в каждом методе защиты рано или поздно обнаруживается какая-то проблема.

В 2021 году исследователи показали атаку BlackSmith — продемонстрировали, что при некоторых условиях можно вызвать сбои даже при наличии защиты от RowHammer. Как именно этого смогли добиться? Что, если не «стучать» в какой-то определенный ряд ячеек памяти рядом с искомым, а попробовать разные комбинации: сотни тысяч раз опрашивать ряды ячеек выше и ниже целевого либо атаковать сразу четыре ряда в определенной последовательности. Оказалось — это работает, ведь фундаментальная проблема (высокая плотность ячеек памяти) никуда не делась!

RowPress: повышение эффективности атаки

Самая свежая атака RowPress еще эффективнее, хотя и использует тот же базовый принцип. С одним небольшим, но важным изменением: атакующий пытается удержать один ряд ячеек в состоянии, открытом для чтения, максимально долго. Авторы исследования смогли найти еще одну стандартную особенность работы микросхем памяти и контроллера, которая вызывает еще больше «возмущений», влияющих на соседние ряды ячеек памяти. По сравнению с RowHammer эффективность атаки RowPress (измеряемая в количестве необходимых «простукиваний» — чем их меньше, тем лучше) повысилась в десятки и даже сотни раз. В некоторых пограничных случаях желаемое изменение значений в целевых ячейках памяти удавалось достичь после единственной операции чтения данных «по соседству».

Тестовая схема для исследования работы модулей оперативной памяти

Тестовая схема для исследования работы модулей оперативной памяти. Источник

Насколько это серьезная проблема? Вероятность того, что кто-то будет массово атаковать домашние компьютеры с помощью RowHammer, Blacksmith или RowPres, крайне мала. Опасность эти атаки представляют для бизнеса. Например, в теории они могут быть использованы для атаки на память серверов, работающих в публичных облаках. Ведь провайдеры предоставляют доступ к своим серверам, выделяя для пользователей «виртуальную машину», в которой можно выполнять любой код. Для них критически важно, чтобы в этой машине не было возможности «сбежать» из виртуального окружения, получив доступ к данным других клиентов. При этом виртуальная система — это, грубо говоря, программа, которая по определению может считывать и записывать данные в оперативную память сервера. По сути готовая платформа для атаки на память физического сервера.

Насколько теоретической является такая атака, можно понять по фотографии тестовой установки, использованной для исследования RowPress. Модуль памяти перенесен на отдельную плату. К нему подключено некое отладочное устройство, позволяющее тонко управлять работой оперативной памяти. Некоторые системы защиты были отключены. А главное — на сам модуль с микросхемами памяти был установлен нагреватель, поднимающий температуру до 50 или даже до 80 градусов, что само по себе повышает вероятность случайного или намеренного повреждения данных.

Особенности атак на «железо»

Если сравнить атаку RowPress с более ранней RowHammer, то, по сути, исследователи просто слегка модифицировали метод обращения к памяти и смогли обойти (в том числе на реальной системе, без подогрева модулей и прочего «читерства») реализованные производителями модулей способы защиты. Ученые предложили свой вариант решения этой проблемы, который, к счастью, незначительно сказывается на производительности. Однако, как это обычно бывает с «железными» уязвимостями, от них вряд ли получится избавиться полностью. Нельзя делать микросхемы памяти с меньшей плотностью. Наоборот, с каждым годом емкость отдельного модуля памяти только растет.

Не получится применить и «надежный» способ коррекции ошибок — он потребует резервирования до трети объема оперативной памяти. Обычный метод коррекции ECC снижает эффективность атаки, но не исключает ее. Поэтому можно уверенно говорить, что атака RowPress — не последний вариант «простукивания».

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

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

View the full article

Ссылка на комментарий
Поделиться на другие сайты

Пожалуйста, войдите, чтобы комментировать

Вы сможете оставить комментарий после входа в



Войти
  • Похожий контент

    • KL FC Bot
      Автор KL FC Bot
      Серьезные ИБ-инциденты порой затрагивают многих участников, зачастую и тех, кто повседневно не занимается вопросами ИТ и ИБ. Понятно, что в первую очередь усилия сосредоточиваются на выявлении, сдерживании и восстановлении, но, когда пыль немного осядет, наступает время для еще одного важного этапа реагирования — извлечения уроков. Чему можно научиться по итогам инцидента? Как улучшить шансы на успешное отражение подобных атак в будущем? На эти вопросы очень полезно ответить, даже если инцидент не принес существенного ущерба из-за эффективного реагирования или просто удачного стечения обстоятельств.
      Немного о людях
      Разбор инцидента важен для всей организации, поэтому к нему обязательно привлекать не только команды ИТ и ИБ, но также высшее руководство, бизнес-владельцев ИТ-систем, а также подрядчиков, если они были затронуты инцидентом или привлекались к реагированию. На встречах этой рабочей группы нужно создать продуктивную атмосферу: важно донести, что это не поиск виноватых (хотя ошибки будут обсуждаться), поэтому перекладывание ответственности и манипулирование информацией исказят картину, повредят анализу и ухудшат позицию организации в долгосрочной перспективе.
      Еще один важный момент: многие компании скрывают детали инцидента в страхе за репутацию или опасаясь повторной кибератаки по тому же сценарию. И хотя это вполне объяснимо и некоторые подробности действительно конфиденциальны, нужно стремиться к максимальной прозрачности в реагировании и делиться подробностями атаки и реагирования если не с широкой публикой, то как минимум с узким кругом коллег из сферы ИБ, которые могут предотвратить похожие атаки на свои организации.
       
      View the full article
    • KL FC Bot
      Автор KL FC Bot
      Игра Battle City, более известная как танчики, — символ давно ушедшей эпохи. Около 30 лет назад геймеры вставляли картридж в приставку, садились за пузатые телевизоры и пачками уничтожали вражеские танки до тех пор, пока кто-нибудь им не скажет про «кинескоп, который вот-вот должен сесть».
      Сегодня мир совсем другой, а танчики по-прежнему популярны. Дело в том, что современные аналоги предлагают геймерам не только поиграть, но и заработать NFT-токены. Злоумышленники тоже кое-что предлагают: сложную атаку для любителей криптовалютных игр.
      Бэкдор и эксплойт уязвимости нулевого дня в Google Chrome
      Эта история началась в феврале 2024 года, когда наше защитное решение обнаружило проникновение бэкдора Manuscrypt на компьютер пользователя из России. Такой бэкдор нам давно известен, его различные версии используют члены группировки APT Lazarus как минимум с 2013 года. Но что особенного в этой истории, если мы прекрасно знаем основной инструмент и методы работы злоумышленников?
      Дело в том, что эти хакеры обычно нацелены на крупные организации: банки, IT-компании, университеты и даже правительственные организации. Теперь руки Lazarus дотянулись до физических лиц — бэкдор на компьютере частного пользователя! Киберпреступники заманили жертву на сайт игры и получили полный доступ к ее компьютеру. Злоумышленникам удалось это сделать благодаря трем составляющим:
      невероятному желанию жертвы сыграть в любимые танчики в новой оболочке; уязвимости нулевого дня в Google Chrome; наличию эксплойта, позволявшего удаленно выполнить код в процессе Google Chrome. Для тех, кто переживает: компания Google выпустила обновление браузера, заблокировала сайт танчиков и поблагодарила исследователей безопасности «Лаборатории Касперского». Но на всякий случай: наши продукты детектируют и бэкдор Manuscrypt, и эксплойт. Подробности этой истории мы раскрыли в блоге Securelist.
       
      View the full article
    • KL FC Bot
      Автор KL FC Bot
      Желание оставаться анонимным в Интернете существует столько же лет, сколько и сам Интернет. Раньше пользователи считали, что, скрываясь за никнеймом, можно писать гадости про соседа на местных форумах — и никто не узнает об этом. Сейчас таких троллей можно вычислить на раз-два. С тех пор технологии совершили квантовый скачок: появились распределенные сети, анонимные браузеры и прочие инструменты для личной конфиденциальности. Один из них, Tor Browser*, особенно активно продвигал десять лет назад бывший агент АНБ Эдвард Сноуден.
      А может ли сегодня Tor обеспечить полную анонимность — или можно уже не заморачиваться и переходить на классический браузер вроде Google Chrome?
      Как деанонимизируют пользователей Tor
      Если вы впервые слышите про Tor и не представляете, как он работает, ознакомьтесь с нашим винтажным материалом. Там мы ответили на самые популярные вопросы: как в браузере обеспечивается анонимность, кому она нужна и чем обычно занимаются в теневом Интернете. Если коротко, то анонимизация трафика пользователей Tor обеспечивается за счет распределенной сети серверов, которые называют узлами. Весь сетевой трафик многократно шифруется, проходя через несколько сетевых узлов на пути между двумя коммуницирующими компьютерами. Ни один сетевой узел не знает одновременно и адрес отправки пакета данных, и адрес получателя, к тому же узлам недоступно содержимое пакета. Теперь, когда короткий экскурс закончен, мы сосредоточимся на реальной угрозе безопасности адептов анонимного Интернета.
      В сентябре немецкие спецслужбы установили личность одного из пользователей Tor. Как им это удалось? Главным ключом в деанонимизации стали данные, полученные в результате так называемого временнóго анализа.
       
      View the full article
    • KL FC Bot
      Автор KL FC Bot
      Мы уже рассказывали, что большинство приложений для фитнеса и трекинга при занятиях спортом (например, бегом) при настройках по умолчанию практически никак не защищают ваши персональные данные. Маршруты и время тренировок, фотографии с пробежек, данные о вашей физической форме в большинстве случаев выкладываются в открытый доступ в Интернет, если вы явно это не запретите. А результаты, как мы уже писали, могут быть катастрофическими — от утечек местоположения секретных объектов до сталкинга и покушений на убийство.
      Чтобы избежать этого, необходимо настроить как сами смартфоны, так и беговые приложения. По ссылкам вы найдете инструкции по настройке наиболее популярных трекеров бега: Strava, Nike Run Club, MapMyRun, adidas Running.
      Завершая обзор настроек приватности беговых приложений, сегодня мы расскажем, как правильно настроить ASICS Runkeeper (версии для Android и iOS).
      Как и другие крупные производители спортивной обуви и амуниции Nike и adidas, японская компания ASICS, хорошо известная своей беговой обувью, не стала изобретать велосипед, а просто приобрела популярное приложение для трекинга бега Runkeeper и даже не переименовала его, добавив лишь собственное имя — ASICS Runkeeper.
      Настройки приватности в ASICS Runkeeper, как, впрочем, и в других беговых приложениях, находятся в не вполне очевидном месте. Если на основном экране щелкнуть на шестеренку в левом верхнем углу, то там вы их не найдете — это настройки тренировки. Вместо этого нажмите на кнопку Я в левом нижнем углу, далее нажмите на шестеренку в правом верхнем углу и на открывшейся странице выберите Настройки приватности.
      Где найти настройки приватности в приложении ASICS Runkeeper: Я → Настройки → Настройки приватности
       
      View the full article
    • KL FC Bot
      Автор KL FC Bot
      Как правило, разработчики ПО являются как минимум продвинутыми пользователями компьютеров. Поэтому может сложиться впечатление, что они с большей вероятностью смогут выявить и отразить атаку злоумышленников. Но, как показывает практика, от социальной инженерии не защищен никто — надо лишь найти к человеку правильный подход. В случае IT-специалистов таким подходом часто может стать предложение хорошо оплачиваемой работы в престижной компании. В погоне за вакансией мечты даже опытные айтишники иногда теряют осторожность и начинают вести себя ничем не лучше школьников, скачивающих пиратские игры из Интернета. А реальной целью (а точнее жертвой) атаки может стать его текущий работодатель.
      Недавно стало известно о новой схеме, которую хакеры используют для заражения компьютеров интересующих их разработчиков: под видом тестового задания они подсовывают соискателям скрипт с бэкдором. И это не изолированный случай, а лишь самая свежая итерация хорошо отлаженного процесса. Хакеры уже несколько лет активно используют фейковые вакансии для охоты на IT-специалистов — и в ряде случаев добиваются поистине оглушительного успеха.
      Казалось бы, это должно быть личной проблемой айтишника. Но в современных условиях велика вероятность, что и основную работу, и тестовое задание на новую вакансию специалист будет делать на одной и той же машине. То есть под угрозой может оказаться не только личная, но и корпоративная информация.
      Фейковая вакансия, криптоигра и ограбление на $540 миллионов
      Один из самых громких случаев успешного применения тактики фейковой вакансии произошел в 2022 году. Тогда злоумышленникам удалось связаться (вероятно, через LinkedIn) с одним из старших инженеров компании Sky Mavis, которая разрабатывает криптоигру Axie Infinity, и предложить ему высокооплачиваемую работу.
      Получив заманчивое предложение, сотрудник прилежно прошел несколько инсценированных взломщиками этапов отбора. В итоге все, естественно, закончилось получением оффера, который был отправлен жертве в виде PDF-файла.
       
      View the full article
×
×
  • Создать...