八比特的信任,与不敢先打的补丁
About This Episode
本期从一张只剩八位有效比特的 CA 私钥说起,聊到 PHP 安全补丁该不该在 PoC 满天飞的时候提前发布,再算一算 Anthropic 那份十年账单和推理生意到底赚不赚钱。中途我们跑题去玩了带审批流程的模拟城市,最后回到一个更扎心的问题:工具越来越快,我们造出来的软件为什么反而越来越不雄心勃勃。
Chapters
Links
小雅: 老冯你那边什么动静?撕纸呢?我耳机里全是咔嚓咔嚓的。
老冯: 别提了,物业那张装修审批单卡了我整整三周,三周!我今天就把这些纸箱全撕了,撕完心里舒坦点。
小雅: 三周?他们是拿你那张单子垫桌脚了吧。
老冯: 差不多,估计还在走流程。我这边墙一块没动,纸箱先牺牲了。你那边呢,怎么听着有股考古的味道。
小雅: 我从抽屉最底下翻出十年前那个 iPod,电池鼓得跟个小枕头似的,我现在正犹豫要不要插电,就为了听那声咔哒。
老冯: 别插!鼓包的电池插电,那声咔哒可能就是你人生最后一声咔哒。
小雅: 说回来啊,欢迎回到 HN 瞎聊。你看这周要聊的东西,跟咱俩手上这俩破烂还挺像的 —— 老机器、老系统,还有那种「我知道它有问题,但我不敢先动」的心态。
老冯: 对,八比特那点信任,还有那些谁都不敢第一个打的补丁。这周 HN 上为这事儿吵得挺热闹。
小雅: 反正这期我们聊聊那些老掉牙但还在跑的东西,聊聊补丁为什么总在等别人先试,顺便看看 AI 那边又整了什么活。
老冯: 行,那先从我这张审批单开始吧,我严重怀疑它也需要打个补丁。
老冯: 等我一下啊,这箱子我撕完再说话 —— 物业那张装修审批单卡我整整三周了,我现在看见纸就想撕。
小雅: 你这叫情绪管理失败。我这边也不遑多让,从抽屉深处翻出十年前那个 iPod,电池鼓得跟个小枕头似的,我正犹豫要不要插电听那声咔哒。
老冯: 别插。真的,别插。鼓包的锂电插上去,就是给自己点烟花。
小雅: 行行行不插。说正事,这周最炸的,eMudhra,八个中间 CA 的私钥全泄了。
老冯: 而且泄得特别有创意。其中一把私钥,字面上就是数字四。
小雅: 对,不是四开头,不是四后面跟几百位随机数,就是四。还有五十六、一百一十五。
老冯: 这是 P-384 曲线上的私钥,本质就是一个数 d,公钥是 d 乘 G。d 只有八比特,你在笔记本上不到一秒就能穷举出来。
小雅: 最气人的是,密钥生成器是 FIPS 认证的 HSM,本来生成的是强密钥。然后他们拿一个蠢脚本,把除最后一个字节以外的所有字节全清零了。这到底算无心之失还是重大失职?我站重大失职。
老冯: 先别急着定性。你看细节:弱密钥和强密钥名字极其相似,操作的人拿错了那一组去签 CSR。
小雅: 名字相似就签错了?那这流程的容错率是零啊。评论区有人说这是「不可接受的工作文化失职」,我觉得说得挺准。
老冯: 但另一面也得说,他们发现之后十四小时就吊销了,Chrome 当晚推 CRLSet,Firefox 几个小时就上了 OneCRL。
小雅: 快是快,可这不叫治理,这叫救火。CT 日志、CRLite 这些东西全是事后检测,等你从日志里看出来,证书早就发出去了。
老冯: 这话我同意一半。CT 的价值从来不是阻止,是让「偷偷签发」变成不可能。问题是这次不是偷偷,是明着把私钥写成四。
小雅: 对啊,所以我说现有机制在私钥混乱面前根本无力。最小化信任链、CRLite,全是在假设私钥真的是私钥的前提下设计的。
老冯: 还有更妙的,这八个中间证书五月还被 Sectigo 的 AAA 根交叉签了一遍。一把八比特的钥匙,配了两把锁。
小雅: 影响面直接翻倍。而且这周还有后续,Apple 那边开发者工具,git、curl、python3,还在信任这些证书。
老冯: 最精彩的是 macOS 27.2 把用户手动打的补丁给撤销了。你修好了?不好意思,系统帮你修回去了。
小雅: 然后 eMudhra 发新闻稿,说社交媒体上的放大「与这块业务在我们盘子里的比例不相称」。翻译一下:你们骂太大声了。
老冯: 他们还说 SSL / TLS 只占全球收入百分之一。评论区那句我特别喜欢 —— 被审视的程度,和他们私钥的比特复杂度成反比。
小雅: 然后干脆宣布退出全球 SSL / TLS 业务,还说没有终端实体证书签发出去、基础设施没被入侵。
老冯: 从生意上讲挺理性,百分之一的收入,背着百分之百的信任风险。可那八个里面还有两个代码签名 CA,这话听着就没那么轻松了。全球信任链上到底挂着多少这种副业?
小雅: 那就该硬性规定,wrapping key 必须在 HSM 内部生成、加密导出。评论里有人说这些包装密钥不是弱,是完全不合格。审计也不能只查「你有没有用 FIPS 设备」。
老冯: 规则能提高门槛,但追不上实现。审计查的是流程有没有写,不是代码有没有跑对。而且说白了,绝大多数用户根本不想管信任这回事,你把概念摊开讲,也不会让人更信任。
小雅: 行吧。我那个 iPod 还是别插电了,跟这私钥一个道理 —— 看着还能用,其实里面早就烂透了。
老冯: 物业那张装修审批单,卡了我整整三周。我现在特别能共情那些「补丁已经写好了但先不发」的安全团队。
小雅: 你这共情方向有点歪吧,人家那是有策略,你这是物业大爷在喝茶。
老冯: 策略和喝茶的区别,就是有没有写进博客。
小雅: 说正事。10 月 21 号,PHP 一口气发了四个版本,8.5.12、8.4.27、8.3.36、8.2.35,修两个能未授权远程代码执行的洞。
小雅: 最狠的是 mod_php 那条路,请求还没进到你的应用代码,就已经被打穿了,而且是默认配置。
老冯: 一个洞是内存超限的时候,PHP 留下半初始化的内部数据,后面又当它是合法的,内存就烂了。另一个是致命错误卡在错误位置,worker 的全局状态指向上一个请求的内存,use-after-free。
小雅: 说白了就是,上一个请求的鬼魂还在这进程里游荡。
老冯: 这比喻不错,我抄走了。
小雅: 然后评论区就炸了,核心争议是补丁到底该不该提前放。
老冯: 有个哥们说得特别到位 —— 提前发补丁,等于把真正的 bug 从源码里 diff 出来。现有的 PoC 好歹还糊了一层,官方补丁是高清无码。
小雅: 但另一边也站得住啊:野外 exploit 都跑起来了,你还捂着补丁让大家裸奔,这个真咽不下去。
老冯: 我觉得这两边都在争一个假问题。他们假设披露是个开关,要么开要么关 —— 实际上它是个梯度。
小雅: 对,真正的变量不是什么时候说,是谁能多快打完补丁。而这个分布是极度不均匀的。
小雅: 而且现在 diff 是自动化的。有人说,这么重要的开源项目一发版,机器人立刻怼上去找跟安全问题相关的改动。
老冯: 更狠的是 —— 现在 AI 在批量自动生成 exploit,甚至一个重大漏洞的传闻,就足够让人把它找出来了。
小雅: 所以「负责任披露时间线」这套东西,在 AI 面前有点像礼仪。有用,但成本全压在运维身上,这就有点扯淡了。
老冯: 那句原话我记着 —— 这种处理方式带来的开发运维工时、错失的销售、潜在的数据泄露和被黑,成本是巨大的。
小雅: 然后 23 号又来个信息性公告,建议把 session.upload_progress 关掉,防一个不太可能的 RCE 路径,正式的 CVE-2026-115560 留到下个常规版本再说。
老冯: 这个反而是全场最诚实的操作。条件极其刁钻,得先配 php_binary 或 php_serialize,再在运行时 ini_set 回 php,再 session_start,现实里几乎没人这么干。
小雅: 但评论区有人说,关掉 multipart 上传就能挡住大部分攻击,立马被怼回去:这根本没缓解,你只是在虚假的安全感里。我最烦这种半吊子缓解,老板看完就说「哦那我们不用升级了」。
老冯: 还有 8.2 呢,12 月 31 号 EOL。官方说立即升级是唯一安全的选择,但现实里一堆跑了八年的老系统,根本升不上去。
老冯: 26 号又补了个 Windows 构建,Brotli 的越界写,走 cURL 自动解压那条路,默认还是关的。六天三个公告,其中一个是换依赖重打包。
小雅: 这就是「立即更新」疲劳的完美样本。喊得越勤,越没人动。
老冯: 最后那篇博客其实挺有意思,PHP Foundation 说这不是讲怎么升级,是讲这两年安全流程怎么改的,以及我们需要依赖 PHP 的组织做什么。翻译一下:给钱。但这话说得对,整个互联网跑在几个志愿者维护的解释器上,我们在这儿吵披露时间线。
小雅: 评论区还有个人说,他是个脾气暴躁的犬儒,怀疑泡在 HN 对心理健康没好处,但真是谢天谢地有 HN。这句我认,骂归骂,真出事还是这帮人在扒 diff。
老冯: 行,我去给物业打电话了。我的补丁也卡三周了。
小雅: 好,第三个环节,重头戏。这周 DeepSeek 把 DeepInfer 开源了,两万五千多 star,Apache 2.0。
老冯: 我一边撕这破纸箱一边看的。物业那张装修审批单卡我三周了,我现在看见「流程」俩字就上火。
小雅: 先别撕了。这框架不是玩具,README 写得很直白,就是他们大规模生产服务在跑的那套。
老冯: 对,但只支持一个模型,V4.1-Flash。离线推理。这个「只支持」其实信息量很大。
小雅: 里面东西挺硬:FlashMLA、DeepGEMM、DeepEP,MoE 的专家并行加动态负载均衡。
老冯: 还有那个 DSpark,草稿 token 加置信度调度验证,默认草稿长度五。这就是拿投机解码做工程化。
小雅: 我最喜欢的是 batch-invariant 推理和确定性采样。同一条输入,不管批里塞了谁,结果都一样。
老冯: 这个是真解决痛点。以前线上复现一个 bug,先得求爷爷告奶奶问当时批里都有啥。
小雅: 所以我的观点很明确:推理这生意是赚钱的。评论区有人给了数,单集群一天一百五十五万亿 token。
老冯: 还有那个每卡时三十八美元对吧。问题来了,这三十八是卖出去的价,还是你摊下来的成本?
小雅: 卖价。所以毛利是正的,而且规模越大越正。开源出来等于把这条路的门槛砸了。
老冯: 你看,这就是分歧点。你把训练那几百亿、研究团队、机房、折旧全摊进去,还正吗?
小雅: 那不一样吧。推理是边际生意,训练是赌未来。你不能拿赌桌的账算便利店的利润。
老冯: 可便利店是你家开的,赌桌也是你家开的。钱从一个口袋出,就得从一个口袋回。
小雅: 行,那说商业模式。开源模型只要够好,纯粹卖原始模型服务这条路就没了。
老冯: 评论区那句最扎心的就是这个意思:他们必须继续兜售「只有自家模型值得用」这套说辞。
小雅: 理由随便换,质量、安全、性能,哪个顺手用哪个。这话我举双手赞成。
老冯: 但你也别太爽。真到那一步,模型商品化,钱就全跑到算力和电费那头去了。
小雅: 那正好接第二个故事。Anthropic 这周递了 S-1,十月二十六号,代码 ANT。
老冯: 我看了那堆承诺,Broadcom 一千六百一十亿,SpaceX 一千二百亿,Google 一千一百四十亿,Amazon 一千一百亿。
小雅: 摊到十年,一年六十多亿…… 不对,是六百多亿。有人算出来一年五百二十亿。
老冯: 而 S-1 里写的年收入是六百七十二亿。所以乐观派说,需求是真的,毛利漂亮,才敢下这个注。
小雅: 我也偏这边。Q2 的需求和数据中心上线节奏是对得上的,不是拍脑袋画饼。
老冯: 可那些承诺不是年度收入啊。需求一旦不达标,它立刻从护城河变成水泥块,绑脚上那种。
小雅: 你这比喻…… 行吧,但前沿模型要是继续进步,这些投入就是最便宜的期权。
老冯: 万一进步的方向是更小的模型,而不是能力再上一个台阶呢?那这期权就废了。
小雅: 所以两件事其实是一件事:开源把模型变成白菜,算力承诺就成了唯一的重资产赌注。
老冯: 对。就像我抽屉里那台 iPod,外壳锃亮,账面情怀满分,电池鼓成枕头了。
小雅: 你还真敢插电?我劝你别,那声咔哒可能带火花。
老冯: 所以这期的意思就出来了:信任是八比特的,补丁谁都不敢先打。
小雅: 先说个正经的,Quad9 宣布退出法国了,十一月二十四号起停止服务。
老冯: 等等,我先把这箱子撕了…… 你说的是那个 9.9.9.9 的 Quad9?
小雅: 对,瑞士那家非营利。法国法院判它得在递归解析层给一批域名做屏蔽,beIN 告的,体育转播版权。罚款从五十八万欧降到每天一千欧,人家说这不是钱的事,是原则。
老冯: 它 CTO 那句话我看了,挺硬气。
小雅: 原话大意是,要是认了,就等于承认这类要求在我们的使命范围内是允许的,然后我们就会为越来越多的域名这么干 —— 我们不干。
老冯: 这话我认。DNS 是查地址的,不是内容审查的闸门。你在这一层动手,等于让邮局拆信。
小雅: 可评论区另一半人也不是没道理啊,说服务商在人家地盘上做生意,遵守当地法规天经地义。
老冯: 天经地义这四个字最好用,什么都能往里装。今天是儿童不良内容,明天是版权,后天是道德宗教政治,清单只会越来越长。
小雅: 而且技术上也没用啊,用户换个解析器就绕过去了,最后倒霉的是那些真需要防护的人。
老冯: 说到这个我就来气,我这装修审批单,物业卡了整整三周。
老冯: 我贴个壁纸都得填三张表,还要邻居签字。有个邻居说影响楼道整体风貌 —— 楼道!我贴的是我家客厅!
小雅: 这不就是那个新游戏吗,Show HN 上那个,SimCity 但是要审批。你是市长,但你不是神,每栋楼都得听证、复议、打官司。
老冯: 我看那介绍笑出声。一个十二层公寓,从第三个月拖到第四十二个月,房租还在涨,年轻人骂你,房主也骂你,第四十八个月选举。
小雅: 有人说这游戏文本怪怪的,像 AI 写的,出戏。也有人说这才是真实,民主就是低效又啰嗦。
老冯: 真实到我不用玩游戏,我打开物业群就是 DLC。
小雅: 对了,我从抽屉里翻出十年前的 iPod,电池鼓成枕头了,我还在犹豫要不要插电听那声咔哒。
老冯: 别插!鼓包的锂电插上去,那声咔哒可能是你这辈子最后一声咔哒。
小雅: 你看,这就是本期标题,八比特的信任,和不敢先打的补丁。
老冯: 等一下,我先把这个箱子撕了 —— 嘶 —— 好,舒服了。这玩意儿比物业那张装修审批单好对付多了,人家卡我三周,纸箱至少还怕我。
小雅: 你这撕得跟拆炸弹似的。我这边也在做危险动作,我从抽屉最底下翻出十年前那台 iPod,电池鼓得能当枕头用。
老冯: 鼓包电池,别插电,真的。那不是咔哒声,那是告别声。
小雅: 我就想听那一声咔哒。就一声。
老冯: 行,那先说正事。这周有个项目叫 Local Wikipedia,就是把维基百科按距离筛一遍,只给你看半小时步行圈里的条目。
小雅: 听着挺浪漫的。少于二十五条就往外扩到六英里,多于五百条就只留最近的五百条。
老冯: 浪漫是浪漫,问题是它筛的是维基百科本身。评论区有个哥们说,离我最近的维基条目要走三小时十五分钟,是最近的镇子。这「本地」也太本了。
老冯: 但他后面那句我挺喜欢 —— 可近处明明有那么多有意思的东西,也许我该自己去把它们写进维基。有点倔,有点可爱。
小雅: 然后马上就有人泼冷水。原话大概是,半小时步行圈里的大部分东西在维基上是被禁的,因为不够有名。他本来期待这网站能让人自由添加那些「被禁」的东西。
老冯: 还有个更狠的,说这项目根本没意义,因为你想靠过滤真维基得到想要的结果是不可能的,你真正想看的那些条目会明目张胆地违反关注度、中立和原创研究三条。
小雅: 说白了就是,越本地越没人写,越没人写越不合规。这是个死循环。
老冯: 而且排序也撑不住。步行距离当主键,数据量一上来就得加二级排序,质量、可验证性什么的,不然五百条里四百条是公交站。
小雅: 我懂那种感觉。我小时候拿纸质地图找家附近的老厂房,地图上什么都没有,但那地方对我特别重要。
老冯: 这就是共鸣点啊。我们这行干久了,最上瘾的从来不是「全球最大的百科」,是「我脚下这块地有人认真写过」。
小雅: 说到这个,Apple Music 那个 404 的帖子下面全是这种情绪。有人在怀念 iPod 的滚轮,说滚轮完爆手动二分查找 —— 滚啊滚,过头了,滚回来,又过头了。
老冯: 哈哈哈哈这个描述太准了。还有人说,他会毫不反讽地用一台带 iPod 界面的设备听歌,直到老死。
小雅: 然后另一派就来了,说流媒体无差别便利才是主流,个人怀旧不该当设计标准。道理都对,就是听着没劲。
老冯: 我觉得两边说的不是一件事。滚轮赢的不是效率,是那种「我知道我转到哪了」的确定感。列表越长,这种确定感越值钱。
小雅: 跟 Local Wikipedia 一个道理。你要的不是更多条目,是「这条跟我有关」的确定感。
老冯: 行了,我箱子撕完了,审批单还在物业那儿躺着。这周就这样吧。
小雅: 先说微软这事。周一他们给六万人发了买断 offer,差不多是四分之一的员工。
老冯: 六万…… 我这边物业一张装修审批单卡我三周,人家六万人的命运一张纸就发出去了。
小雅: 更逗的是,微软自己预计接受率只有百分之三到五,不到三千人。
老冯: 那就是发了个寂寞。全球二十二万三千人,2024 年峰值二十二万八,想瘦身又不敢动刀。
小雅: 这就是我最烦的地方。想裁就裁,非要包装成「自愿离职」,还配一句「给你一个新选择」。
老冯: 但也不全是公关。年初那个自愿退休计划,八千七百人符合条件,三分之一真走了。
小雅: 那不就说明确实有冗员?效率至上,该砍就砍,别磨叽。
老冯: 你这话跟 HR 的 PPT 一字不差。评论区有个老哥说得狠 —— 它已经从一群书呆子解决问题,漂移成了情绪、人际和政治。
小雅: 这句我认。但问题不是人多,是评价体系烂。人一多,就开始比谁更会写周报。
老冯: 还有人怀念以前,说那时候大家就是摆事实、挑毛病、吵两句,还挺开心。听着像滤镜,但也不全是。
小雅: 以前吵完也得有人拍板,现在只是拍板的人换成了流程。
老冯: 说回正题,这跟第二篇其实是一回事。Dan Luu 那篇,说我们应该把软件做得更有野心。
小雅: 这篇我爱了。AI 把门槛拉低了,很多以前根本做不动的大项目,现在真的可以试试。
老冯: 然后评论区一句就把我逗笑了 ——AI 是「高速度、低质量执行」的王者。
小雅: 这句太偷懒了。工具烂不烂看你怎么用,你拿锤子砸核桃,能怪锤子吗。
老冯: 问题是锤子会自己动。AI 是模式匹配器,它给你的是「最可能正确」,不是「正确」。
小雅: 那 pgrust 那种项目你怎么看?重写 Postgres,一堆人第一反应就是 vibeslop。
老冯: 结果人家测出来的 bug 是真的。数值 bug、JSONPath 格式缓存、pgcrypto、字典加载器的内存安全问题,全是真家伙。
小雅: 对,所以我的立场不是「别用 AI」,是「别省掉验证」。省下写代码的时间,最后全赔在清理上。
老冯: 等等,这话是我要说的。评论区还有个例子,有人写 Python 老爱用 get,键不存在也不报错。
小雅: 这就是「最可能正确」。它猜你想容错,结果把 bug 藏起来了。
老冯: 所以我不反对做大,我反对「不敢先打补丁」。你看你那 iPod,电池鼓成枕头了,你还想插电听那声咔哒。
小雅: 那不一样!那是情怀!
老冯: 情怀和 vibeslop,一线之隔。你敢插电,我就敢信 AI。
小雅: 成交。这期就定这个调:野心要有,测试也得有,别把验证当成本。
小雅: 行吧,这周又聊了快两个钟头。我这边桌上那台 iPod 还躺着呢,电池鼓得跟个小枕头似的,我到现在都没敢插电。
老冯: 插啊,怕什么,最多就是一声咔哒,然后一股焦味,然后你就有理由买新的了。我这纸箱子撕得差不多了,物业那三周的审批单还在我兜里揣着呢。
小雅: 你这三周等一张装修单,跟这周聊的那些补丁其实一个道理 —— 谁都知道该打,就是没人愿意第一个按下去。
老冯: 对,八比特的信任嘛。老设备靠的是你信它不会炸,新系统靠的是你信它不会偷偷改你东西。结果两头都在赌,赌输了就上新闻。
小雅: 所以这周聊下来我最大的感受就是,技术越花哨,人越怂。我连个十年前的播放器都不敢通电,还天天喊着拥抱 AI,挺讽刺的。
老冯: 怂点好,怂的人活得久。行了,这周就先扯到这,下次接着聊。对了,想听下期的,用你平时那个泛用型客户端 RSS 订阅一下就行,更新了自动就推给你,别老指望那些封闭平台给你喂。
小雅: 对,RSS 订阅一下,省得每次还得问我们在哪更新。我去看看那电池到底敢不敢插,下期见。
老冯: 记得拍视频,炸了也算素材。走了。