凌晨一点,出租屋里只有青轴机械键盘在空荡的房间里敲击出清脆的回响。
陆辞没有睡。
没开主灯,二十七寸显示器散发出的冷幽蓝光打在他的脸上,将眼底那抹细微的血丝照得清清楚楚。桌面上散着几张截图打印件,角落里还叠着三个空的外卖盒,其中一个被他顺手压在了便签纸下面当镇纸。房间里有一种混合着冷却电子元件和速食泡面的特殊气味,这是长期在密闭空间里与屏幕为伴的人才有的专属气味。他的视线没有在屏幕上停留太久,而是转向了右手边那面原本雪白的墙壁。
现在,那里已经变成了一幅巨大的、近乎疯狂的拓扑图。
从墙角到天花板边缘,密密麻麻地贴满了A4打印纸、冲洗出来的监控截图和手绘的建筑平面图。红色的图钉将它们固定,黑色的马克笔在纸张之间画出粗犷的连线,中间还穿插着各种用红色便签写下的批注。如果你让一个资深的主程站在这里,他会本能地感到呼吸急促——这根本不是案情分析板,这是一个庞大系统从V0.1到V0.3版本的提交记录实体化。
墙面的最左侧,是已经蒙上一层薄灰的地铁站副本全貌;紧接着是公园的拓扑结构、便利店的时间轴坐标系;再往右,写字楼的安保监控盲区被用黄线高亮标注;而占据了整面墙最核心位置的,是云栖商场的五层空间立体解构图。
云栖商场副本结束后,网上已经彻底炸开了锅。逻辑大师公开认错的短视频被剪成了几十个版本,在各个平台来回疯传;一个顶着生存砖家ID的黑粉骂他装,也有个金V博主阴阳怪气地说至少他还敢认。天幕评论区更直接,前一天还刷着稳妥方案的弹幕,一夜之间全变成了满屏的???和专业打脸。
陆辞没看完。
他把所有剪辑都静音关掉,只截了其中几张关键画面——二层服务台的红灯、三层扶梯停转的瞬间、东门锁舌弹开的时间点——贴进一个新的文档里。
文档标题只有一行:
《ChangeLog0.3》
他把地铁、公园、便利店、写字楼、云栖商场五个副本按时间排开,拖来拖去,最后把商场那一页压在最上面。
每一个副本的气质都不一样,这一点他早就知道,但今晚是第一次把它们并排放在一起,让差异变得清晰起来。也是第一次让他看见那条贯穿五个副本的隐线。
地铁副本是粗暴的硬规则。那时候系统的逻辑链条极短,规则写得生硬,就像刚毕业的实习生堆出来的if-else嵌套,只要找到那个被写死的循环条件,稍微输入一个异常值,整个脚本就会崩溃。那时候的漏洞像是大楼墙面上裂开的口子,你用手指就能往里掰。公园副本开始有了动态分支——权限树在运行中会根据你的行为调整节点连通性,它学聪明了一点点。便利店是异步调用的初次尝试,表面规则只是障眼法,真正的杀机藏在时间触发的定时任务里,要踩穿它,你得先预测到它的时间表。写字楼则是身份标签加监控的双重锁——RBAC体系,前端物理压制加后端逻辑锁死,这一版把之前的漏洞收口收得很干净,像是有人系统性地做了一次代码审查。
而云栖商场,是目前最精密的多模块不同步。清洁模式和签到模式两个本该互斥的进程,因为微小的时间差失去了同步锁,暴露出一个并发漏洞。
最先扎眼的,是少掉的那部分。
地铁那种写得近乎愚蠢的硬冲突,后面几乎没再出现。取而代之的是缓存延迟、动态上下文、门禁和广播。坑还是坑,只是埋得更深了。
陆辞又把几张服务台的截图并到一起。商场、乐园、写字楼——这些看起来最像正解入口的东西,在副本里出现得越来越勤。你一旦习惯信它,就会死得很快。
这个设计语言太统一了,统一到让人不安。伪装成核心服务的蜜罐。
最后,他把商场扶梯上的那行注释放大,和地铁最后那条补丁、写字楼摄像头边缘的灰线并到一页。
字不多。
味道是一样的。
陆辞开始在文档里敲打具体的分析条目。这不是写给任何人的报告,是他与那个隐藏在天幕之后的存在之间,单方面的逆向工程剖析。键盘声在空荡的房间里听起来比平时更响,窗外街道已经彻底死透,偶尔有一辆车过去,车灯扫过窗帘,在天花板上划一道白光,然后消失。
条目一:规则漏洞的迭代速度正在加快。此前,底层逻辑架构通常需要维持三到四个副本的稳定期才会发生大版本变更。但写字楼到云栖商场之间,系统连续两次在运行期出现了新型状态同步漏洞。迭代压力在上升,后台正在被大量算力抽调用于紧急重构。这不像是从容的版本迭代,更像是在跑步的过程中修鞋底。
条目二:服务设施模块(服务台、导购、广播)的伪安全设计已形成稳定模式。推断为主动诱导设计,而非随机地形元素。它在试图建立一种致命的用户习惯——让人在真正需要怀疑的时候本能地选择信任。这是最老套的社会工程学:把钓鱼链接做得像官方页面。
条目三:【确认】系统存在主动维护行为。表现为针对已暴露漏洞的定向热修复,补丁推送时机与漏洞暴露节点高度相关。手法谈不上漂亮,有点狼狈,像是被更麻烦的东西追着跑——哪块被踩穿了就先堵哪块。
陆辞盯着屏幕,顺手把手机翻朝下。
到这一步,维护者存在已经可以直接写进结论里。
不只是存在。
是在持续工作,还面临压力。
问题只剩一个。
他到底在堵什么?
陆辞盯着那几张截图,后颈一点点发凉。真把他当入侵者,最省事的办法该是一刀封死。可眼前这些补丁不是这个路数——哪块被踩穿了,就先去堵哪块;手法谈不上漂亮,甚至有点狼狈,像后面还有更麻烦的东西在追。
他开始写条目四,只打了一行就停住了。
条目四(未完成):通信可能性。
如果他能根据前四个副本的代码风格预测出下一个副本的基础结构,那么维护者一定也在大量崩溃日志里侧写他。他在做预测,对方就在做反预测;他在找后门,对方就在封端口。每一次存活,都是一次向后台发送的明文数据包。