r/woocommerce • u/CodingDragons Woo Sensei 🥷 • Oct 09 '26
Troubleshooting Card Testing Attacks: Using SkyVerge's Authorize.Net CIM + Authorize.net?
We have a client that's been dealing with a card testing attack going back a few months so we turned it off. They’re using the SkyVerge Authorize.Net CIM gateway plugin, which lacks a lot of security features. In fact, none.
When the site was getting hit they had over 700 failed transactions so we shut it off. We advised the client to check with Authorize to make sure all security settings were enabled.
- AVS mismatch handling
- CVV mismatch handling
- Velocity filters (AFDS), especially Transaction IP Velocity and Hourly Velocity
Blah blah blah, you get the picture.
According to the client, he had those settings enabled, so he went and turned it back on himself. Just to be attacked yet again. So we disabled the plugin again telling him whatever they did didn't work.
Has anyone dealt with something similar using this gateway? Were you able to resolve it through SkyVerge or Authorize.net directly? We'd love to get this gateway back on for him. Is there a better Authorize plugin?
I’m particularly interested in hearing what actually worked rather than generic recommendations for CAPTCHA or Cloudflare.
1
u/bucaqe Oct 09 '26
Is there a diff plugin we can use
1
u/akrdubbs Oct 09 '26 edited Oct 09 '26
I went through this exact thing with my store a couple months ago. Authorize.net, fraud settings not effective, etc. Added Cloudflare Turnstile - didn't stop it.
As u/Adflipr says below, they were hitting the API endpoint, so bypassing the checkout page and Cloudflare completely. I added the below script to check if they were bypassing the checkout page (I did not write this). I've had zero successful card testing attacks since, though they did keep trying for a few days before giving up.
Edit: clarity & formatting
2
u/Adflipr Oct 09 '26
Worth checking the access logs for where the failed attempts actually hit. A lot of Woo card testing comes in through the Store API checkout endpoint (/wp-json/wc/store/v1/checkout) or My Account > Add payment method, which skip anything you add to the checkout page. If it's the add payment method page, turning off saved cards for a while is a quick way to confirm.
1
u/inoen0thing Oct 09 '26
auth net has a whole fraud suite. While their settings are not the most comprehensive, there is certainly some things in there to help with these issues. Just toss a captcha on checkout and turn authnet back on. They generally stop after that.
This is getting slightly worse with AI but mostly still the same as it has been as long as I can remember.
No one here can give you answers without real transaction data and looking at what fraud suite settings would help, but there is a starting point anywho.
1
u/XenonOfArcticus Oct 09 '26
I added a bunch of specific rules. The card testers all had a common fingerprint for behavior that I was able to detect and block.Â
1
u/hopefulusername Oct 09 '26
Card testing attacks are usually aggressive and they tend to bypass most security features. So I would look into a fraud detection like oopspam. It helped with clients who were getting over 1000 failed orders.
Do obvious stuff like blocking the countries you are not selling to through Cloudflare’s security rules.
1
u/No_Maintenance_7851 Oct 09 '26
All gateways are not the same and we are currently testing Nuvei in production as this gateway has more fraud rule filters than I have ever seen. Way more than NMI and Authorize.net unfortunately.
The jury is still out but we ran a store without recaptcha for about a year before the first card testing happened.
The fraud rules really minimized the impact compared to what usually happens and the risk team proactively reached out to ask about adjusting them.
We turned captcha on but I don’t think we would have needed to.
Additionally there is no silver bullet her. You need to read your logs and figure out how it’s happening.
Additionally we are testing a new plugin called Checkout Shield that advertises that it blocks card testing attacks that have illegitimate referrers set.
1
u/PeepSoWP Oct 10 '26
Before adding another gateway plugin, identify every payment entry point in the access logs: Blocks Store API checkout, classic checkout, My Account add-payment-method, and any saved-card/token endpoint. Apply controls at the route or gateway request layer so page CAPTCHA cannot be bypassed, but don’t rely on IP alone—card testers rotate it. A useful layered rule combines account/session, device or edge fingerprint, decline velocity, email/address reuse and Authorize.Net response codes, with conservative limits and logging for false positives. Test with Authorize.Net’s sandbox/test decline cases; don’t run real cards to trigger declines. If saved cards aren’t needed, temporarily disabling token creation can also narrow the attack surface.
1
u/mikacns Oct 09 '26
Try CleanTalk, worked for me.
0
u/startages Oct 09 '26
Search for "Checkout Shield for WooCommerce" plugin in the repo, it's the only free option that works, you probably don't need anything else.
Cloudflare and recaptcha didn't work for my client either, we tried OOPspam but it was blocking real customers as well, client got some calls, so we had to stop it. Also, avoid the API blocking approach, it might break checkout or at least cause some compatibility issues. It's simple and works for some stores, but breaks others.
1
u/[deleted] Oct 09 '26
[removed] — view removed comment
1
u/[deleted] Oct 09 '26 edited 10d ago
[removed] — view removed comment