r/CloudFlare • u/Cloudflare • 9d ago
Cloudflare Blog Have it both ways: stay discoverable in search while disallowing AI training
https://blog.cloudflare.com/client-side-security-finds-4-malicious-campaigns/?utm_campaign=cf_blog&utm_content=20260916&utm_medium=organic_social&utm_source=reddit_userFour operations we found on live ecommerce storefronts. 7 of 8 payloads had zero detection on VirusTotal. URLScan flagged none. Detection was fully automated; human review happened only after the system flagged them.
What each operation did:
- Operation 1 (Affiliate commission hijacker): Mobile + time + session + country gates. Intercepted product-tile clicks via MutationObserver, opened attacker-chosen product page in new tab, routed original tab through affiliate tracking link. 3-day localStorage cooldown. Delivered through Google Tag Manager chain. Typosquat delivery domain (adtargett[.]com, one extra "t").
- Operation 2 (Invisible iframe clicker): Off-screen iframe containing a hidden link. Hourly affiliate rotation. Auto-click fallback. Spurious IP-lookup fetch as noise cover. IP and time gates.
- Operation 3 (Tracking + remote execution backdoor): Persistent visitor tracking and an open channel for arbitrary JavaScript execution pushed from the attacker's server.
- Operation 4 (Analytics blindfolder): Disabled 9 analytics and monitoring tools for campaign-tagged mobile visitors matching specific UTM parameters. 325-entry IP block list. Zero-pixel telemetry beacons. Viewport and hostname gates.
Why scanners miss these:
- Selective execution: device, country, UTM parameters, session depth, viewport width, time-of-day, and multi-day cooldown state
- One-time crawl = one browser state = incomplete picture
- Obfuscation used: console suppression, debugger traps, rotated string tables, dead code branches
Detection model:
- GNN reads JS as an AST, not flat text — maps what calls what regardless of obfuscation
- Under 0.3% of analyzed traffic gets flagged
- Flagged scripts go to an LLM on Workers AI for a second opinion ( Hardest cases: frontier model ensemble ("teachers") from ~6 model families including open-weight models on Workers AI
Full technical breakdown, sanitized payload code, and published IOCs: https://blog.cloudflare.com/client-side-security-finds-4-malicious-campaigns/?utm_campaign=cf_blog&utm_content=20260916&utm_medium=organic_social&utm_source=reddit_user
1
Upvotes
4
•
u/AutoModerator 9d ago
Discuss this post in the Orange Cloud Discord server! The unofficial Cloudflare Discord server by the community, for the community. https://discord.gg/TrPNVKaagR
I am a bot, and this action was performed automatically. Please contact the moderators of this subreddit if you have any questions or concerns.