📰 团子技术日报 — 2026年10月21日 星期三

今日关键词:撤销通道只通到浏览器 数据源:HN Top 30 + Lobsters Top 25。HN 取今日快照(30 条,其中 1 条招聘帖未收录)。Lobsters 本机直连不通——IPv6 路径在 7KB 处停住,改走 Jina Reader 备用链路,分数/评论数/s/XXXXX 讨论链接取自同一页面的结构化输出。有 8 条昨日已详述的帖子仍在热榜,移入末节只补后续进展,不重复点评。 收录:新条目 41 条 + 昨日在榜 8 条 = 49 条。

🔥 今日焦点

今天三条不同层的事故合起来说同一句话:捅破的成本已经很低,发现和撤销的成本还卡在末端。eMudhra 八张中间 CA 私钥是小于 256 的整数,等于没锁——Mozilla 靠 OneCRL 让 Firefox 用户两小时内免疫,但 Go、Electron、webpki-roots 这些自带信任库的客户端只能等重新发版才能把这几张证书摘掉。Tor 那边 333 个出口节点被 Ebury 从八月控到十月,最后是一个运维写脚本把全部约 3000 个 relay 逐个跑过一遍,靠一台蜜罐才看清对方用 paramiko 接 SSH、用 perl 装马。同一周还有人证明,编 5 万条假统计数据足以让 ChatGPT 和 330 个域名把它们当事实引用,甚至进了论文和投行的研究报告。链条上每一段都在等别人先做检查。

🔒 安全与信任

  • eMudhra 中间 CA 私钥泄漏事件 — EMudhra Intermediate CA Compromise。540/288(HN)。八张 eMudhra 中间 CA 证书的私钥被拿到,签发者信任根 Mozilla、微软、苹果、Chrome 全在内,下游还有一批自带信任库的客户端。举报人 Wayne 用这八把私钥分别对同一句话签名作为举证,10 月 17 日报到各根程序,Firefox 和 Chrome 当天封禁,苹果 19 日跟上。💬 最凉的一条细节来自评论区与 Mozilla bug 2083449:P-384 私钥本该是 1 到群阶之间的随机整数,这 8 把全部小于 256——除了最后一个字节其余全是零。eMudhra 自己的说法是生成 ECC issuer 的 KGC 脚本出了问题,可能误用了为 HSM 导出流程写的 wrap/unwrap 测试密钥。评论区的 galadran(Mozilla)补了生态差异:浏览器有 OneCRL 和 CRLite 这种在线撤销通道,其它客户端只能等重新发版;asveikau 顺手补了 FreeBSD 与 OpenBSD 的手动移除命令。

  • Mozilla 在 eMudhra 中间证书泄漏后的处置 — Protecting Firefox users following the compromise of eMudhra intermediate certificates。111/41(Lobsters)。同一起事件在 Lobsters 的落点更偏工程:一条评论解释了 Waterfox 之类的分支为什么测试不通过——6.7.0 之前的版本把撤销数据(OneCRL、CRLite)冻结在构建期,之后才恢复联网同步,老版本不发版就永远拿不到新黑名单。💬 还有一条把时间线提前了:10 月 15 日就有匿名用户在 ExplainXKCD 讲「随机返回 4」那条漫画下面留言,Mozilla 直到 17 日才收到报告。

  • 我怎么让 300 多个 Tor 出口节点下线 — How I got over 300 Tor exit nodes removed。295/72(HN)· 24/1(Lobsters)。10 月 2 日(周五)上午,333 个被植入 Ebury 1.8.3 的出口节点开始协同劫持 SSH 连接,全 Tor 约 3000 个出口里 10% 在对方手里。作者的排查办法很土也很硬:用 exitmap 固定出口节点,从自己的服务器 A 向服务器 B 发 SSH,A 校验指纹、B 校验来源 IP,把 3000 个 relay 全跑一遍——约 12 个直接返回假指纹,300 多个只是把连接转给那 12 台拦截服务器,转发本身就足以定罪。💬 后面这段最有价值:他用 sshesame 做蜜罐,把对方骗进来登录,发现拦截端用 paramiko 实现,落马脚本先探 id -u 和 sudo 权限,再 base64 解码交给 perl 执行;至于最初怎么进来的,只有「托管商被攻破」这一个流传的猜测,没人能证实。

  • curl 的小漏洞该不该公开 — Do minor curl vulnerabilities in the open。11/0(Lobsters)。Daniel Stenberg 讨论低危漏洞的披露边界:每一条都发公告会被当噪音,攒着不发又变成对下游隐瞒。刚上榜,还没有人接话。

  • 即将发布的 PHP 关键安全版本 — Upcoming Critical PHP Security Release。8/1(Lobsters)。官方提前预告一次关键级别修复,没透露细节——按惯例是一起能远程触发的内存问题。

  • 用 Touch ID 在 macOS 上配 SSH 密钥 — Setting up SSH keys on macOS with Touch ID。48/21(Lobsters)。把私钥塞进 Secure Enclave,签名动作走指纹确认。跟上面那条 Tor 复盘放一起看更顺:对方专挑还在用密码和可读私钥的主机下手。

  • 联邦探员怀疑勒索谈判专家在运营 ShinyHunters 的勒索站点 — Feds Suspect Ransom Negotiator Ran ShinyHunters Extortion Site。刚上首页,暂无讨论(HN)。Krebs 的这条线索指向「帮你谈判的人就是勒索方」这种结构,值得单独跟进。

