求救,怎么解决网站被恶意盗刷

发布于

sxliusir:

我做了个简单的生成图片网站,有游客免费生成的功能,每个 IP 只能免费生成几次。我发现有些大批量请求是同一个人生成的,但是 IP 却都不同。

---

原文链接:[点击查看](https://www.v2ex.com/t/1226692)

评论(13)

好奇问一下,既然你确定是同一个人在刷,那是怎么判断出来的?可以把这个判定特征写进 WAF 的规则里。

· 0 个赞

回复

我是通过 prompt 发现的,那批请求的提示词非常相似,而且提交的时间挨得很近,明显是机器批量跑的。

· 0 个赞

最简单直接的办法,加个手机号或者微信授权验证,针对账号限制次数就行了。

· 0 个赞

可以给免费生成的图加上满屏水印,想拿无水印版就得注册登录,这样白嫖党拿走也没啥用。

· 0 个赞

加个 Google reCAPTCHA 验证码试试。

· 0 个赞

直接把游客模式关了,改成必须登录才能用。

· 0 个赞

国内的话强制手机号注册登录,国外的话就接 Google 邮箱登录,一劳永逸。

· 0 个赞

可以加个 fingerprintjs 识别客户端,不过纯前端的方案只能防防小白。更狠一点的话,直接把 IDC 机房段的 IP 全给屏蔽掉,可以用这个库:https://github.com/NetworkCats/Merged-IP-Data

· 0 个赞

光靠限制 IP 没用,随便弄个代理池就绕过了。建议上浏览器指纹校验,配合 CloudFlare Turnstile 来防刷。

· 0 个赞

建议直接把域名解析托管到 Cloudflare,走它家的 CDN。把防御等级拉满,顺便配置一下 Rate Limiting 限流,应该能挡掉不少自动化脚本。

· 0 个赞

说实话,连 OpenAI、Google 这种大厂面对白嫖党都防不胜防,普通开发者更是没啥好办法。

· 0 个赞

直接上防火墙盾吧,最省事。

· 0 个赞

套个 CDN 过滤一下机器人,顺便加上浏览器指纹关联来识别是不是同一个人在刷。

· 0 个赞