Атака повторного воспроизведения

Атака повторного воспроизведения (Replay attack) — атака на систему аутентификации путём записи и последующего воспроизведения ранее посланных корректных сообщений или их частей. Любая неизменная информация, такая как пароль или биометрические данные могут быть записаны и использованы позднее для имитации аутентичности.

Примеры

Классическая атака повторного воспроизведения
  • Алиса аутентифицируется на компьютере Боба, пересылая пакеты, содержащие данные учётной записи.
  • Боб подтверждает личность Алисы и она получает доступ на компьютер Боба.
  • Чак перехватывает пакеты, содержащие данные учётной записи Алисы.
  • Когда обмен данными между Алисой и Бобом заканчивается, Чак отправляет на компьютер Боба перехваченные пакеты с данными учётной записи Алисы.

Таким образом Чак получает несанкционированный доступ к данным Боба.

Атака отражением
  • Чак создаёт соединение к компьютеру Боба.
  • Компьютер Боба отправляет аутентификационный запрос.
  • Чак создаёт соединение к компьютеру Алисы и отправляет копию идентификационного запроса Боба.
  • Компьютер Алисы отвечает на запрос.
  • Чак отправляет полученный от Алисы идентификатор.

Таким образом, при условии что Алиса имеет доступ к компьютеру Боба, Чак получает несанкционированный доступ к его данным.

Реализации атаки в сети

На практике для совершения данного вида атаки используется несовершенство средств аутентификации потока данных. Злоумышленник перехватывает несколько пакетов или команд приложения, изменяет их (к примеру меняет сумму денежного перевода) и воспроизводит с целью выполнения несанкционированных действий.

Одним из видов атаки воспроизведения сеанса связи является применение JavaScript для создания бреши в системе Hotmail и других системах электронной почты Web. Такая брешь позволяет хакеру создать сообщение электронной почты с фальсифицированным адресом и направить его на компьютер другого лица. Пользователь, заинтересовавшись «невинной» на вид Web-страницей, в которую хакер вложил наносящий вред программный код JavaScript, подвергается атаке. Атаки воспроизведения и захвата сеанса связи могут реализовать только квалифицированные программисты, поэтому документально подтверждённых случаев таких атак немного.

Уэнстром М. «Организация защиты сетей Cisco»
Атака воспроизведения для сессий CookieStore[1]

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

  • Пользователь получает кредит, сумма сохраняется в сессию.
  • Пользователь покупает что-либо.
  • Новая изменившаяся сумма кредита сохраняется в сессии.
  • Пользователь берет куки с первого шага (которые он предварительно скопировал) и заменяет текущие куки в браузере.
  • Пользователь получил свой первоначальный кредит назад.
Атака на беспроводную сеть

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

  • Сканирование в заданном радиодиапазоне на наличие потока данных
  • Идентификация передающих узлов
  • Запись трафика для последующего анализа
  • Декодирование и изменение сообщения (если требуется)
  • Воспроизведение исходного сообщения или изменённой его версии
  • Передача сообщения по радиоканалу

Такая атака возможна из-за отсутствия стандартизированных протоколов для сенсорных сетей.

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

Рассмотрим работу кодграббера с замещением, как пример реализации атаки воспроизведения. Пусть для шифрования в сигнализации используется динамический код KeeLoq, в таком случае каждая следующая посылка очень сильно отличается от предыдущей, даже если нажимается одна и та же кнопка. Брелок посылает сигнализации посылку, которая состоит двух частей: открытой и шифрованной. В открытой находятся уникальный номер брелока и идентификатор нажатой кнопки, в шифрованной - номер нажатия. Этот номер нажатия увеличивается при каждом нажатии на любую кнопку. Он обеспечивает «динамичность» кода. Сигнализация принимает посылку, проверяет, что это брелок с номером, который она знает и расшифровывает вторую часть посылки - номер нажатия. Далее сигнализация смотрит - номер нажатия меньше последнего или больше: если меньше - значит это нажатие уже отрабатывалось - оно игнорируется; если немного больше - это то, что нужно, команда отрабатывается. Брелок о функциях сигнализации не знает, он только отсылает какая кнопка нажата, а дальше сигнализация разбирается как реагировать на нажатия кнопок. Поэтому один и тот же брелок можно использовать и при однокнопочной и при двухкнопочной системе постановки/снятия. При однокнопочной системе нажатие одной и той же кнопки приводит к смене состояния сигнализации охрана/неохрана. Соответственно сначала кодграббер перехватывает посылку, которую выдаёт брелок и искажает её в эфире так, что сигнализация не принимает посылку. При этом кодграббер знает, как искажена посылка и у него она сохраняется в правильном виде. Потом он перехватывает следующую посылку и взамен отсылает перехваченную первую. Подмена занимает доли секунды и практически незаметна владельцу. Сигнализация ставится на охрану, довольный владелец уходит, не обратив внимание на то, что сработало только второе нажатие на кнопку. Затем кодграббер выдаёт перехваченную посылку и сигнализация снимается с охраны.

Контрмеры

Главной задачей при защите от атак повторного воспроизведения является построение криптостойкой системы аутентификации. Основная идея состоит в том, что каждая сессия аутентификации использует оригинальные параметры (ключи). Таковыми могут быть:

  • метка времени и жизни ключа (пароля)
  • nonce вставки

Эти параметры делают отправку записанных злоумышленником сообщений безрезультатной, потому что, проанализировав их, система потребует повторной аутентификации.

Практическими реализациями систем на данный момент являются:

Литература

  • Нечаев В.И. Элементы криптографии (Основы теории защиты информации). — 1999. — 109 с. — ISBN 5-06-003644-8.
  • Уэнстром М. Организация защиты сетей Cisco. — Вильямс, 2005. — 760 с. — ISBN 5-8459-0387-4.
  • Шнайер Б. Прикладная криптография. Протоколы, алгоритмы, исходные тексты на языке Си = Applied Cryptography. Protocols, Algorithms and Source Code in C. М.: Триумф, 2002. — 816 с. 3000 экз. — ISBN 5-89392-055-4.
  • Karlof C. and Wagner D. Secure routing in wireless sensor networks: Attacks and countermeasures. (англ.). — 2011. Архивировано 5 марта 2016 года.

См. также

Примечания

  1. Руководство Ruby On Rails по безопасности
  2. Thanassis Giannetsos, Tassos Dimitriou, Neeli R. Prasad. State of the art on defenses against wormhole attacks in wireless sensor networks // 2009 1st International Conference on Wireless Communication, Vehicular Technology, Information Theory and Aerospace & Electronic Systems Technology. — IEEE, 2009-05. ISBN 978-1-4244-4066-5. doi:10.1109/wirelessvitae.2009.5172466.

Ссылки

This article is issued from Wikipedia. The text is licensed under Creative Commons - Attribution - Sharealike. Additional terms may apply for the media files.