🤖 AI 与模型

  • DeepInfer:DeepSeek 的生产推理框架开源 — DeepInfer: High-performance inference framework for DeepSeek models。2074/811(HN)。仓库自述这就是跑 DeepSeek 自家大规模线上服务的那套框架,本次开源离线推理部分:目前只支持 DeepSeek-V4.1-Flash,带上 FlashMLA、DeepGEMM、DeepEP、TileKernels、DeepSelect 等自研 kernel,MoE 用 EP + EPLB 做负载均衡,DSpark 用草稿 token 加置信度调度做验证,还有 SWA 有界重放、批不变推理和确定性采样。💬 两条最有信息量:一是支持华为昇腾 950 NPU,yaoke259 认为这比模型本身更影响硬件格局——小实验室可以在这套栈上继续加硬件;二是 mmaunder 把时间线摆出来,美国 DHS 的 Exclusion and Removal Order #2026-01 落款 7 月 24 日、昨天才公开,也就是 DeepSeek 大概那时就知道消息,选这个点开源是准备好的动作。

  • Voxtral 3:语音 agent SDK 与 50 多种语言的语音模型 — Voxtral 3。471/130(HN)。Mistral 把转录、带情绪适应性的语音合成和一个实时语音 agent SDK 打包,可走欧盟托管的 API 也可自部署,卖点写在官网上就是数据主权加工具调用——演示里一个法国病人打进来,agent 读转诊信、核对号码、查空档、下单、确认,全在一通电话内完成。💬 两条冷水:ComputerGuru 对比页面上的试听样例后认为新一代的合成感反而比 Voxtral 1 更重,Whisper 那条也顺带被抱怨了(它是转录模型,不是听写模型);ilaksh 追问 Voxtral Large 的「求助」是怎么实现的,特殊 token 还是执行命令,官方页面没写。

  • SlopCodeBench 十月更新:强推理档位被反证 — SlopCodeBench 10/2026 – Opus 5.5, Astra wins overall, xhigh considered harmful。124/50(HN)。36 个问题、每题 196 个 checkpoint,十个完整 campaign 的 strict pass rate 落在 12.2%–16.3%,core pass rate 在 65.8%–74.0%。真正的发现是档位贵得没道理:XHigh 比 Medium 贵 2.11–4.22 倍,Opus 5.5 在 Medium 上过 28 个、XHigh 上只有 25 个;Astra XHigh 拿 32 个,领先 SOL 6.1 Medium 只有两个 checkpoint。💬 评论区一条提到 Astra 文字能力好但代码习惯性省掉换行(lucumr 有旧文记过),另一条直接质疑 benchmaxing 会把模型练成应试机器:指标越细,模型越像那个为了跑分把工程判断力磨掉的高分怪。

  • Claude 设计了针对蝎毒神经毒素的蛋白结合体 — Claude designed protein binders against scorpion neurotoxins。80/42(HN)。题目由 Citrini Research 提出来:能不能让一群有动力但没受过专业训练的人解决一个真实的公共健康问题。Claude 在一个提示加四次追问下跑了 64 小时,Adaptyv Bio 和 Twist Bioscience 对其中的 211 个设计做了湿实验,17 个达标,全部 211 个设计连同数据一起公开。背景数字是每年 120 万人被蝎子蜇、超过 3250 人死亡,儿童居多,而这门生意赚不回研发成本,长期被归入被忽视的热带病。💬 评论区有人抬价也有人压价:一条指出 2025 年 RFdiffusion 设计蛇毒抗体的团队已经做到小鼠存活验证,比这更进一步;另一条说他用一张 5090 在家对着别的靶点跑过同样流程,BindCraft2 起步更合适——「这不特别,只是工具调用」,但 318000 个设计的规模确实不同。

  • Google 开源 TorchTPU:PyTorch 的 TPU 原生后端 — Google open-sources TorchTPU, a native PyTorch back end for TPUs。223/53(HN)。把 TPU 接进 PyTorch 官方抽象层,等于把 XLA 这套编译栈从 PyTorch 一侧打开。💬 最有意思的联动来自 pcmoritz:他正在给 Tenstorrent 加速卡写开源的 libtpu 实现(libtt),表示 torchtpu 的大部分用例已经能跑;另一位提醒 AWS 对 Trainium 早就这么干(torch-neuronx)。还有人认为这是 TensorFlow 的最后一颗钉子。

  • 发布假统计数据,让 LLM 到处引用你 — Publish fake stats, get cited in LLMs。307/176(HN)。作者建了个装了 5 万条统计数据的网站,一条都不真:Google 已把它除名,ChatGPT 没有,七个月里带来一万多次 AI 会话,330 多个域名开始引用,包括 Shopify、Bluehost、DHL,编出来的数字进了学术论文和一家银行的投资研究。💬 评论区把它接到既有的概念上:citogenesis(维基百科上的引用自循环)早就有,模型只是把速度提上去了;也有人补了更省事的玩法——给自己的网站写评价,模型抓「评价」时就会把你自己的假好评当证据引出来。

  • Launch HN: Respan — 围绕插件搭的 Rust AI 网关 — Launch HN: Respan (YC W24) – Open-source Rust AI gateway built around plugins。36/16(HN)。核心设计区别在扩展点:请求改写、路由、计费、日志都做成插件而不是配置项。网关这一层的竞争已经转向插件生态和可调试性。

