Sprzedawca, który patrzy na atak testowania kart, widzi za każdym razem to samo. Zamówienia na najtańszą pozycję z katalogu, przychodzące seriami, każde z innym nazwiskiem, inną kartą i tym samym adresem dostawy. Setki porzuconych checkoutów dziennie, których nie stworzył żaden człowiek. Prawie żadne z nich nie dochodzi do skutku i to jest ta część, przez którą ludzie zakładają, że problem jest czyjś.
Signifyd zmierzył wzrost ataków testowania kart o 175% w okresie od stycznia do kwietnia 2026 roku wobec tych samych miesięcy 2025 roku i wiąże ten wzrost ze zautomatyzowaną weryfikacją danych uwierzytelniających. W tym samym oknie podaje wzrost presji oszustw w Ameryce Północnej o 33% oraz wzrost prób przejęcia kont o 78%.
Powód, dla którego tak trudno to zatrzymać na Shopify, nie ma nic wspólnego z jakością zabezpieczeń. Chodzi o to, gdzie one stoją.
Co atakujący naprawdę robi
Mylący jest motyw. Ktoś przepuszcza przez Twój sklep setki zamówień i prawie wszystkie porzuca, co wygląda na wandalizm, dopóki nie zrozumiesz, że nigdy nie chodziło o zamówienia.
Wielu z tych numerów kart nikt nikomu nie ukradł. Zostały zgadnięte. Numer karty nie jest losowy. Pierwsze sześć do ośmiu cyfr to Bank Identification Number, który wskazuje bank wydający kartę, a te zakresy są publiczne. Ostatnia cyfra to cyfra kontrolna wyliczona wzorem Luhna, czyli arytmetyką, którą policzy każdy. Atakujący wybiera BIN należący do banku wartego uwagi, wypełnia środkowe cyfry kandydatami i wylicza ostatnią cyfrę tak, żeby każdy numer był poprawny strukturalnie. To daje nieskończony zapas numerów, które wyglądają na prawdziwe dla każdego formularza sprawdzającego ich kształt.
Od poprawności strukturalnej do użyteczności jest daleka droga. Większość tych numerów nie należy do żadnego konta, a spośród tych, które należą, większość jest przeterminowana, zablokowana albo już unieważniona. To samo dotyczy numerów wykradzionych przy wycieku, które leżą w zrzucie danych przez miesiące, zanim ktokolwiek się do nich zabierze.
Atakujący ma więc stos kandydujących numerów i żadnej wiedzy o tym, które z nich żyją. Jest dokładnie jeden sposób, żeby to sprawdzić: zapytać bank. Zapytania wprost do banku przestępca nie wykona. Zapytanie sprzedawcy jest banalne, bo każdy checkout w ecommerce na świecie istnieje po to, żeby podać kartę do operatora płatności i zwrócić odpowiedź.
Ta odpowiedź jest produktem. Karta, która zatwierdzi obciążenie na dwa dolary, to karta żywa, z działającą datą ważności i poprawnym kodem bezpieczeństwa, a na rynku odsprzedaży jest warta wielokrotnie więcej niż numer niesprawdzony. Towar nie ma znaczenia. Atakujący nie robi zakupów.
Dlaczego Twój sklep, a nie czyjś inny
Nic w Twoim sklepie tego nie przyciągnęło. Testowanie kart leci na te checkouty, do których tanio jest dotrzeć, a do sklepu na Shopify dotrzeć jest tanio, bo Shopify jest spójne. Te same wzorce adresów działają w każdym sklepie na platformie, więc skrypt napisany pod jeden działa na wszystkie bez żadnej zmiany.
Małe kwoty utrzymują ciszę. Atakujący pracują pojedynczo i po dwa, na najtańszym produkcie w katalogu, bo mała kwota ściąga mniej uwagi systemów ryzyka i prawie nic nie kosztuje w tych rzadkich przypadkach, gdy przejdzie. Karty podarunkowe i pozycje o zerowej wartości są jeszcze lepsze, a sprzedawcy zgłaszają, że to w nie boty celują najpierw.
Jak docierają do checkoutu, nie przeglądając Twojego sklepu
To jest ta część, która ludzi zaskakuje, i nie ma w niej żadnego exploita.
Shopify obsługuje cart permalinks, udokumentowaną funkcję, z której każdy sprzedawca korzysta w linkach reklamowych i kampaniach mailowych. Adres w postaci /cart/{variant_id}:{quantity} buduje koszyk i wysyła odwiedzającego prosto do checkoutu, z pominięciem karty produktu, strony koszyka i całej reszty. Istnieje po to, żeby mail na Black Friday wrzucił kogoś do checkoutu jednym dotknięciem.
Bot używa tego z tego samego powodu co marketer. Jedno żądanie tworzy koszyk i ląduje na checkoucie, a sklep zostaje pominięty w całości. Dołóż zautomatyzowaną przeglądarkę prowadzącą krok płatności, rozłóż ruch na adresy proxy w sieciach domowych, żeby żaden pojedynczy się nie wyróżniał, i całość działa bez nadzoru.
Nic w tej sekwencji nie jest zepsute ani nietypowe. Atakujący korzysta z obsługiwanej funkcji dokładnie tak, jak ją zaprojektowano, tylko w wolumenie i celu, których nikt nie przewidział.
Atak nigdy nie ładuje stron, których bronisz
Sprzedawcy opisujący te ataki na własnym forum społeczności Shopify zgłaszają, że ruch przychodzi wprost pod adres checkoutu, bez przeglądania sklepu po drodze. Ten jeden szczegół tłumaczy, dlaczego zwykłe reakcje wracają czyste.
Captcha na karcie produktu pilnuje strony, o którą bot nigdy nie prosi. Aplikacja blokująca kraje albo adresy filtruje sesje w sklepie, których bot nigdy nie otwiera. Analiza ryzyka Shopify ocenia zrealizowane zamówienia, a próba testowania karty zakończona odmową nigdy się nim nie staje, więc narzędzie mające łapać oszustwa nie ma przed sobą niczego. Jeden ze sprzedawców w tym wątku zgłasza obejście reCAPTCHA, przy botach dalej docierających do checkoutu.
Zgłaszany wzorzec jest na tyle spójny, że da się go rozpoznać: nowe konto klienta na każdą próbę, rotujące adresy e-mail, często prawdziwe i wzięte z wycieków, oraz jeden powtarzany adres dostawy pod tym wszystkim. Celem jest to, co kosztuje najmniej. Sprzedawcy wymieniają świeżo dodane tanie produkty oraz karty podarunkowe i pozycje o zerowej wartości tam, gdzie sklep je ma.
Drogie w ignorowaniu robi to wolumen. Jeden sprzedawca zgłasza setki fałszywych porzuconych checkoutów dziennie, drugi atak trwający nieprzerwanie od czerwca 2025 roku, a trzeci zmierzył wzrost porzuconych checkoutów o 18,4% w ciągu czterech tygodni.
Każda odrzucona płatność i tak Cię kosztuje
To jest ta część, którą sprzedawcy lekceważą, i powód, dla którego sklep z zerową liczbą fałszywych zamówień i tak może wyjść z ataku mocno poturbowany.
Nieudane żądanie autoryzacji to informacja o Tobie, wysłana do banku, który odmówił. Wystarczy ich dość i dość blisko siebie, a Twój sklep zaczyna wyglądać na złe ryzyko dla instytucji decydujących o zatwierdzaniu Twoich klientów. Shopify opisuje skutek wprost: nieudane transakcje psują pozycję sprzedawcy w bankach, a prawdziwi klienci dostają odmowy długo po zakończeniu ataku, przy utrzymującym się spadku współczynników autoryzacji.
Shopify podaje, że sprzedawcy objęci jego ochroną mają o 13% więcej zatwierdzonej prawdziwej sprzedaży. Czytaj to jako rozmiar dziury, a nie jako funkcję, bo to ta sama liczba oglądana z drugiej strony.
Jest drugi koszt, zupełnie bez żadnej strony dodatniej. Rekordów fałszywych porzuconych checkoutów nie da się usunąć, a sprzedawcy zgłaszają, że potwierdzili to zarówno w Shopify Flow, jak i w panelu oraz w API. Każdy współczynnik konwersji, każda liczba porzuceń koszyka i każdy raport lejka obejmujący te tygodnie jest trwale błędny.
Visa monitoruje teraz enumerację jako osobną kategorię
Visa Acquirer Monitoring Program scalił starsze programy dotyczące oszustw i sporów w jeden, z progami obowiązującymi od 1 czerwca 2025 roku i okresem doradczym zamkniętym 30 września 2025 roku.
Główna miara to stosunek oszustw i sporów do transakcji rozliczonych:
VAMP Ratio = Count of [Fraud (TC40) + Disputes (TC15)] / Count of Settled Transactions (TC05)
Dla sprzedawców w USA, Kanadzie, UE i regionie Azji i Pacyfiku próg Excessive wynosił wskaźnik VAMP na poziomie 220 punktów bazowych albo wyżej, przy co najmniej 1.500 zdarzeniach oszustwa i sporu w miesiącu. Ten próg spadł do 150 punktów bazowych 1 kwietnia 2026 roku.
Pod spodem siedzi klauzula dotycząca konkretnie testowania kart. Visa wymaga od agentów rozliczeniowych utrzymywania sprzedawców poniżej dwóch progów enumeracji:
| Miara | Próg |
|---|---|
| Enumeration Ratio: autoryzacje enumeracyjne podzielone przez wszystkie autoryzacje, zarówno zatwierdzone, jak i odrzucone | 2.000 punktów bazowych, czyli 20% |
| Enumeration Transaction Count: transakcje enumeracyjne w miesiącu, zarówno zatwierdzone, jak i odrzucone | 300.000 |
Przeczytaj pierwszy wiersz uważnie, bo mianownikiem są próby autoryzacji, a nie zrealizowane zamówienia. Sklep o skromnym wolumenie może przekroczyć 20% swoich prób autoryzacji w trakcie jednego przeciągającego się ataku i nigdy nie zbliżyć się do 300.000 transakcji. Małe sklepy nie są tu chronione przez to, że są małe. Są przez to odsłonięte.
Visa nie publikuje kwot opłat przypisanych do tych progów. Operatorzy płatności dokumentujący ten program opisują kary naliczane od każdej transakcji liczonej w ramach tej miary po zakończeniu okresu karencji, a co najmniej jeden dokumentuje próg wczesnego ostrzegania, z którym nie wiąże się żadna opłata. Kto potrzebuje tej liczby, powinien zapytać swojego agenta rozliczeniowego, a nie ufać cyfrze z bloga, i dotyczy to również liczb krążących z pewnie brzmiącymi kwotami w dolarach.
Co robi Shopify i gdzie się to kończy
Shopify opublikował opis własnych zabezpieczeń w czerwcu 2026 roku i liczby w nim warto potraktować poważnie.
Jego model uczenia maszynowego ocenia każdą próbę płatności, zanim ta dotrze do operatora, i blokuje około 90% ataków testowania kart w checkoucie gościa opłacanym kartą kredytową. To realna obrona wykonująca realną pracę i jest darmowa, jeśli korzystasz z Shopify Payments.
Ochrona ma swoje ograniczenia. Obejmuje checkout gościa opłacany kartą kredytową i wyłącznie sprzedawców korzystających z Shopify Payments. Około 90% zostawia też mniej więcej jedną próbę na dziesięć, która przechodzi, a przy wolumenach opisywanych przez sprzedawców to wciąż spora liczba autoryzacji uderzających w Twoje wskaźniki każdego dnia.
Shopify opisuje też, jak ataki się zmieniły, i ten opis znaczy więcej niż procenty. Współczesne ataki są rozproszone i prowadzone małym wolumenem naraz na tysiącach sprzedawców, przepuszczane przez proxy w sieciach domowych, żeby wyglądać jak zwykły ruch. To celowa konstrukcja, która ma pokonać dokładnie tę obronę, po którą większość ludzi sięga najpierw.
Edge widzi teraz checkout, co nie zawsze było prawdą
Przez lata standardowa rada brzmiała: trzymaj proxy z dala od checkoutu. Poradniki krążące do dziś mówią sprzedawcom na Shopify, żeby zostawiali subdomeny checkoutu bez proxy.
Ta rada jest nieaktualna, a sprawdzenie jej zajmuje minutę. Poproś o adres checkoutu w działającym sklepie na Shopify, a rozwiąże się on na Twojej własnej domenie głównej, w postaci yourdomain.com/checkouts/cn/<token>. Nie stoi na hoście należącym do Shopify. Strefa przepuszczona przez proxy Cloudflare widzi te żądania i może na nie reagować.
To zmienia zakres tego, co masz do dyspozycji. Ograniczanie liczby żądań, zarządzane wyzwania i reguły WAF można pisać pod ścieżkę, z której atak faktycznie korzysta, a nie pod sklep, którego nigdy nie dotyka.
Jeden wyjątek warto powiedzieć wprost, zamiast odkrywać go później. Shop Pay i inne przyspieszone checkouty przekierowują na domenę należącą do Shopify, poza Twoją strefą, i żadna Twoja reguła nie sięga tej ścieżki.
Reguły, które pasują do ataku
Publikowane wytyczne dla ścieżek checkoutu zaczynają się mniej więcej od 5 do 10 żądań POST na adres IP na minutę, a potem blokują albo wystawiają wyzwanie na kilka minut. To dość nisko, żeby zatrzymać bota walącego w endpoint, i dość wysoko, żeby zostawić w spokoju prawdziwego kupującego ponawiającego odrzuconą kartę.
Stopniuj surowość według ścieżki, zamiast podnosić ją wszędzie. Ścieżki checkoutu i płatności zasługują na ostrzejsze traktowanie niż przeglądanie produktów i na tym polega cała przewaga rządzenia na edge zamiast wewnątrz aplikacji, która nie odróżnia jednego od drugiego.
Używaj wyzwania, zanim użyjesz blokady. LexisNexis ustalił, że 56% amerykańskich detalistów i 54% amerykańskich sprzedawców ecommerce zgłasza wzrost odpływu klientów powiązany z ich własnymi zabezpieczeniami antyfraudowymi, a to jest realny koszt płacony przez realnych kupujących. Zarządzane wyzwanie kosztuje fałszywie dodatni przypadek jedną sekundę. Blokada kosztuje Cię sprzedaż.
Łącz wyzwanie z limitem żądań, zamiast wybierać między nimi. Wyzwanie działa na formularzu. Limit żądań łapie żądania, które nigdy nie renderują formularza, czyli dokładnie to zachowanie, które tu opisano.
Przyjmij do wiadomości, czego limit na adres IP nie potrafi. Wobec ataku rozproszonego cienką warstwą po proxy w sieciach domowych liczenie na adres IP jest podłogą, a nie odpowiedzią, i uczciwa wersja tej rady mówi to wprost. Jeden ze sprzedawców w tamtym wątku społeczności zgłasza wydanie tysięcy dolarów na WAF przy ograniczonym skutku, a to się dzieje wtedy, gdy dobre narzędzie wycelowano w niewłaściwą warstwę.
Zabierz cel, zanim cokolwiek dostroisz
Najtańsze wygrane nie są tu regułami, a sprzedawcy zgłaszają, że działają.
Wycofaj z publikacji produkty o zerowej wartości i karty podarunkowe, których sklep nie potrzebuje, bo po nie boty sięgają najpierw. Jeden sprzedawca zgłasza, że wycofanie ich razem z przejściem na trzystronicowy checkout ucięło większość wolumenu.
Ręczne, a nie automatyczne pobieranie płatności usuwa natychmiastowy sygnał autoryzacji, po który atakujący przyszedł, co robi z Twojego sklepu kiepskie stanowisko testowe i zachęca go do pójścia gdzie indziej.
Żadne z tych dwóch nie wymaga WAF-a, aplikacji ani rozmowy z agentem rozliczeniowym. Oba zmniejszają atrakcyjność celu, a to trwalsza odpowiedź niż przestrajanie się z atakującym, który zmienia adresy szybciej, niż zdążysz je wypisać.
Czym to jest, a czym nie jest
Ten artykuł opisuje wzorce ataków zgłaszane publicznie przez sprzedawców oraz progi opublikowane przez Visa. Nie jest poradą prawną ani zgodnościową, a konkretne opłaty, wymogi naprawcze i obowiązki raportowe przypisane do Twojego konta pochodzą od Twojego agenta rozliczeniowego.
Jeśli Twój sklep jest właśnie teraz pod atakiem, kolejność działań jest krótka. Zabierz tanie cele, postaw wyzwanie i limit żądań na ścieżce checkoutu i pokaż swój współczynnik autoryzacji dostawcy płatności, zanim wzorzec odmów stanie się tym, co tłumaczysz, a nie tym, co naprawiasz.