Татарские студенты вычислили киберпреступников, укравших 100 млн рублей

Татарские студенты вычислили киберпреступников, укравших 100 млн рублей

Татарские студенты вычислили киберпреступников, укравших 100 млн рублей

Студенты Университета Иннополис смогли вычислить IP-адреса злоумышленников, которые этим летом атаковали один из российских банков. По итогам того киберинцидента кредитная организация потеряла в общей сложности 100 миллионов рублей.

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

Атакующие использовали давно известные уязвимости, которые не были устранены в банковской системе. Брешь SMB-протокола помогла злоумышленникам установить в системе вредоносную программу.

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

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

Дальше «хакеры» были уже куда менее осторожны, что принесло им в итоге 5 миллионов рублей за счет незаконных транзакций.

В Университете Иннополис смогли установить IP-адреса нападавших, а также принцип их работы и отведенные каждому участнику роли. Оказалось, что банк столкнулся с хорошо организованной киберпреступной группировкой, которая на протяжении некоторого времени атаковала кредитные организации России Белоруссии и Казахстана.

Расширения Chrome могут слить секреты URL через атаку по стороннему каналу

Как оказалось, расширения Chrome можно использовать для слива кодов авторизации, сеансовых ID и других секретов из URL любой открытой вкладки. Никаких специальных разрешений для этого не понадобится, только доступ к declarativeNetRequest API.

Этот механизм, пришедший на смену webRequest API, позволяет расширениям сообщать браузеру, что следует изменить или заблокировать на загружаемой странице (заголовки, реклама, трекеры).

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

Исследователь Луан Эррера (Luan Herrera) обнаружил, что блокировку, диктуемую правилами, Chrome производит почти мгновенно, за 10-30 мс, а остальные запросы выполняются дольше (~50-100ms) — из-за сетевых подключений. Эту разницу во времени расширение может использовать для бинарного поиска с целью посимвольного слива URL.

// extensions/browser/api/web_request/extension_web_request_event_router.cc:1117-1127
case DNRRequestAction::Type::BLOCK:
  ClearPendingCallbacks(browser_context, *request);
  DCHECK_EQ(1u, actions.size());
  OnDNRActionMatched(browser_context, *request, action);
  return net::ERR_BLOCKED_BY_CLIENT;

Оракул для подобной тайминг-атаки строится с использованием chrome.tabs.reload для перезагрузки страницы и перехватчика chrome.tabs.onUpdated, помогающего отследить событие status === "complete". Замер времени между reload и завершением загрузки покажет, заблокирован запрос или успешно обработан.

Повторение проверок и бинарного поиска позволяет получить полный URL (с довеском после «?»), затратив на каждый знак строки несколько прогонов. Таким образом, можно незаметно для пользователя украсть включенные приложением в адрес секреты — токены OAuth и сброса пароля, API-ключи, ссылки на контент, закрытый для поисковых систем.

Проверка PoC проводилась на Windows 11 24H2 с использованием Chrome разных версий:

  • 144.0.7559.97 (Stable)
  • 145.0.7632.18 (Beta)
  • 146.0.7647.4 (Dev)
  • 146.0.7653.0 (Canary)

В Google подтвердили возможность подобной атаки по стороннему каналу, но заявили, что решить проблему нереально.

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