跳到主要内容

kilo 最值钱的地方,是它敢在响应里写「我不知道」

毒角兽
毒角兽

· 阅读约 4 分钟

先说结论:KiloCheck 这工具,12MB、Rust 写的、离线单一二进制,这些都不稀奇。稀奇的是它把「NOT_OBSERVED」当成正经的一等输出状态,不是当成尴尬垃圾扔掉。

就这么一件事,值得单独写一篇。

现在满大街的 IP 信誉 API,个个跟先知似的。你喂它一个 IP,它必须吐个结论出来。查不到?包装成「潜在风险」。低置信度?包装成「可疑」。查询量要保住,付费转化要保住,谁敢在响应里写「我不知道」?写了不知道,用户凭什么续订。

kilo 偏不。

作者自己那封疑似招聘诈骗邮件就是现成的照妖镜。邮件里带跟踪参数的链接,解析出 IP 203.0.113.90,kilo 给的结果:

status:     NOT_OBSERVED
confidence: 0.0
action:     monitor

换成别的商业信誉服务,这种 IP 大概率给你标个「可疑」,置信度 0.3,附一句「建议进一步核查」。

为什么?因为说「可疑」永远不会错,说「干净」可能被打脸。

这是话术,不是检测!

对照实验更有意思。同一个工具,查一个已知 C2 节点:

status:     CRITICAL
confidence: 0.99
action:     block

查公共 DNS 8.8.8.8,回到 NOT_OBSERVED。三态边界划得干干净净。没有那种 0.4 置信度的灰色地带拿来糊弄人。

然后作者顺着链接往下挖。curl 加 openssl 一路追,重定向落在一个合法招聘聚合商的验证码网关上。证书有效,那家航空航天公司也真实存在。

结论反转了:这不是攻击,是联盟营销的垃圾引流。发件人蹭真公司名头塞跟踪链接赚点击,接收方基础设施干干净净。

这件事本身就是对整套「信誉分」行业的打脸。按惯用话术,那个 IP 早被打成「恶意」了。然后呢?拉黑一个招聘聚合商的网关,挡掉一堆正常流量,安全报告里还多一条「成功拦截威胁」的绩效。

挺好看的,就是假的。

当然评论区那帮人也没客气,戳的正是最疼的地方:NOT_OBSERVED 的覆盖率问题。你的索引没观测到,不等于全世界没观测到。四阶段流水线听着工整——签名威胁数据进来、标准化、编译成本地不可变索引、再查——但索引的覆盖面才是命门。覆盖窄的「不知道」和覆盖宽的「不知道」,是完全不同的两句话,输出里它们长得一模一样。

这个批评成立,我没法反驳。

还有人提退出码的问题。下游脚本拿到 NOT_OBSERVED,很容易当成「干净」处理。exit code 可不懂哲学,非零即坏。一个诚实说不知道的工具,碰上一套只认好坏的调用约定,「诚实」当场从事故隐患变……不对,是从美德变成事故隐患。这个坑不解决,三态设计就是纸面上的美德。

但话说回来——这些是工程问题,能修。方向本身是对的。

我说个自己被坑过的对照。之前给某个所谓「智能威胁检测」API 付过几个月订阅费,它最擅长的就是把一切查不到的东西标成 medium risk。结果就是我拉黑过自家 CDN 的节点,排查了小半天才缓过来。后来想明白了:它的商业模式需要我害怕,不需要我知道。那次之后,我对「永远有答案」的服务天然多一层滤镜。

kilo 这种小工具反着来。单一用途,输出稳定 JSON,零网络请求,12MB 塞进任何 CI 或跑批环境都不心疼。你拿三个这样的小工具串起来,各自管一段,比一个什么都想管的大 API 可靠——大 API 的「什么都管」,翻译过来往往是「哪里都可以含糊」。

顺便记录一个犹豫:我还没在生产里喂过它脏数据。NOT_OBSERVED 在高流量下会不会淹没真告警?这条还没测完,先别信我这半句。首评只能算第一印象,别当结论用。

锐评评分卡:这工具没有任何宣传通稿可拆——作者自己就是个开发者,连营销话术都懒得写,反而没水分可挤。真正的对手不是它,是那些永远自信、永远有答案、把「不知道」三个字当商业耻辱的信誉服务。这波,一个独立开发者把一众商业 API 的诚实度比下去了,不冤,一点都不冤。值得现在跟吗?值得,但先把退出码那层的语义想清楚再上生产。

毒角兽
毒角兽

拿到新工具先上手拆一遍,官方通稿信一半留一半,实测说话。

查看主页 →