Атаки на системы непрерывной верификации (BioCatch, Forter)

Good Carder

Professional
Messages
938
Reaction score
532
Points
93
От кардера — кардерам. Пока вы вбиваете CVV и подменяете IP, пока вы прогреваете профили и имитируете мышь, кое-кто уже пришёл к выводу, что всё это — детский сад. Потому что реальный босс сидит не на стороне продавца. Он сидит в вашем собственном браузере, анализируя, как вы двигаете курсор, с какой скоростью печатаете и даже под каким углом держите телефон.

BioCatch, Forter и подобные им системы — это уже не про «проверить карту и IP». Это про непрерывную верификацию самого процесса взаимодействия. Они не спрашивают «кто вы», они наблюдают «как вы это делаете». И если в ваших движениях нет естественного дрожания, неравномерных пауз и непредсказуемых траекторий, если ваш курсор движется по идеально прямой линии — вы уже мертвы для системы.

В этой статье я разберу, как работают современные системы поведенческой биометрии, какие параметры они анализируют, какие методы обхода действительно работают, а какие — только создают иллюзию безопасности.


🧠 Часть 1. Архитектура непрерывной верификации. Почему пароль больше не нужен​

BioCatch, крупный игрок в этой нише, собирает более 2000 поведенческих параметров — от движения мыши до удержания устройства, обрабатывая 5 миллиардов транзакций в месяц.

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

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

🔍 Часть 2. Система BioCatch. Три слоя поведенческого контроля​

Система BioCatch комплексно анализирует пользователя на протяжении всей цифровой сессии. Этот анализ делится на три ключевых направления:

2.1. Физическая биометрия (как вы двигаетесь)​

Система анализирует движения мыши — её траекторию, скорость, ускорение, микро-колебания, точки остановки и перелёты.

Она также анализирует работу с сенсорным экраном: характер свайпов, силу нажатия и скорость касаний. Даже манера держать устройство поддаётся анализу: угол наклона гаджета и положение рук могут многое рассказать о пользователе.

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

Для кардера это значит, что если ваш бот двигает мышь строго по прямым линиям или нажимает клавиши с механической равномерностью, вы засветитесь. Человек всегда совершает микро-ошибки: дрожит в конце движения, иногда промахивается, колеблется перед важным действием. Именно эти «несовершенства» и есть ваша единственная страховка.

2.2. Когнитивная биометрия (как вы думаете)​

Этот анализ фокусируется на «невидимых» заминках и колебаниях, которые естественны при работе человека с интерфейсом.

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

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

2.3. Поведенческий контекст (ваш маршрут по сайту)​

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

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

📊 Часть 3. Технические методы BioCatch. Как они это делают​

BioCatch собирает эти данные с помощью JavaScript-скрипта, встроенного в веб-страницу банка или мобильный SDK.

На практике это выглядит так: вы заходите на сайт, и невидимый вам код начинает записывать каждое ваше действие. Вся эта телеметрия отправляется на серверы BioCatch, где специальные AI-модели (включая LSTM и другие нейронные сети) обрабатывают её в реальном времени и сравнивают с профилем легитимного пользователя. Если обнаружено отклонение — в работу вступает система.

Любое значительное отклонение от исторического паттерна — это сигнал тревоги. Логика проста: система сравнивает поведение текущей сессии с многолетним профилем жертвы. Если обнаруживаются несоответствия, BioCatch динамически рассчитывает риск-скор (который может меняться в процессе сессии) и в зависимости от его уровня либо требует дополнительную верификацию (MFA), либо блокирует транзакцию.

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

⚔️ Часть 4. Тактики обхода. Как создать бота, который дрожит как человек​

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

4.1. Эмуляция движений мыши (ручной и автоматизированный уровень)​

Ghost Cursor — стандарт в индустрии. Эта библиотека для Puppeteer генерирует реалистичные траектории движения мыши по кривым Безье, избегая прямой линии. Ghost Cursor также вносит небольшие случайные смещения, чтобы курсор не попадал идеально в центр элемента, имитируя человеческую неточность.

Движение мыши человека — это всегда немного извилистая линия, с естественным ускорением в начале и замедлением в конце. Если ваш бот проводит курсор строго из точки А в точку Б по прямой, он будет вычислен мгновенно.

Более продвинутый подход — использование генеративных моделей, обученных на реальных человеческих движениях, например, GAN (Generative Adversarial Networks). Исследователи разработали проекты, в которых GAN обучается на тысячах реальных траекторий мыши, а затем генерирует новые, статистически неотличимые от человеческих. Такой подход позволяет добиться невероятно реалистичных движений, имитирующих уникальный «почерк» конкретного человека.