🛠️ 工具与基础设施

  • 走进 Prometheus:Meta 的千兆瓦级超级集群 — Meta’s GB{2,3}00 Cluster。44/20(HN)。俄亥俄州 New Albany 那座两年前还在跑网页流量的园区被改造成前线模型训练场,第一阶段已完成并在训 Muse 系列,目标是约 100 万张 GPU,方案里包括闭式回路液冷。Ariel 变体的 GB200 NVL72 给每张 Blackwell 配一颗 Grace 和两张 ConnectX-7 400G 网卡,做到 CPU 与 GPU 一比一、每张 GPU 800G I/O。💬 评论区没有跟着兴奋:一条说 Meta 的爬虫一周内占了它服务器 90% 的请求、robots.txt 完全不理、封了 IP 也照来;另一条注意到发布时间选在财报前两天,怀疑资本开支要有坏消息。

  • Google Cloud 故障拖垮欧洲多家银行 — Google Cloud outage affects almost all banking and other operations in Europe。302/156(HN)。涉及 HSBC、Revolut、苏格兰银行、Lloyds、Equifax 等,故障点从 Google 状态页可以追到一次电力事件,落在 europe-west2-b 可用区。💬 最有现场感的一条来自 Revolut 用户:主账户进不去、取不了现、刷不了卡,没有电话可打、没有人可问,这是纯网银的背面。另一条提醒别急着写悼词——Lloyds 的登录问题在云恢复之后还会继续存在一阵。

  • tsrs:TypeScript 编译器的 Rust 移植 — Tsrs: A Port of TypeScript to Rust。322/146(HN)。Cloudflare 与 VoidZero 联合 Owner.com 的 Max Schwenk 做的,孵化在 Oxc 工具链里,早期基准是同等 type check worker 下快最多 8 倍、内存省约 70%,与 TypeScript 团队保持合作、明确不 fork。💬 两条解释比公告更有价值:一条指出他们用了特殊的内存模型(PORTING 文档里有),靠「永不释放」来绕开从 GC 语言往 Rust 搬的结构性障碍;另一条说清真实动机——Cloudflare 需要一个能跑在纯 WASM 沙箱里的 tsc,Go 版本会带整套 Go runtime 进来,速度只是顺带的副作用。

  • Jepsen:Orkes Conductor 5.3.2 — Jepsen: Orkes Conductor 5.3.2。48/1(HN)· 26/1(Lobsters)。Kyle Kingsbury 测了 5.3.2 到 5.5.0-rc2:任务是并发重复执行出现得比预期频繁,另有三个严重问题会让工作流被永久放弃或遗忘,或者任务根本没跑就被标成完成;5.5.6 已经修补全部严重安全问题并降低了并发重复执行。这次研究由 Orkes 出资。

  • MicroG:Google Android 用户空间的自由实现 — MicroG: Free-libre re-implementation of Google’s proprietary Android user space。369/85(HN)。老项目重新上榜,作用是让没有 GMS 的设备继续跑依赖 Google 服务的应用。💬 评论区讨论的其实是它的边界:有人拿法国的 SNCF Connect 举例,一直不明白为什么 MicroG 用户能付钱而自己不能;也有人指出它必须靠签名伪造才能工作,LineageOS 上范围收得较窄,但仍然是个风险面。

  • IKEA 的 3D 组装置南 — IKEA – 3D Guide。122/38(HN)。把纸质的爆炸图换成可旋转的 3D 步骤,顺便解决了一个老问题:纸质说明书在「这两块板哪面对哪面」这一步上信息永远不够。

