Когда платежная форма отказывается принимать карту — проблема не всегда в карте. Stripe активно использует поведенческий антифрод на основе данных браузера и окружения. Мы решили провести технический эксперимент: взять 10 разных браузерных конфигураций и проверить, какие из них проходят оплату, а какие вызывают отклонения или 3DS.
Цель
Понять:
влияет ли spoof fingerprint на прохождение платежа;
как ведёт себя Stripe при headless-браузере;
можно ли добиться успешной транзакции без 3DS при «естественном» поведении;
что на самом деле триггерит Radar.
Что тестировали
Мы собрали 10 конфигураций:
# |
Браузер |
IP / Proxy |
Поведение |
Fingerprint |
---|---|---|---|---|
1 |
Chrome |
Residential |
живое |
чистый |
2 |
Headless UC |
VPN DE |
auto-fill |
spoofed |
3 |
Puppeteer |
USA DC |
клик-бот |
дефолтный |
4 |
UC + Proxy |
Mobile LTE |
живое |
custom JS |
5 |
Chrome |
TOR |
ручное |
оригинал |
... |
... |
... |
... |
... |
Мы варьировали:
navigator.webdriver
spoofed
canvas
,audio
,webgl
реальное поведение (ввод руками) vs. программная симуляция
гео IP и тип прокси (residential / mobile / datacenter)
? Методы
Использовали
undetected-chromedriver
+ SeleniumВключили HAR-логирование
-
Ловили запросы к:
/v1/payment_intents/.../confirm
m.stripe.com/6
r.stripe.com/b
? Результаты
Конфигурация |
Результат |
3DS |
Статус ответа |
---|---|---|---|
1 |
Успешно |
Нет |
|
2 |
Отклонение |
— |
|
3 |
3DS Challenge |
Да |
|
4 |
Успешно |
Нет |
|
5 |
Отклонение (Radar) |
— |
|
... |
... |
... |
... |
Самая "чистая" сессия — живая, без headless, без прокси, с настоящим вводом данных — почти всегда проходила. Headless + spoofed fingerprint срабатывал только с mobile residential IP и "человеческим" поведением.
? Выводы
Stripe активно собирает JS-фингерпринты ещё до клика "Pay"
Spoof fingerprint помогает — но только в комбинации с реалистичным поведением
TOR, headless и автофил без задержек почти всегда ведут к отказу
Поведенческий анализ важнее, чем "валидность" карты
Где нашли рабочие подходы
Многие идеи конфигураций, в том числе spoof navigator и JS-паттерны, мы взяли из обсуждений на техническом форуме BFD CASH.
Если вас интересует именно техническая сторона антифрод-систем — BFD стоит внимания.