Чек-лист для эмуляции мыши:
  • Никогда не используйте мгновенные клики (page.click(x, y)). Всегда используйте движение от текущей позиции.
  • Имитируйте «overshoot» (проскальзывание). Человек редко останавливается точно на цели. Часто он сначала «перелетает» через кнопку и возвращается.
  • Добавляйте случайное дрожание (tremor). Даже когда мышь неподвижна, рука человека создаёт микро-вибрации.
  • Варьируйте траектории. Не используйте один и тот же тип кривой для каждого движения.

4.2. Эмуляция клавиатурного ввода и микрокоррекций​

Библиотека @extra/humanize для Puppeteer и Playwright реализует эту логику, рандомизируя задержки между нажатиями клавиш, и может быть отличной отправной точкой.

Однако самый простой и эффективный метод — запись реальных сессий и их воспроизведение. Вы можете записать реальное поведение человека (через rrweb или аналоги) и затем использовать эти реальные треки как заготовку для ваших скриптов. Это полностью исключает необходимость ручной настройки параметров рандомизации.

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

Чек-лист для эмуляции клавиатуры:
  • Рандомизируйте задержки. Никогда не используйте фиксированный интервал 50 мс.
  • Делайте паузы между группами символов, особенно при вводе номера карты.
  • Периодически вносите ошибки (лишний символ, а затем его удаление). Это мощный сигнал «человечности».

4.3. Имитация «человеческой неэффективности» (скролл, паузы, ховеры)​

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

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

Используйте библиотеки наподобие @extra/humanize, которые автоматизируют эти сложные паттерны, освобождая вас от необходимости писать сложную логику рандомизации вручную.

🛡️ Часть 5. Защита для банков и что это значит для нас​

Понимание работы систем обороны — это ключ к построению успешной атаки.

Банки, использующие системы вроде BioCatch, переходят к непрерывной адаптивной аутентификации, которая оценивает уровень риска в реальном времени и адаптирует требования к верификации. Чем выше уровень риска, тем жёстче проверки. Внедрение этих систем, как показывает практика, приносит банкам реальные результаты. Например, крупный банк сообщил о 94% снижении мошенничества с захватом аккаунта после интеграции BioCatch.

Для нас, атакующих, это важно по нескольким причинам:
  • Недостаточно пройти начальную аутентификацию. Ваше поведение на протяжении всей сессии анализируется.
  • Даже легитимный аккаунт с правильным паролем может быть заблокирован. Если ваши поведенческие паттерны не совпадут с профилем жертвы, транзакция будет отклонена.
  • Сложность атаки растёт. Для успешного обхода BioCatch и Forter необходим сбор поведенческого профиля жертвы до атаки.

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

✅ Итоговый чек-лист: как подготовить бота к встрече с BioCatch​

  • Не двигайте мышь по прямым линиям. Используйте кривые Безье (Ghost Cursor) или LSTM/ GAN-сгенерированные траектории.
  • Добавьте естественный шум и микродрожание в движения курсора.
  • Симулируйте «overshoot» и микрокоррекции при кликах.
  • Используйте генеративные модели для создания неотличимых от человеческих паттернов.
  • Рандомизируйте задержки между нажатиями клавиш. Имитируйте опечатки и их исправление.
  • Добавьте неравномерный скролл с остановками и случайными возвратами.
  • Имитируйте «колебания» перед действиями — зависайте курсором над кнопкой на 200-500 мс.
  • Используйте @extra/humanize для сложных поведенческих сценариев.
  • Соберите и проанализируйте поведение жертвы до атаки, если есть такая возможность.
  • Тестируйте ваши скрипты на сервисах проверки поведенческого фингерпринта (например, BrowserLeaks).

📝 Резюме​

Системы непрерывной верификации типа BioCatch и Forter — это квинтэссенция современного антифрода. Они анализируют всё — от движения мыши до сомнений пользователя. В эру Agentic AI, когда кардеры используют автономных AI-агентов, способных на многошаговые действия без контроля человека, задача становится ещё сложнее.

Вы должны заставить ваш бот совершать естественные ошибки, колебаться и двигаться так же неэффективно, как обычный человек. Идеальная эффективность подозрительна. Только поддельное несовершенство может сделать бота по-настоящему невидимым.

Быстрая памятка на одну строку:

«BioCatch смотрит не на то, что ты делаешь, а на то, как ты это делаешь. Прямая линия курсора — твой смертный приговор. Ghost Cursor имитирует кривую, GAN обучается твоему почерку, а безошибочный ввод цифр карты за секунду — повод для блокировки транзакции. В 2027 году, чтобы обмануть AI, ты должен научить свой код быть непредсказуемо случайным. В идеальности алгоритма кроется твоя гибель»
 
Top