Default avatar
npub195q4...wpxu
npub195q4...wpxu
#V2EX ### [投资] 2025 年在大 A 实现了财富小自由 今年大 A 走势确实挺好的,全年收益率 54%,超越 95%股友; 另外,之前曾经发帖说有个机会 80%可能可以翻三倍,我最后投了 100w ,历经四十多天的来回洗盘,确实翻了三倍(来回洗盘不坚定被洗出去了一点)。 ![BWC1s3D.png](https://i.imgant.com/v2/fRWjGQc.png) https://www.v2ex.com/t/1182451#reply0
#V2EX ### [程序员] 一夜之间多了 5000+ 个账号,我和 Claude 给自研 GTD 做了一次线上演习 # 昨天,我的自研 GTD 系统后台突然多了 5000 多个新增账号,actions 也陡增了 3000 多条。 第一反应当然是:难道产品突然爆火了? 几分钟之后我冷静下来:这更像是一场「恶意注册 / 接口攻击」,而不是增长奇迹。 这篇文章想简单记录一下: * 这次攻击是怎么暴露出来的 * 我是怎么用 Claude Code 快速排查问题的 * 我对「小产品的安全边界」的几个反思 希望能给同样在做小产品 / side project 的同学一点参考:**就算你现在只有几十个真用户,也值得认真对待安全和风控。** --- ## 一、事情是怎么被发现的? 先简单说一下背景。 我用 Claude Code 搭了一套自己的 GTD 系统,名字叫 **GTD Pro**,灵感来自 OmniFocus ,目前主要是我自己和少量真实用户在用,线上版本在这里: <https://gtd.nebulame.com/> 按照正常节奏,这个系统一天新增用户只有几个人,有时候甚至是 0 。结果昨天我在后台看统计时,发现: * 账号总数在很短时间里突然多了 5000+ 个 * actions 表里多了 3000+ 条明显无效的数据 问题在于: * 我并没有做任何大规模推广 * 真实的活跃用户,其实只有几十个 所以这波「暴涨」明显不正常。 我简单做了几件事: 1. 按时间排序,发现这些账号几乎集中在一个很短的时间窗口内创建 2. 看标识/行为,很多请求模式非常机械、重复 3. 对比真实用户的使用行为,路径和频率完全不一样 基本可以确认:这是一次针对后端 API 的「恶意注册 + 写入」攻击,而不是自然增长。 --- ## 二、这次攻击到底发生了什么?(攻击情况一览) 从日志里复盘了一下,大概情况是这样的: * **攻击开始时间**:2025-12-30 00:28 左右 * **持续时间**:从 00:28 一直持续到 05:07 左右 * **攻击方式**:不停地往两个接口打请求: + `POST /api/auth/register` 注册接口被高频调用 + `POST /api/inbox` Inbox 创建接口被高频调用 几小时之内,数据变成了这样: * 用户数:从 38 个涨到 5512 个(+5474 个恶意账号) * Actions:从 119 条涨到 3209 条(+3090 条无效记录) * 数据库大小:从大约 400KB 涨到 12MB 左右(体积直接放大了 30 倍) 从时间分布和请求模式看,很明显这不是正常用户增长,而是脚本在持续轰炸注册接口和 Inbox 接口。这里可以放上 Claude Code 帮我整理出来的攻击摘要和时间线截图,我也是在它的提示下,开始给系统补上第一轮安全防护。 --- ## 三、我和 Claude Code 做了一次「线上演习」 这次排查其实花的不是很多精力,更多是靠 Claude Code 帮我把问题结构化了一遍。 大概流程是这样: 1. 我把相关的日志片段、数据特征、接口设计,整理成一个简化版描述 2. 丢给 Claude Code ,让它帮我: * 分析可能的攻击路径 * 提出优先级最高的几条防护建议 * Review 一下现有的注册 / 写入接口设计 Claude 给出的几个方向非常实用: * 后端 API 暴露在公网,没有最基本的 rate limit * 注册和写入接口缺少「人类门槛」,脚本可以无限请求 * 没有给「可疑账号」打标 / 隔离,只是直接进入正式业务表 我对照这些建议,很快做了第一轮处置: * 给这批可疑账号和对应 actions 打上标记,而不是直接物理删除 * 在业务逻辑上先软删除:统计、报表、产品逻辑里一律不算它们 * 开始在代码里补上 rate limit 和简单风控策略 这次体验对我来说有点意思: * 不是「 AI 帮我写了一大堆代码」,而是 * 「 AI 帮我快速梳理威胁模型 + 设计第一版防护方案」,我自己做关键决策和实现细节 对一个只有几十个真实用户的小产品来说,这种「 AI + 人」的协作方式刚好合适。 --- ## 四、我给 GTD 系统加了三道基础安全锁 这次事件之后,我给 GTD Pro 加了三道「基础安全锁」,也推荐给还在早期的独立开发者: **1 )给注册和写入接口上闸门** * 对注册接口加简单节流:同 IP / 同 UA / 同邮箱域名在单位时间的上限 * 对写 actions 的接口也加上 rate limit ,避免有人用单一账号或脚本刷爆写入 **2 )引入一个「人类门槛」** * 可以是邮箱验证 / 一次性验证码 / 极简验证码 * 不一定要很重,但要让大规模脚本攻击的成本变高 **3 )业务上把「可疑流量」和「真实用户」彻底分开** * 给这 5000 多个账号统一打上 `is_suspicious = true` * 统计和报表默认只看「未标记为可疑」的账号 * 以后如果还有类似事件,可以快速对比行为模式、复用处理流程 这次攻击也间接帮我确立了一个心态: * 只要你的产品暴露在公网,就默认会被扫、被撞、被试探 * 安全不是「有大公司再做」,而是「你第一次被攻击的那天,就该开始认真设计」 --- ## 五、小产品也要有安全边界 这次恶意注册事件,对我最大的提醒是: * 就算你现在只有几十个真实用户,也应该早点想好: + 注册/登录的边界 + 写入数据的节流 + 垃圾数据的隔离策略 * AI 不只是用来给用户做「炫酷功能」,也可以拿来帮你做基础设施: + 设计威胁模型 + 帮你 review 代码 + 帮你想「最小代价的安全升级」 严格来说,这次并不能算一场「大规模攻击」,更像是给我提了个醒: * 我的 GTD 不再只是本地小玩具 * 它开始作为一个真正对外的在线服务存在 --- ## 六、如果你也想试试这套 GTD / 看看代码 最后,留两个入口: * 线上版本(我自己每天在用的那套): <https://gtd.nebulame.com/> * 开源版本代码仓库(功能少于线上版,主要用来参考架构和实现): <https://github.com/femto/gtd> 如果你也在做自己的小工具、小产品,建议不要等到「出事了」再补安全。哪怕只是在注册接口前面多加几行简单的 rate limit 逻辑,都是一个好的开始。 也欢迎你来试试 GTD Pro ,或者在 issue 里告诉我你遇到的安全/风控问题,我们可以一起继续把这套系统打磨得更像一个真正可依赖的「第二大脑」。 如果你对我在做的通用 Agent 框架也感兴趣,可以看看: * minion-agent (实战框架,支持浏览器、MCP 、deep research 等): <https://github.com/femto/minion-agent> * Minion ( Agent 大脑 / 推理内核): <https://github.com/femto/minion> GTD Pro 目前主要跑在 Claude Code 上,后面也会逐步和这套 Agent 基础设施打通。
#V2EX ### [分享创造] 自己做了个摩斯码在线转换器,免费使用 最近在玩摩斯码,顺手做了一个小工具,主要是想方便自己转换摩斯码和普通文本之间的格式。现在用得还挺顺手的,觉得应该分享给大家试试: 👉 <https://codigomorse.org/zh> ### 功能介绍: * **格式转换**:支持把普通文本转成摩斯码,也可以把摩斯码转回普通文本。 * **本地处理**:所有转换过程都在浏览器里完成,文件不会上传。 * **简单清爽**:界面干净简洁,没有广告,完全不打扰使用。 输入文本或摩斯码,立刻转换成你想要的格式。 如果你是摩斯码爱好者,或者只是想快速体验一下摩斯码的转换功能,这个网站应该能帮到你。
#V2EX ### [程序员] vscode 的 prompt.md 和 instructions.md 有什么区别? 个人理解 [prompt.md](http://prompt.md) 是 copilot 通用的提示词 [instructions.md](http://instructions.md) 是专门针对某个项目、某类语言的提示词 但是感觉两个能互相替代? # 官方的说明 <https://code.visualstudio.com/docs/copilot/customization/custom-instructions> <https://code.visualstudio.com/docs/copilot/customization/prompt-files>
#V2EX ### [程序员] 一个失业 8 个月大龄码农的年终总结 大家好, 我就是哪个 300 天前在 V 站发布[《太抽象了,绷不住了》](https://www.v2ex.com/%22https:/v2ex.com/t/1115826#reply155%22)的作者 。 由于种种原因,4 月底我也失业了... 说下来在前司也呆了 6,7 年了,全年满勤从没休息过甚至离职前还有 3 天年假过期都没休,对职场也存在一些厌倦了 从最初就想离职感受下每天睡到自然醒的感觉,到后面因为每天白天睡太多加上没有任何面试和收入. 每晚焦虑到天亮(写过一个程序让 BOSS 海投,每天投到 BOSS 上限为止, 99%都是已读不回) 深深感受到今年的就业环境真的一言难尽... 算下来从离职到现在正儿八经的一共面试了 5 次。2 次在对比(追求性价比),有 1 次直接说了 92 年的年龄太大了,1 次让我对赌...给我 3 个月组建团队出,做出产品,能行明天就上岗. 最离谱的是有个骗我去卖保险... 得益于今年 AI 的迅猛发展。现在真成了一个全栈开发。目前做着一个数字游民小打小闹。也没有周未和节假日概念,每天游历与星巴克之间.虽然也很辛苦,但唯一好在自由弹性。 前阵子和几个朋友一起吃饭,听着他们说话好一股班味,讲着每天上班 996 , 办公室的勾心斗角,为了碎银几两的 KPI, 紧接又在说元旦要去哪玩,过年放假什么,好像我现在对这些波澜不惊... 岁末至,2026 依然在路上.. 愿每个深夜干不完活的牛马,最终都能找到赚钱工作、生活体验的平衡方式。
#V2EX ### [Telegram] 旧手机创建的 Telegram Passkey 同步到新手机后也可以登录吗? Telegram Passkey 在旧手机创建并保存在密码 App ,iCloud 同步到新手机后也可以使用原来的 Passkey 登录吗? 主要是怕新手机收到不到验证码
#V2EX ### [分享发现] AI 自动模糊照片/视频中的人脸 AI 工具 [BlurAny](https://blurany.org),解决一个很常见的痛点:发朋友圈/社交媒体时,照片里有不想露脸的人怎么办? ## 场景 * 聚会照片里有朋友不想被发出来 * 街拍背景里有路人 * 家庭照片想保护小孩隐私 * 活动照片需要脱敏处理 ## 功能 * AI 自动检测所有人脸 * 点击选择想保留的人,其他自动模糊 * 支持高斯模糊和表情覆盖两种风格 * 不存储用户照片,处理完即删 ## 技术栈 Next.js + AI 人脸检测,前端做检测,后端做模糊处理。检测准确率 99%+,处理速度 3 秒内。 ## 为什么不用 PS/美图秀秀? 手动框选太麻烦,尤其是合照人多的时候。这个工具的思路是「选择保留谁」而不是「选择模糊谁」,操作逻辑更符合直觉。 免费版每月 10 积分可以体验,欢迎各位 V 友试用反馈。 👉 [blurany](https://blurany.org)
#塔勒布 This fellow is doing Israeli-style Hasbara in the silver markets. He did not even retract. Make sure to block. Andrew Bridgen: Has a bank failed overnight due to margin calls on Silver positions ? The name has been withheld to prevent a run on this bank ? Does withholding the name risk a run on all the banks? Will a buyer for the failed bank be found in time ? ![](https://pbs.twimg.com/media/G9UomCFWcAA2dHQ?format=jpg&name=orig)
#V2EX ### [分享发现] 如果早知道 IPS 也会烧屏 一开始看到桌面残影还以为是显示 BUG 。重启之后打开一个灰色背景一看,恍然大悟。不过在这之前我是一点没发现。 我的成果: ![成果](https://photo.shabbyserver.com/uploads/medium2x/e6/0f/0579ebe8d35b96cb18036b6fc999.jpg) 我的桌面:![桌面](https://photo.shabbyserver.com/uploads/medium/82/1d/1d2b5bfe7f2dd1c03cc1031ef98a.png)
#V2EX ### [问与答] 车库强电漏报不定期跳闸 车库开发商交付之后没啥变动,车库两个回路一路照明一路插座。照明回路使用的空开,插座回路使用漏电保护器(16A/30mA),车库🀄️插作回路漏报不定期会跳,漏电按钮弹出。车库用电设备如下:电动卷帘门、nas 一台(24 小时开机)、交换机一台、路由器一台、监控一个、小米多模网关 2 一个、diy 的 zigbee 网关一个、子擎人体存在传感器一个插头 usb 供电。 找了电工摇了绝缘,线路绝缘没有问题,电工没有找出具体原因。漏报换了 20A 30mA 的还是会跳,已经无语了不知道咋办了?不想换成空开,如果真漏电太危险了。 请教广大网友这种情况有结吗?跳闸时间不固定,没人在车库也会跳,跳闸之后复位后可以扶起来。 1228 下午 1
#V2EX ### [VPS] 100r 入手了 ClawCloud 日本地区的 VPS,测下来发现电信高峰期丢包率快 30%,这个正常吗? 之前没接触过 VPS 这玩意,网上随便搜了一下看到 ClawCloud 黑五打折,所以入手了一年套餐试试效果 开始几天还好,但是后面发现 VPS 丢包非常严重,白天电信的网络能到 30% 的丢包率 后面用 Hysteria2 协议搭建了一个梯子,但是效果也很差,毕竟丢包率实在是太高了 这个价位这个丢包率是普遍现象吗?如果未来改用 cn2gia 优化的节点会好一些吗
#V2EX ### [酷工作] [成都] 找个 Python 后端聊聊 AI 落地,不急入职,年前年后都行 项目情况: 我是技术负责人,目前在搞一个海外垂直领域的语义搜索。 实话实说: 小团队,刚起步,目前没代码( 0-1 阶段),没盈利。我也给不了大厂那种五险一金、下午茶和团建。如果你年底想求稳拿福利,这儿真不适合。 为什么我觉得这事儿值得聊: 这个项目是从我们之前几个版本演化来的。上上个项目我们 3 个人搞了一个月 Demo ,内测还没开就被收购了。上个项目有手握几百万用户的大咖找我合作,让我全权负责新项目运营,要技术给技术 要流量给流量,但是技术跟老板有点亲戚关系,诶,一言难尽,虽然大树下面好乘凉,但是自己成为大树更有吸引力,我们在这个垂直行业待了很久,流量、资源、头部 IP 都是现成的。所谓的“蓝海”不是吹牛,几句话就能讲明白市场在哪,纯粹是缺个硬核技术把 AI + LLM 彻底落地。 我要找的人: 主要是 Python 后端,偏 AI/RAG/搜索 这一块。 技术点: 异步那套( FastAPI/Asyncio )要熟。向量库( Milvus/Qdrant )得能实操。 核心目标: 把非标数据洗干净,用 RAG 提炼价值,把搜索精度做上去。 加分项: 英语能力强,做过知识库,检索方向的优先,本地部署开源模型,能微调,有过一年以上经验极优 关于待遇(现金说话): 既然没社保福利,那我现金一定给够。按招聘要求:18k - 30k ,如果你觉得这个价低了,只要技术够硬,咱们单独谈。 工作模式: 外包、兼职、全职、技术合伙都行。 自由度: 我也不喜欢加班和演戏。只要活儿干得漂亮,你想在咖啡馆办公还是几点起床,我都不管。 碎碎念: 快过年了,估计大家都在等年终奖,我也不急着招人马上干活。发这个贴是想先物色个懂行、能打的搭档。如果你现在还没离职,我们可以年前先加个微信认识下,喝杯咖啡,觉得事儿靠谱,年后过来一起搞也行。 这种机会一般内推就消化了,但我确实想找个纯粹点的技术人,我也很讨厌大厂那种制度,几点下班,几点上班,每月汇报,考核,工作站队,职场文化等等,罗里吧嗦了一大堆,如果有遗漏或者想深入了解的 可直接留言或 PM 我 WeChat (欢迎闲聊) : QTg4OFNS Email(求职投递) : cmhvbmRhbXN0ckBnbWFpbC5jb20= (备注 V2EX ,简单介绍下你做过的项目)
#立党 2021年年底, 我对所有粉丝建议,立刻卖掉手里中国大陆的一切房地产,一套都不留,不惜一切代价,全部卖掉套现逃顶,在泡沫破裂前最后一刻极限操作,利益最大化。 与此同时—— ![](https://pbs.twimg.com/media/G9WqesJW0AAnOkH?format=jpg&name=orig)
#V2EX ### [Apple] 新注册的美区 Apple ID,不到 48 小时就“翻车”了 前段时间,通过安卓版 Apple Music 注册美区 Apple ID 的方法非常火。本着求真务实的态度,我亲自去验证了一下。虽然顺利注册成功,但不到 48 小时就“喜提”封号。这篇帖子打算复盘一下整个经过,希望能给想要注册美区 Apple ID 的朋友提供一点参考。 ## 前情提要 本人已经拥有一个使用长达 10 年以上的美区账号,并将其作为主账号使用超过 5 年。此次注册纯属周末闲来无事,想验证一下“官网直接注册”和“安卓 Apple Music 间接注册”两种方式目前是否可行。虽说最终翻车,但对我个人并无实质影响。 ## 注册过程 首先,我尝试了官网直接注册:地区选美国,手机号选 +86 (从未注册过 Apple ID 的小号)。最终卡在了手机验证码这一步,输入验证码后,系统提示“Account cannot be created at this time”。期间我分别尝试了国内 IP 和美国 IP ,均不成功。 接着,我尝试了间接注册法:先通过安卓版 Apple Music 注册美区账号,这一步仅需邮箱即可完成。随后,我拿出闲置的旧 iPhone 8 (原先登录的是国区 ID ),App Store 退出原账号后,登录了新注册的美区 Apple ID 。这时系统要求绑定手机号,我选择 +86 (和前面失败时用的是同一个号码),结果顺利通过验证,并免费下载了一个 TikTok 。 之后,我又登录网页端,将付款方式设为“无”,并将账单地址改为免税州俄勒冈(在地图上随便找了个真实商铺地址填进去)。至此,除了充值礼品卡之外的所有操作都已完成,当时还觉得过程挺顺利的(注:全程使用国内 IP )。 结果,当我将手机闲置 24 小时再次拿起时,发现 iPhone 8 提示需要验证密码,就知道“大事不妙”。果然,输入密码后提示无法登录。我随即尝试登录网页端验证,提示需等待 24 小时审核。第二天便收到了邮件通知:“我们已审核并拒绝访问该账户😢”。 ## 复盘总结 虽说是总结,但我其实并不清楚具体是哪个环节触发了风控。反思下来,原因可能有以下几点: 1. 注册时使用的 IP 与账号所属地区不符; 2. 使用 +86 手机号注册美区账户可能更容易触发风控; 3. 注册完成后没有后续动作,被苹果系统判定为“僵尸账号”; 4. 其他暂时未知的风控机制。 ## 避坑建议 1. 新注册的账户不要立即充值礼品卡,以免造成金钱损失; 2. 新注册的账户也不要立即作为主账户,并开启“查找 iPhone”功能,避免封号后无法从设备上登出; 3. 新账号可能需要一段观察期,建议保持一定的日常使用量; 4. 或许立即开启二次验证等提高账号安全性的操作,能稍微降低被风控的概率? ## 最后 希望这次“翻车”经历能给大家带来一些借鉴。如果哪位大神能帮忙分析分析触发风控的原因,那就更好了🙏。 同时也很好奇,最近尝试注册美区账户的网友们情况如何?有没有人的账号还依旧坚挺?
#V2EX ### [git] 发现了一个极度臃肿的项目 <https://github.com/vernesong/OpenClash> 这是 openwrt 上的 clash 客户端,因为跑路风险较高,为了防止删库跑路,我在自建的 gitea 上镜像了这个项目,发现一个路由器插件的项目竟然慢慢涨到了 72G 之多,比较好奇这个项目发生了啥。 <https://imgur.com/a/5FxQgK2> 去年创建镜像的时候也有 50G 了