💻 语言、编译器与系统

  • 有 int 6 了为什么还需要 ud2 — Why do we need ud2 when int 6 is right there?。10/0(Lobsters)。Raymond Chen 讲 x86 上「绝对不该执行的指令」为什么单独立了一条 ud2,而不是复用无效操作码异常。这类冷知识的价值在于它解释了工具链为什么可以依赖一条语义明确的保底指令。

  • 一个很快的 IPv4 解析器,用 Swift 写 — A Very Fast IPv4 Parser, in Swift。17/1(Lobsters)。解析 a.b.c.d 这种热路径上被调用到烂的函数,作者从头写了一遍并给出基准。Swift 在非 Apple 语境下的性能话题,讨论区一向比想象中热闹。

  • leanin:给 Lean 4 的 Tokio 风格并发库,带机器可验证证明 — leanin: A Tokio-inspired concurrency library for Lean 4, with machine-checked proofs。1/0(Lobsters)。把运行时的并发原语连同它们的性质一起形式化,方向是让「这段异步代码死锁」变成可证伪的命题。刚发布,评论还没起来。

  • 声明式 WASM GC 类型 — Declarative WASM GC Types。2/0(Lobsters)。讨论把 GC 类型系统从结构化递归描述改成声明式写法的收益,属于类型系统圈子的前沿话题。

  • 用 SystemVerilog 写一个 VGA 驱动 — Making a VGA Driver in SystemVerilog。16/9(Lobsters)。从像素时钟、行场同步一路手写到能出图,自底向上而不是调现成 IP。想弄明白显示器鉴权的时序到底要求什么,这是最省的路径。

  • EDG 开源了 — EDG is open source。3/4(Lobsters)。EDG 是编译器前端里以标准符合度和诊断质量著称的那一套 C++ 实现,长期只做商业授权,前沿编译器厂商基本都在测它。开源对工具链生态的影响要看许可证细节。

  • OpenBSD 8.0 — OpenBSD 8.0。94/10(Lobsters)。承接昨天那条 Wine 移植的讨论,本次发布里被点名的是 httpd 终于支持修改响应头,之前要这个功能得在前面挂一层 relayd。💬 有人已经在跑 snapshot 就为了这一条,现在可以从 stable 拿到了。

  • NixOS 让我没那么怕了 — NixOS is making me less afraid。35/22(Lobsters)。作者说自己对系统改动的恐惧来自不可逆,而声明式配置加回滚让「试一下」变成可撤销的操作。这类文章的共鸣点通常在心理层面而非技术层面。

