一个 Vibe Coding 网站是怎么在上线几十分钟内被打爆的

gxlwm 2026-08-16 09:24 1

昨天发帖分享了一个刚做的小网站,叫 锐评。


网站可以给不同社区打分,档位是:



夯 / 顶级 / 人上人 / NPC / 拉完了



我怕兄弟们连快捷登录都懒得点,跟别提注册登录了,就把游客权限也打开了:不登录可以评分,也可以评论。让大家先进来玩玩,真有人乱搞的话,我再去后台关掉游客权限。


当时觉得这个方案挺宽松灵活的,现在看,确实宽松,主要是方便攻击脚本发挥。


我的帖子没爆,服务器先爆了


当天晚上我先后在几个社区发了帖子:



  • 20:50:2Libra

  • 21:01:V2EX

  • 后来又发到了 Linux Bi


本来以为能来几十个人,帮忙测测功能、提点意见。没想到互联网上有坏人,没过多久,网站就打不开了。我打开 Vercel 后台一看,请求量已经飞起来了。


Vercel DDoS Mitigation 数据


两个相邻 IP 正在疯狂请求网站里的条目:


103.197.30.225
103.197.30.226

主要目标是 /t/rping-cc。一共制造了大约 20 万次 Firewall Actions ,还顺手给“锐评”刷了接近 3,000 次“拉完了”。


我做这个网站,本来是想让大家锐评互联网社区。上线第一天,网站自己先登上了「拉榜」榜首。


锐评条目列表


拔电源吧


我一开始没当回事儿,毕竟早就想过:有人乱搞的话,去管理后台关掉游客权限就行。


没想到的是,攻击来的时候,我自己也进不去后台了。页面打不开,无奈只能直接改数据库,把游客评分和评论权限先关掉。权限改完,异常评分是不再增加了,但那两个 IP 还在继续请求,给服务器上强度。


刚开始我其实没怎么生气,觉得网站刚上线就被打,也算是给自己上了一课,当个乐子看就好。我屏蔽了 IP 、加了防护规则,也在帖子里明确说了这件事。


结果那个人并不打算到此为止。IP 被 ban 以后,它又换了 IP 继续捣乱,还注册了一个用户名叫 xjp 的账号,开始刷乱码评论。评分刷不动了,就改刷评论区。一共发了 128 条锐评,评论区被它刷得像乱码瀑布一样。


这就不是乐子了,这人确实是坏种,这么干对你有什么好处呢?


只能先拔电源,把服务关了。


Vercel 流量概览


乱码评论和异常刷票结果


日志里的时间线


后来我导出了攻击前后近两个小时的完整日志。这个客户端第一次出现是在:


21:12:53  GET  /t/v2ex       200

紧接着:


21:13:09  GET  /t/rping-cc   200
21:13:16 POST /t/rping-cc 200

它进入网站 23 秒后,就开始尝试刷票。刚开始还挺克制,隔几秒请求一次,像是在试接口。十分钟后,大概确认接口确实没什么防护,于是正式开工:


21:24  开始高频请求
21:25 单分钟接近 2,000 次
21:35 第一轮高峰
22:02 第二轮高峰
22:05 基本结束

Vercel 的 DDoS Challenge 大约拦下了 16.4 万次请求,但仍有 5 万多次攻击被放行。


图片 4


所以是 V 站用户干的吗?


刚开始我怀疑是 linux bi 用户干的,毕竟我天天逛 v 站,默认把战里兄弟都当成高素质人群了,但是从日志上看,我开始怀疑是 v 站用户攻击的。


V2EX 帖子发于 21:01 ,帖子里放的是专属链接 /t/v2ex;可疑客户端在 21:12:53 第一次出现,第一条请求刚好也是 /t/v2ex,23 秒后就开始测试刷票。时间和路径确实挺吻合。


当然,我可定无法证明是某位 V2EX 用户,链接可能被转发,也可能通过别的方式传播,更没有证据指向某个具体账号,大家看个乐子得了。


图片 5


连夜补窟窿


关站以后,我紧急补了几条安全规则。


屏蔽攻击 IP ,开启 Attack Mode ,增加全站请求限流,给统计接口和详情页写操作单独限流,关闭游客评分和评论,清理异常数据,再检查一遍服务端校验和数据库约束。


以前担心登录会劝退用户。现在觉得,劝退几个嫌麻烦的用户,总比把我劝退强。


我之前为了让注册登录方便一点,还把 confirm email 关掉了。现在看来,这个开关还是得打开。要求用户确认邮箱,至少能给批量注册增加一点成本,不能再让脚本注册完账号就直接开刷。


