Browser-in-the-browser: мошенники угоняют учетки геймеров в Steam

Browser-in-the-browser: мошенники угоняют учетки геймеров в Steam

Browser-in-the-browser: мошенники угоняют учетки геймеров в Steam

Group-IB обнаружила 150 мошеннических ресурсов, замаскированных под популярную платформу компьютерных игр — Steam. Учетные записи геймеров угоняют незаметной фишинговой техникой “Browser-in-the-browser“.

Сейчас на Steam зарегистрировано 120 миллионов геймеров, а число продаваемых на этой платформе игр превышает 50 тыс. единиц. Речь о бестселлерах: Half-Life, Counter-Strike и Dota 2. Цена аккаунта начинающего игрока составляет десятки долларов, аккаунты ведущих пользователей оцениваются в $100 000 — $300 000.

С момента запуска платформы в 2003 году киберпреступники с переменным успехом пытались завладеть “прокаченными” аккаунтами геймеров, но без особого результата.

Теперь жертв заманивают на страницу-приманку чатовыми предложениями присоединиться к киберспортивному турниру по League of Legends, Counter-Strike, Dota 2, PUBG. На сайте можно проголосовать за команду, купить билеты, получить внутриигровой предмет или скин. Еще один способ — реклама в популярном видео с игрой (запись стрима, геймплей) или в описании к нему.

Применяя технику Browser-in-the-browser, злоумышленники пользуются тем, что на платформе Steam аутентификация происходит во всплывающем окне, а не в новой вкладке, говорят эксперты Group-IB.

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

Практически каждая кнопка на мошенническом ресурсе выводит форму ввода данных учетной записи, повторяющую оригинальное окно Steam. Во всплывающем окне есть фальшивый “зеленый замочек” — иконка SSL-сертификата организации.

Ссылка в адресной строке поддельного окна не отличается от оригинальной — её можно выделить, скопировать, открыть в другой вкладке. Кнопки работают корректно, окно можно двигать по экрану. Кроме того, на обнаруженных в июле фишинговых ресурсах можно выбрать один из 27 языков.

Геймер вводит данные в фишинговой форме, они сразу отправляются злоумышленнику и автоматически вводятся на официальном ресурсе. Если ввести данные некорректно (один из способов проверки подлинности ресурса из игровых пабликов), то новая фишинговая форма сообщит об ошибке, как “настоящий” Steam. Если у жертвы включена двухфакторная аутентификация, то мошеннический ресурс покажет запрос кода в дополнительном окне.

“Похоже, прежние советы, которые несколько лет назад помогали геймерам определить фишинговый сайт, сегодня уже бесполезны против нового метода мошенников, — отмечает Александр Калинин, руководитель Центра реагирования на инциденты информационной безопасности Group-IB. — Фишинговые ресурсы, использующие технологию Browser-in-the-browser, представляют опасность даже для опытных пользователей Steam, соблюдающих основные правила кибербезопасности”.

В отличие от распространенных мошеннических схем, в которых наборы готовых инструментов для фишинговых страниц разрабатываются для продажи, решения Browser-in-the-browser для Steam держатся злоумышленниками в секрете.

“Мы обращаем внимание игрового комьюнити на новую схему мошенничества и призываем соблюдать рекомендации и быть внимательными при вводе своих данных, — предупредили в Group-IB.

Как отличить фишинговую форму Browser-in-the-browser:

  • Сверить дизайн заголовка и адресной строки открывшегося окна. Подделка может отличаться от стандартной для вашего браузера. Стоит обратить внимание на шрифты и вид кнопок управления.
  • Проверить, открылось ли новое окно в панели задач. Если нет — окно поддельное.
  • Попытаться увеличить/уменьшить окно — поддельное не предоставляет такой возможности. Также не получится его развернуть на весь экран.
  • Окно ограничено экраном браузера — его не получится передвинуть на элементы управления изначальной вкладки.
  • Кнопка сворачивания поддельного окна просто закрывает его.
  • В фишинговой форме “замочек”, отображающий сертификат, — обычное изображение. При нажатии на него не произойдет ничего, тогда как настоящий предложит посмотреть информацию о SSL-сертификате.
  • Поддельная адресная строка не функциональна. В некоторых случаях она не позволяет ввести другой URL, но даже если позволит — перейти на него в этом же окне будет невозможно.
  • Окно перестанет появляться при отключении исполнения JS-скриптов в настройках браузера.

Новая атака на кеш Nginx позволяет красть данные и ломать сайты

Исследователь YesWeHack Алекс Брумен описал вектор кибератаки Cache Key Injection. В случае её эксплуатации последствия для потенциальной жертвы опасные: обход контроля доступа, раскрытие закрытых страниц, отказ в обслуживании и при определённых условиях.

Как объясняет исследователь YesWeHack, проблема возникает не в Nginx по умолчанию, а в конфигурациях, где администраторы просто склеивают несколько значений переменной длины без разделителей. Например:

$scheme$host$request_uri$http_accept

Разных запроса два, а итоговая строка может получиться одна. Так, запрос к /h с заголовком Accept: ome*/* создаёт тот же ключ, что и обычное обращение к /home с Accept: */*.

Если атакующий успеет первым положить в кеш ответ 404, пользователи вместо главной страницы будут получать ошибку до очистки записи. Получается CPDoS — отказ в обслуживании с доставкой прямо из кеша.

 

Ещё веселее становится с закрытыми разделами. В лабораторном примере страница /admin была доступна только с localhost, но злоумышленник мог обратиться к /ad и перенести оставшуюся часть имени в соседний компонент ключа. Nginx видел разрешённый путь, однако доставал из кеша содержимое админ-панели.

При совпадении нескольких условий техника позволяет столкнуть HTTP- и HTTPS-запросы и записать в кеш страницу со ссылкой на атакующий JavaScript, превратив ошибку конфигурации в stored XSS. Даже Cloudflare не всегда спасёт: заголовок Authorization может провести запрос мимо его кеша прямо к уязвимому кешу Nginx.

 

Защита выглядит до смешного просто: не склеивать значения вслепую. Между элементами ключа нужны разделители или структурное кодирование, например:

$scheme|$host|$request_uri|$http_accept

Также следует проверять Host, перенаправлять HTTP на HTTPS и не кешировать аутентифицированные запросы.

RSS: Новости на портале Anti-Malware.ru