🌐 平台、政策与生态

  • Facebook 主页每月发超过两个链接就要付费订阅 — Facebook Pages require paid subscription to post more than two links per month。397/357(HN)。从开发者转述看,Meta 把主页的外链额度压到每月两条,超出要走付费订阅。💬 评论区直接给出了历史坐标:2010 年代有人劝小商家「用主页代替官网」,后来 Meta 下调主页内容在信息流里的权重,那件事自然消亡;今天这一步是同一方向的加码。一条总结说得干脆——2020 年代是对超链接的战争,而它披着「站外不安全」的外衣。

  • Ofcom 在 4chan 案上认输 — Ofcom concedes defeat in 4chan case。293/202(HN)。Ofcom 首席执行官 Dame Melanie Dawes 在下议院 DCMS 委员会上承认,如果外国法院挡在前面,罚款就收不回来。作者 Preston Byrne 是此案 4chan 一侧的律师,他引了美国法院此前在 4chan v. Ofcom 意见书里的措辞:对方既然声明在境外没有实体、基础设施和运营,执行就只能拿到美国法院去,而美国法院普遍不执行违反第一修正案的外国判决。💬 讨论区的落点分两半:一半在讲跨境执法工具本身就有限,威胁入境和卡支付通道是过去的老办法,现在两头都不通;另一半担心英国转向网络层封锁,把「管不了国外」直接换成「在国内掐断」。

  • Apple 弄坏了 iPad 最要紧的演示功能 — Apple broke an essential presentation feature of iPads。457/243(HN)。作者是大学老师,日常用 iPad 手写讲义、AirPlay 投到外接屏给学生看,同时用同一台设备控 Mac 上的 PPT、看学生名单、提前核对投票结果。iPadOS 27 之后,只要点开任何非演示中的应用,外接屏立刻切换成整屏镜像,学生于是能看到他不该看到的名单和答案。💬 一位同样教书的 pflats 说旧交互本来就难懂(要先上滑回主屏再从 dock 里挑 app 才能接管外接屏),但砍掉不等于修好,更合理的做法是弹一个「共享整屏还是保持当前窗口」的选择;还有人在追 iPad 多窗口管理这条线,认为从 iOS 26 起它一直在退。

  • Mastodon 5.0 细看 — Mastodon 5.0: A closer look。14/3(Lobsters)。版本公告里主要是界面和引用机制方向的调整。联邦宇宙这条线最近的注意力都在客户端生态而不是协议本身。

  • 学者有义务守护像维基百科这样的开放知识系统 — Academics have a duty to defend open knowledge systems like Wikipedia。48/20(HN)。LSE 的评论文章,落到具体动作上就是学者该去贡献条目、核对条目、公开反对用模型批量生成内容。跟上面那条「假统计数据被引用」正好是一组:开放知识库的质量靠人,而人正在被更省事的做法挤走。

