一夜之间多了 5000+ 个账号,我和 Claude 给自研 GTD 做了一次线上演习

2025 年 12 月 31 日
 femto

昨天,我的自研 GTD 系统后台突然多了 5000 多个新增账号,actions 也陡增了 3000 多条。

第一反应当然是:难道产品突然爆火了? 几分钟之后我冷静下来:这更像是一场「恶意注册 / 接口攻击」,而不是增长奇迹。

这篇文章想简单记录一下:

希望能给同样在做小产品 / side project 的同学一点参考:就算你现在只有几十个真用户,也值得认真对待安全和风控。


一、事情是怎么被发现的?

先简单说一下背景。 我用 Claude Code 搭了一套自己的 GTD 系统,名字叫 GTD Pro,灵感来自 OmniFocus ,目前主要是我自己和少量真实用户在用,线上版本在这里: https://gtd.nebulame.com/

按照正常节奏,这个系统一天新增用户只有几个人,有时候甚至是 0 。结果昨天我在后台看统计时,发现:

问题在于:

所以这波「暴涨」明显不正常。

我简单做了几件事:

  1. 按时间排序,发现这些账号几乎集中在一个很短的时间窗口内创建
  2. 看标识/行为,很多请求模式非常机械、重复
  3. 对比真实用户的使用行为,路径和频率完全不一样

基本可以确认:这是一次针对后端 API 的「恶意注册 + 写入」攻击,而不是自然增长。


二、这次攻击到底发生了什么?(攻击情况一览)

从日志里复盘了一下,大概情况是这样的:

几小时之内,数据变成了这样:

从时间分布和请求模式看,很明显这不是正常用户增长,而是脚本在持续轰炸注册接口和 Inbox 接口。这里可以放上 Claude Code 帮我整理出来的攻击摘要和时间线截图,我也是在它的提示下,开始给系统补上第一轮安全防护。


三、我和 Claude Code 做了一次「线上演习」

这次排查其实花的不是很多精力,更多是靠 Claude Code 帮我把问题结构化了一遍。

大概流程是这样:

  1. 我把相关的日志片段、数据特征、接口设计,整理成一个简化版描述
  2. 丢给 Claude Code ,让它帮我:
    • 分析可能的攻击路径
    • 提出优先级最高的几条防护建议
    • Review 一下现有的注册 / 写入接口设计

Claude 给出的几个方向非常实用:

我对照这些建议,很快做了第一轮处置:

这次体验对我来说有点意思:

对一个只有几十个真实用户的小产品来说,这种「 AI + 人」的协作方式刚好合适。


四、我给 GTD 系统加了三道基础安全锁

这次事件之后,我给 GTD Pro 加了三道「基础安全锁」,也推荐给还在早期的独立开发者:

1 )给注册和写入接口上闸门

2 )引入一个「人类门槛」

3 )业务上把「可疑流量」和「真实用户」彻底分开

这次攻击也间接帮我确立了一个心态:


五、小产品也要有安全边界

这次恶意注册事件,对我最大的提醒是:

严格来说,这次并不能算一场「大规模攻击」,更像是给我提了个醒:


六、如果你也想试试这套 GTD / 看看代码

最后,留两个入口:

如果你也在做自己的小工具、小产品,建议不要等到「出事了」再补安全。哪怕只是在注册接口前面多加几行简单的 rate limit 逻辑,都是一个好的开始。

也欢迎你来试试 GTD Pro ,或者在 issue 里告诉我你遇到的安全/风控问题,我们可以一起继续把这套系统打磨得更像一个真正可依赖的「第二大脑」。

如果你对我在做的通用 Agent 框架也感兴趣,可以看看:

GTD Pro 目前主要跑在 Claude Code 上,后面也会逐步和这套 Agent 基础设施打通。

2242 次点击
所在节点    程序员
1 条回复
TrackBack
2025 年 12 月 31 日
后端和认证是自己搭的吗?
用 supabase 这些服务的话,开箱就有 rate limit ,应该会好一些?

这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。

https://study.congcong.us/t/1182450

V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。

V2EX is a community of developers, designers and creative people.

© 2021 V2EX