UDP, спуффинг и онлайн-игры

Bolt NutПраздники. Поэтому предположим, что есть некая популярная онлайн-игра (MMOG). Есть сервер, есть клиент на пользовательской машине. Игровой трафик ходит по UDP. При этом, приоритет разработчиков – экономия трафика, иначе падают прибыли, дорожает инфраструктура. UDP весьма примитивный протокол, не гарантирующий, например, доставку пакетов. (Как говорится: я знаю хорошую шутку про UDP, но, возможно, она до вас не дойдёт.) Также UDP позволяет подменять адрес отправителя – это так называемый UDP-спуффинг. Самые распространённые атаки, использующие подмену “обратных адресов” в UDP, являются DDoS-атаками и касаются DNS, так как для этой системы UDP служит стандартным базовым транспортом. Но речь о другом, вернёмся к онлайн-игре.

Допустим, в игре проводится только односторонняя аутентификация: клиент аутентифицируется сервером, но не наоборот. И есть, скажем, простой механизм смены IP-адреса сервера в ходе работы игры, реализованный отправкой пары управляющих команд клиенту. Тогда некий активный злоумышленник может наугад заливать потенциальных играющих клиентов левыми UDP-пакетами, пытаясь вынудить клиента выполнить смену сервера. Если клиентов в игре много, а протокол, ввиду экономии, не защищён, то есть большие шансы на успех. В качестве нового сервера, понятно, выступает узел, контролируемый злоумышленниками, который перехватывает соединение и, запросив авторизацию, крадёт/меняет пароль от игрового аккаунта (если позволяет протокол).

И это не единственный сценарий атаки, который позволяет построить протокол UDP.

Адрес записки: https://dxdt.ru/2013/05/02/5740/

Похожие записки:



Далее - мнения и дискуссии

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

1 комментарий от читателей

  • 1. 3rd May 2013, 22:08 // Читатель Jeff Zanooda написал:

    Специально для решения этой проблемы придумали MAC (message authentication codes).