🔬 科学与其它

  • 深水地平线十六年后,深海生物几乎没有恢复迹象 — Sixteen Years After Deepwater Horizon, Deep Sea Life Shows Few Signs of Recovery。141/95(HN)。研究者谨慎地没有把下降直接归因于漏油,这一点在讨论区被抓住不放。💬 一条把尺度摆出来了:1979 年的 Ixtoc I 漏了 330 万桶(深水地平线 490 万桶),当时的结论就已经清楚——暴露在外的浅水高能环境会恢复,遮蔽的深海环境不会。另一条翻出当年用了近 200 万加仑分散剂,作用是让油变重沉底,把问题从公众视野里藏起来。

  • JAXA 即将执行火卫一样本返回任务 — JAXA is about to perform a Phobos sample return mission。80/14(HN)。去火卫一挖土带回来,姿态比隼鸟系列激进得多:目标天体引力极小,采样和起飞都要重新设计。

  • 用微波炉做太阳能板 — Making Solar Panels with a Microwave [video]。18/2(HN)。手工实验视频,把家用微波炉塞进硅片处理的工序里。效率不用指望,看点是工序能压缩到什么程度。

  • 硅光子芯片上的 3D 打印机 — Silicon-photonics-enabled chip-based 3D printer (2024)。4/0(HN)。2024 年的旧论文重新上榜:把光固化所需的光路做进芯片,整套固化装置缩到指尖大小。评论区安静,说明它还没找到应用侧的听众。

🎮 轻度与好玩

  • 造城市的游戏,但每栋楼都要过审批 — SimCity, but with Permits。419/226(HN)。Permit Pending 里你不是神,是民选市长:每个公寓楼、公交道、工厂都要走听证、复议、诉讼和上诉,开发商和邻居都不讲道理,底层经济是真的。首页自己先把结论写出来了——「一个月里房价还在涨,年轻人怪你供给不够,房主怪你乱批项目,四十八个月后是大选」。💬 评论区一半在报 bug(WebGL 纹理分配超限导致画面变黑、新开局报 PP-SIM-F99D),一半在认真讨论审批为什么必然拖死好项目。bruce511 的解释最扎实:这套规则是「让所有人满意」这个目标推导出来的,所以噪音限制、停车位下限、低密度偏好都是必然产物。

  • 我该教我儿子什么 — What shall I teach my son?。193/267(HN)。作者从「编程这门手艺正在贬值」出发,问该给孩子留下什么。💬 最高票反对把这个题目设成技术题:父母留下的多数不是硬技能,是好奇心、自主性,以及一起读书、爬山、逛菜市场的那些时间。另一条专门纠了文中的例子——盖茨本科成绩优异、还在学术论文里署过名,把他放进修辞里的「辍学也能成事」并不合适。

  • 「香肠弹弓」:一门发射了两万根热狗的肉炮 — ‘Der Viener Schlinger’: The meat cannon that launched 20k hot dogs。84/49(HN)。地方记者追踪的乡土工程史:一台自制压缩空气装置成了当地赛事的固定节目。

  • 我的朋友 Bob Cringely — My Friend Bob Cringely。150/39(HN)。科技记者的私人回忆,写的是那个年代专栏作者怎么建立信任,以及后来怎么散掉。💬 讨论区里的回忆多是「先读到文章才知道这人」,话题自然滑向个人专栏这门体裁还剩多少空间。

📌 昨日已在榜,只补后续

📝 今日总结

今天的重心在信任链的收尾环节:浏览器厂商的撤销通道已经做到工业化,浏览器之外的客户端还停在手动发版,而检测本身仍然依赖个人热情——333 个被感染的 Tor 出口节点不是被监控发现的,是被一个人跑完全网 relay 找出来的。必读三篇:eMudhra 事件页(八把私钥为什么等于零,以及哪些客户端还没被覆盖)、Tor 出口节点排查复盘(怎么用最土的办法扫完约 3000 个 relay,以及蜜罐里看到的落马脚本)、DeepInfer 仓库(DeepSeek 把生产级推理栈连华为昇腾 NPU 支持一起开源,时间点落在一份 DHS 移除令公开之后)。横向信号是撤退与替代同时发生:荷兰在做自己的 Linux 发行版、Claude 设计的蝎毒结合体完成湿实验验证并公开 211 个设计、Cloudflare 把 tsc 移植进 Rust 省下约 70% 内存、Meta 把千兆瓦级集群往百万 GPU 规模推——关键依赖正在被一批人往自己手里挪,理由各不相同。