总结:Vibe Coding 路边一条


这个网站 MVP 版本全靠 Vibe Coding 快速做出来的。


上线几十分钟就被打爆了,我也低估了互联网上有些人的恶意,难怪很多论坛、社区都设置各种注册条件、发言条件。这都是被你们这帮坏种逼的。


这次算是被互联网坏人上了一课,也提醒自己,敬畏技术,生产级的产品不是 AI 几下就能做出来的。


目前已经重新上线。下次争取活久一点。

最新回复 (75)
  • YAFEIML 08-16 09:30
    1
    域名停放了
  • winnerczwx 08-16 09:35
    2
    这个问题套一层 cf 就解决了啊
  • gxlwm 楼主 08-16 09:35
    3
    @YAFEIML 我写错了,是 rping.cc 不是 com - -
  • gxlwm 楼主 08-16 09:36
    4
    @winnerczwx 可是我是 vibe coding ,部署 vercel 一把梭啊,vercel 上也有防护,还要专门搞 cf 吗
  • MrVito 08-16 09:58
    5
    这就不得不提到一句老话:害人之心不可有,防人之心不可无
  • gxlwm 楼主 08-16 10:04
    6
    @MrVito 学到了
  • foryou2023 08-16 10:22
    7
    有些人天生“坏”,不过好在是少部分,不过也不得不防。
  • sydneyJin 08-16 10:23
    8
    现实中能面对面的都直接插你的队,无视社会规则,更何况这互联网上
  • jkjoke 08-16 10:29
    9
    以前做了个聊天室,网友天天给我 xss 压力测试
  • wonderfulcxm 08-16 10:29
    10
    为什么要攻击这种刚上线的没有一点名气的小网站,换 ip 也要成本吧?应该是你得罪了人
  • gxlwm 楼主 08-16 10:31
    11
    @wonderfulcxm 我没得罪过人额
  • wwmmkk 08-16 10:38
    12
    这也太没素质了啊
  • soulflysimple123 08-16 10:43
    13
    老哥你这网站起码要接入 cloudeflare Turnstile
  • BeijingBaby 08-16 10:47
    14
    一样的😂 www.dev.com.cn 上个月被攻击过,不过后来处理好了,也没持续攻击,我就没发出来。也是不明白一个非盈利小站怎么会被攻击的。
  • gxlwm 楼主 08-16 10:50
    15
    @soulflysimple123 已经在 Vercel 设置了一些防火墙规则,并且设置了超出 5 美刀就停止服务,无所谓,破不了产。回头了解一下 CF
  • gxlwm 楼主 08-16 10:51
    16
    @BeijingBaby 不错不错,订阅一个
  • zpxshl 08-16 10:55
    17
    一堆现实里面过得太压抑的坏种
  • yidev 08-16 11:32
    18
    打算做网站就要掌握一些基础的网络防护, 而不是靠谴责, 这种是 cc 攻击了. 可以让 AI 在入口都地方加个防火墙. 同一个 IP 或者同一个 Useragent 连续访问的频率超过阈值就 ban 掉. 或者弹出验证码才能继续. 最好从 nginx 里 ban
  • lefer 08-16 11:54
    19
    互联网释放了藏匿于心中的恶。

    也许那个攻击者有一份正经的工作,有一个幸福的家庭,但不妨碍他“找点乐子”。
  • onling 08-16 11:55
    20
    之前也某名被恭喜过一次,感觉网站也不出门,就是不知道这些攻击的目的
  • billzhuang 08-16 12:41
    21
    有人攻击总比无人问津强一百倍
  • kidult 08-16 12:52
    22
    换种角度,别人花钱让你学习呢,真要是赚钱的网站,这么搞一下就凉了
  • moefishtang 08-16 12:58
    23
    @yidev (也别让 AI 自己 Vibe 防火墙出来了...不行 AI 部署个阿努比斯之类的 WAF ,自己安装也不难的...
  • Y25tIGxpdmlk 08-16 13:15
    24
    我总结出来的方法:如果你的主要用户是国内的,就直接把国外 IP 通通禁用就好了,立竿见影,基本上刚坏事的,百分百都是挂国外 IP 。

    国内实名制,还有国内代理 ip 的价格,已经帮我把那些恶意用户通通筛选掉了。

    之前网站还经常被各种 thinkphp 的漏洞扫描突破啥的,自从我把全部国外 ip 一禁,再也没有出国一点事了。轻轻松松
  • gxlwm 楼主 08-16 13:16
    25
    @yidev 这是复盘和自省,我的核心主旨是敬畏技术,一个没有基础认知的人 vibe coding 出来的东西不可靠。相关知识还得了解,不是有 AI 就厉害了。如果没有这次被攻击,我不会把网络安全当回事儿。
    如果不是 Vercel 自动帮我拦截了 16w 请求,如果我去睡觉了没发现,今天早上醒来我应该已经欠了 200 美金了,因为 vercel pro 允许超额 200 美金才停机。
  • gxlwm 楼主 08-16 13:17
    26
    @kidult 学到了一点网络安全认知
  • davidyin 08-16 13:17
    27
    实现网站功能的代码只占全部代码 1/3 都不到,其它的各种验证,防护,防机器人,防恶意。
  • Y25tIGxpdmlk 08-16 13:17
    28
    话说你这前端界面的分割是不是 claude 写的,感觉 claude 弄的前端默认就这种味道
  • gxlwm 楼主 08-16 13:18
    29
    @Y25tIGxpdmlk 学到了
  • davidyin 08-16 13:18
    30
    @Y25tIGxpdmlk

    其实也不一定的,最近一些来刷我的一个论坛的就是联通甘肃那边的 IP 。还挺执着。
  • gxlwm 楼主 08-16 13:19
    31
    @davidyin 这个我掉以轻心了,我还专门把权限放宽送了
  • gxlwm 楼主 08-16 13:20
    32
    @Y25tIGxpdmlk 不是,我 cc 早被封了,用 claude design 的插件设计的,我千挑万选了一个纸媒风格然后我自己又微调了挺多。还是 AI 味儿这么重吗?
  • xing7673 08-16 13:21
    33
    取 id xjp 的不就是那种现实压抑的鉴证恶臭玩意。没爹教没妈养
  • liuliuliuliu 08-16 13:25
    34
    真有人这么闲吗?
  • gxlwm 楼主 08-16 13:26
    35
    @xing7673 第一次这个人攻击我的网站,还可以接受,我本来网站权限放的宽松,被人人便爆破一下是我活该。
    但是我升级了防护措施和增加了攻击门槛后,他还专门注册账号,敏感 id ,刷评论,就纯恶心人了。
  • liuliuliuliu 08-16 13:28
    36
    @BeijingBaby 卧槽,这域名牛逼,花了多少钱?
  • gxlwm 楼主 08-16 13:31
    37
    @liuliuliuliu 我不懂网络攻击,感觉那个人可能挂了个比较智能的脚本吧,然后就去睡觉了,我觉得应该不会有人无聊到盯着我的网站爆破了。
    因为最初的 2 个 ip 会刷评分,我关了网站,收紧网站权限后再次上线,那两个 ip 还在一直做网络请求。
    我把 ip ban 了,还会换 ip ,开始刷评论。
    难道是有人像通过现实教育让我敬畏网络安全?
  • jacketma 08-16 13:52
    38
    是不有一些小朋友专门来练手的啊,不求收益多大,但求恶搞好玩
  • davidyin 08-16 14:43
    39
    其实攻击也挺费钱的。
    不费钱的就费时间。

    估计是个不差钱不差时间的主。
  • gxlwm 楼主 08-16 14:51
    40
    @jacketma 没轻没重得,要不是 vercel 有基础防火墙,我已经损失 200 美刀了- -
  • Ryanzlab 08-16 15:06
    41
    DDOS 和你是不是 vibe coding 没关系,你全程古法,在巨量 DDOS 的情况下一样死
  • Cbdy 08-16 15:07
    42
    现在这个网站怎么打不开了?
  • Ryanzlab 08-16 15:08
    43
    这玩意搞一个 cloudflare 免费就帮你防御了,你不漏源站 IP ,神仙来了也没事,开个 5 秒盾,防御大部分攻击了
  • gxlwm 楼主 08-16 15:12
    44
    @Cbdy 因为我链接贴错了 /dog ,https://rping.cc
  • ntedshen 08-16 15:19
    45
    这年头的闲人就这样。。。他打你没啥成本,你防他得出钱。。。
    我自己写的小黄网我自己朋友都不给地址。。。
  • gxlwm 楼主 08-16 15:20
    46
    @ntedshen 哥,给我看看,我不外传
  • opengps 08-16 15:26
    47
    虽然 v 站的整体素质不错,不过你得知道一个事情,很多人遇到了打开的网站,职业习惯就是压测一下找找漏洞,这虽然是个好的技术习惯,但并不是受网站主欢迎的
  • Ericcccccccc 08-16 17:21
    48
    现在有 ai 之后,零成本搞破坏。你不防一下根本不行
  • labubu 08-16 17:27
    49
    CF 专治不服
  • lusyoe 08-16 17:29
    50
    在技术论坛推广就是会出现这种情况,是有很多闲人喜欢炫技的~
  • xue777hua 08-16 17:30
    51
    15 分钟 3000 次请求 就顶不住了?

    1 秒也就 3 次请求?
  • xue777hua 08-16 17:32
    52
    哦 看到后面 看到了 算是很好的经历 文章也精彩 👍
  • OnceUponATime 08-16 17:35
    53
    匿名性确实会助长不道德行为。天朝在这方面属于是误打误撞了。
  • wKong753900 08-16 17:39
    54
    我觉得也算是一次挺宝贵的经验了吧
  • onice 08-16 17:43
    55
    对待这种坏人,直接上个 waf 就行了。用 nginx 做前端流量入口,配置下安全狗就行。

    见: https://www.safedog.cn/website_safedog.html

    如果是 Serverless ,服务器软件环境自己无法控制,也可以用一些免费的云 WAF ,有免费额度那种。
  • Rnreck 08-16 20:48
    56
    @BeijingBaby 订阅了,但是好像没有退订的按钮诶
  • BeijingBaby 08-16 20:51
    57
    @Rnreck 退订按钮在第一期内容发布后,页脚有的
  • john1024 08-16 20:56
    58
    你接个 Cloudflare 的验证码,就会好很多。它高频刷你的时候,就跳盾,跳验证。然后你说靠 vercel 自己防护,那就是基本什么也没有,裸奔啊。
  • gxlwm 楼主 08-16 20:58
    59
    @john1024 正在接呢,那个逼还在攻击
  • john1024 08-16 21:01
    60
    @gxlwm #59 直接套上 CloudFlare 小云朵吧,然后防火墙里面先限制速率,然后再慢慢改你这自定义 waf.
  • john1024 08-16 21:04
    61
    @gxlwm #59 网上这种人很多的。这种就是网络黑社会。他们 DDoS, CC 攻击的资源放在手里闲着也是闲着,有人敢冒头就顺手打一打。你这个已经算是很轻量的了,这个打的就拿两个 IP 打你,你就撑不住了,你要善用 CF 大善人的资源,配置好了 CF 。他就得动用自己的钱包来打你了,现在他肯定都没花什么钱攻击你
  • ninjaJ 08-16 21:24
    62
    @gxlwm #4 套一层 cf 很方便的,一劳永逸
  • qwqqwq 08-16 21:57
    63
    进去看了一下,你访问的域名正在出售,啥情况
  • gxlwm 楼主 08-16 21:59
    64
    @qwqqwq 正文里域名写错了
  • john1024 08-16 22:50
    65
    看了登录后默认的昵称不能改?快,coding 下,增加个改名功能
  • gxlwm 楼主 08-16 23:02
    66
    @john1024 你又不会经常访问,忍忍,下次一定
  • majiajia 08-17 08:49
    67
    @wonderfulcxm #10 首先,不要受害者有罪论;其次,你要相信有些人天生贱种。
  • asdhak 08-17 09:16
    68
    @xing7673 #33 你不说,鉴证,我还没反应过来这个简写🙃
  • slqcode 08-17 09:27
    69
    在帮你测试呢
  • Rliey 08-17 09:29
    70
    感觉要被 ai 中转站霸占了 当成推广站了
  • furlxy 08-17 09:41
    71
    ufw
    敏感词过滤
    打开域名小云朵
    cf turnstile

    这些都需要加上

    防人之心不可无
  • gxlwm 楼主 08-17 10:03
    72
    @furlxy 不错不错,关键词学习
  • gxlwm 楼主 08-17 10:04
    73
    @Rliey 想多了,除了攻击我的那个人,没什么人访问
  • cszchen 08-17 10:11
    74
    这个是 DDOS 共计,上面已经有很多大佬说过了
    我补充一条
    开放登录注册,如果是邮件,一定要屏蔽一些临时邮箱,github 上有很多持续更新的临时邮箱域名
    https://github.com/disposable-email-domains/disposable-email-domains
  • gxlwm 楼主 08-17 10:24
    75
    @cszchen 好滴,我看到攻击者用临时邮箱注册了几个号。我把用邮箱注册先关了。先只允许 google 、github 快捷登录
* 帖子来源V2EX
返回