秦知夏下高铁时,江城站的广播刚报完第二遍。
她没有发“我到了”。
她先拍了一张照片。
照片里是出站口的电子钟,上午十一点零六分,下面人挤人,拖箱轮子碾过地砖,发出一串硬响。她的黑色行李箱停在黄线外,箱面上贴着一枚很小的白色行李牌,字被她用手指挡住了。
乔薇收到照片,直接拨电话。
秦知夏接得很快。
“别催,我先找个能坐下的地方。”
“你知道现在什么情况吗?”
“知道。你嗓子比早上更哑,说明你又想骂人。”
乔薇被噎了一下。
秦知夏拖着箱子往站内咖啡店走。店门口排着三个人,玻璃柜里摆着冷掉的牛角包,她没有买咖啡,只要了一杯温水和一只纸杯。店员看她把打印稿、黑笔、身份证件夹和电脑一件件摆上小圆桌,眼神有点奇怪。
她没理。
“现在开始,所有人听我说。”秦知夏把纸杯压在打印稿右上角,声音从手机里传出来,冷得很稳,“第一,不点邀请卡。第二,不转原图。第三,不在大群里讨论对方怎么知道 6800。第四,老K只查你们自己的后台投递链路。”
老K立刻答:“我在查。”
“别说正在查什么细节。”
老K闭嘴。
李凡坐在棠梨井边,膝盖底下垫着王师傅给的旧纸箱。太阳照得井沿发烫,他掌心却还是凉。那张邀请卡被拖进隔离区后,像一块金色冰片,卡在后台深处。
秦知夏问:“李凡,截图保存了吗?”
“保存了。”
“本机、云盘、聊天软件,分别在哪?”
“本机隔离目录,没上云,群里只发了打码两行。”
“好。现在把原始截图哈希值给老K,不给我原图。等我到你们面前再看原件。”
系统提示浮出。
【哈希固定不包含图像内容,可降低泄露风险。】
李凡看了一眼,忍不住说:“这次你倒不反对。”
秦知夏立刻问:“谁不反对?”
群里安静半秒。
苏晚替他补:“电子同事。”
秦知夏:“它今天要是只说这种话,可以暂时留着。”
系统没有出声。
老K那边敲了几下键盘:“哈希出来了。时间戳也留了。后台投递请求我只看我们这边服务器日志,不关联用户。”
秦知夏:“念关键信息,不发完整日志。”
老K深吸一口气:“投递不是走玩家消息,不是走客服,不是线索箱。它走的是一个废弃推广 SDK 的服务号通道。以前给渠道活动推礼包用的,三个月没关。”
苏晚脸色一沉。
“谁接的?”
“早期版本。”老K声音有点哑,“项目快死的时候接过一堆渠道包,鲲哥那边找的代理。我以为服务号只剩空壳。”
乔薇冷笑:“空壳最适合塞鬼。”
秦知夏没让她继续:“供应商名。”
老K:“星桥互动。”
又是星桥。
棠梨巷口的电动车铃响了一声,有个送外卖的小哥停在修车铺门口问路。王师傅抬手指了指巷尾,声音很粗:“往里,第三个门,别走井边,地滑。”
李凡听见“别走井边”,心里莫名一动。
很多时候,救人就是这么一句话。
别走井边。
别点陌生钥匙。
别把自己交出去。
秦知夏把黑笔帽拔开,在打印稿上写下“废弃推广 SDK / 星桥互动 / 服务号通道”。她写字很快,笔尖划纸沙沙响。
“老K,把 SDK 接入合同、后台配置记录、最近一次调用时间、停用记录都导出来。”
“合同可能在周鲲那。”
“那就让周鲲找。”
周鲲这名字一出来,群里沉了一下。
李凡看向苏晚。
苏晚已经拨电话。
周鲲接得慢,背景里有麻将声。他一开口还带着笑:“小苏啊,怎么了?又爆了?”
苏晚只说:“鲲总,三年前星桥互动推广 SDK 的合同在哪?”
麻将声停了半拍。
“你问这个干什么?”
“它现在往我们后台塞东西。”
周鲲那边彻底静了。
几秒后,他压低声音:“你们别吓我。”
苏晚没给他留台阶:“我没空吓你。合同、对接人、服务号后台权限,半小时内发给老K。找不到,就把当年经手的人拉出来。”
“小苏,你这语气——”
“鲲总。”苏晚打断他,“它塞的是李凡手机号后四位。”
周鲲不说话了。
电话那头响起椅子被踢开的声音。
“我找。”他说。
乔薇在群里发了个冷笑表情。
秦知夏没评价周鲲,只问李凡:“6800 具体有几层含义?”
李凡揉了揉眉心。
“房贷每月六千八。手机号后四位也是 6800。”
苏晚看了他一眼。
这事她以前只知道一半。房贷她知道,手机号她当然也有,可两个数字撞在一起,被补天钥写进邀请卡里,就像一把细针从生活缝隙里扎进来。
秦知夏笔尖停了一下。
“还有吗?”
李凡想说没有。
系统提示却浮出。
【6800 已被补天钥标记为宿主钥纹。】
【组成:现实债务锚点、通信尾号、道场主识别。】
李凡盯着“钥纹”两个字,背后冒了一层薄汗。
“系统说,它把 6800 做成了钥纹。”
秦知夏:“解释。”
“大概就是用一个现实数字,把我这个人和道场主身份绑在一起。”李凡说得很慢,“不是普通威胁,是定位。”
秦知夏在纸上写下“钥纹:现实身份绑定符号”。写完,她用纸杯压住那行字。
“这张纸现在在我手边。”她说,“原图还在你手里。老K有哈希。乔薇有打码留痕。四份东西互相印证,先够了。”
乔薇忍了又忍,还是问:“能发吗?”
“不能。”
“一点都不能?”
“不能。”
乔薇闭了闭眼。
“我知道。”她说,“我就是问问。”
秦知夏语气放低了一点:“你要发,可以发一句不涉及细节的话:发现疑似后台异常投递,已固定证据,提醒用户不要点补天钥邀请卡。不要说 6800,不要说星桥,不要说白名单出口。”
乔薇沉默两秒:“这句我能写。”
苏晚接:“我来给游戏内门口加同样提示。只提醒不恐吓。”
李凡看着群里一条条落下的安排,胸口那点冷终于被压住一点。
证据被按住了。
不是按在热搜上,也不是按在怒火里,而是按在秦知夏那只纸杯下。纸杯里装着温水,杯壁起了一圈潮,压得打印稿角微微卷起。
系统提示浮出。
【证据固定完成度:初步可用。】
【主道场后台侧门:待处置。】
【建议:立即封闭废弃 SDK 全量通道。】
李凡看向老K:“能关吗?”
“能。”老K说,“但有风险。它和旧渠道礼包服务绑在一起,直接关可能影响一批老版本客户端弹窗。”
苏晚皱眉:“老版本还有多少?”
“不多。几千。”
“里面有真实玩家?”
“有。”
系统提示再跳。
【牺牲少量旧客户端体验,可换取主道场安全。】
李凡手指停住。
少量。
旧客户端。
体验。
这些词摆在一起,很容易让人觉得可以丢。
可那几千个旧版本后面,不是几千个灰点。可能有人还在用旧手机,可能有人刚学会点白天问路,可能有人在医院走廊里舍不得更新流量包。
“先别全关。”李凡说。
老K愣了一下:“那它还会投。”
“先挡定向投递,给旧客户端留一条只读提示。”李凡说,“不发礼包,不发活动,不跳转,只告诉他更新到安全版本。别把门砸在人脸上。”
苏晚看他一眼,没反对。
秦知夏敲了敲纸杯:“这句可以。风险处置要留过渡。”
乔薇叹气:“你们这群人,连关门都要给人递张纸。”
苏晚说:“不然门夹到人,又是我们的事。”
李凡笑了一下。
这笑刚起来,后台隔离区里的邀请卡忽然暗了一瞬。
金钥匙下方多出一行小字。
不是弹窗。
像有人隔着门缝,在里面写了一笔。
“你们按住证据,也按不住愿。”
镇妖郎挂件猛地一热。
梦魇貉在裂缝里发出一声尖细的叫。
李凡开眼看见,那张邀请卡边缘的灰金光被一根白线牵住,线的另一头,不在星桥接口,也不在玄黄云。
它往下。
往棠梨井底去。
秦知夏听见动静:“怎么了?”
李凡盯着井沿那半个“灯”字木屑。
木屑翻了一下。
焦黑背面,露出一个被烧掉半边的旧字。
换。