3. 完美意外

早上七点半,周思危没有回家,直接去了位于港城湾仔区的网络安全署办公楼。他在洗手间用冷水冲了把脸,镜子里的人眼白布满血丝,下颌线条因为连续三十个小时的清醒而显得格外锐利。他没有换衣服,深灰色的夹克上还残留着机房的冷气味道。在走廊里遇到副署长魏海平时,对方看了他一眼,只说了一句话:“你的紧急预警我批了,专案组编制给你八个人,不够再加。”

周思危点头,推开专案组临时征用的会议室门。江一苇已经到了,正把一叠打印好的材料分摞排列在长桌上,每一份都用不同颜色的文件夹标注了风险等级。红色代表高危,黄色代表潜在风险,绿色代表目前尚无异常匹配信号。长桌上红色文件夹占了大半。

“七十个活跃匹配里,我筛掉了那些刚匹配不久、还没进入深度对话的。”江一苇用手指在桌面上划了一条虚拟的分界线,“剩下四十三人,都已经和对方建立了超过两周以上的稳定交流。其中十二人的对话内容已经进入了个人信息深度交换阶段,对方开始引导线下见面。”

“今天先接触这十二个。”周思危拿起最上面那份红色文件夹翻开。第一页贴着一张年轻女性的证件照,圆脸,眉眼温顺,戴一副银色细框眼镜,看起来不超过二十五岁。

“姚蔓,二十四岁,滨海实验小学三年级数学老师。”江一苇报出她的资料,“在近情上匹配了一个自称是纪录片导演的男性账号,两人已经聊了将近一个月,约好了这周六见面。”

周思危扫了一眼对话摘录。姚蔓在聊天里主动告诉了对方自己租住在学校附近的教师公寓,每天骑共享单车上下班,周末喜欢去海滨栈道跑步。她甚至发过一张公寓窗外的街景照片,角度正好能看见楼下便利店的招牌。“她说对方让她觉得‘被当成一个完整的人来欣赏’。”周思危合上文件夹,“原话?”

“原话。和陈茉用的措辞几乎一模一样。”江一苇的声音沉了一度。

周思危把姚蔓的文件夹夹在腋下。“走,先去见她。”

两人驱车穿过早高峰的湾仔海底隧道,对岸的滨海新区笼罩在一层薄薄的海雾里,阳光被滤成一种不健康的奶白色。滨海实验小学的保安在核实了证件后放他们进去,校园里正赶上第一节课结束,走廊上到处是穿蓝白校服的小学生,尖细的笑声和追逐的脚步声混在一起,与周思危脑子里那些黑暗的东西形成了荒诞的反差。

姚蔓在教师办公室接待了他们。她比照片上看起来更年轻,说话时习惯性地用食指推一下镜框,笑容里有种未经世故的诚恳。当周思危亮出证件并说明来意后,她的笑容凝固了。

“你们一定是搞错了。”她把手机握得很紧,“陆老师是做纪录片的,我们视频过,他长得斯斯文文的,说话很温柔。他还把以前拍的作品发给我看过,拍的是一座海岛上的灯塔守护者,特别细腻。”

周思危和江一苇交换了一个眼神。视频通话可以被深度伪造,纪录片的链接可能是精心仿制的钓鱼页面,这些技术手段对一个能入侵教育部核心数据库的人来说,不过是举手之劳。

“姚老师,你有没有想过,”周思危把语气压得很平,“为什么他能第一眼就在几十万人里匹配到你?为什么你们聊的每一件事,他都恰好有共鸣?你觉得这是缘分,可技术层面讲,你们的匹配不是概率,是指令。”

姚蔓的眼神变了一下,像是水面被投入一颗石子。但她很快摇头:“可他从来没有问我要过钱,也没提过任何奇怪的要求。我们只是聊得来。”

“他当然不会问你要钱。他要的是别的。”江一苇在旁轻声说了一句,没有继续往下讲。

周思危把陈茉的案件简述递给姚蔓,略去了所有可能引发过度恐惧的细节,只保留了最基本的事实框架——一名女教师,在近情上认识了一个完美匹配的人,两个月后死于一场看起来像意外的意外。姚蔓读完那两页纸,手开始发抖。

“可是陆老师昨天还跟我说,他订好了周六下午的咖啡馆,就在海滨栈道旁边那家叫‘渡口’的。”她的声音变得很轻。

“渡口”这个名字让周思危后背一紧。陈茉生前最后一次与神秘账号的对话里,对方提议的见面地点也是一家名字与港口有关的咖啡馆。不是同一家店,但意象出奇地一致——码头、渡口、港口,这些反复出现的水边意象绝非偶然。

“你能把你们最近的对话给我看一下吗?”周思危问。

姚蔓犹豫了几秒,最终还是把手机递了过来。聊天界面停留在今天早上,对方发了一条早安消息,附带了一张海鸥停在码头缆桩上的照片,构图干净,光线是清晨特有的橙金色,看起来温暖而治愈。下面配着一行字:“周六的渡口,风会很温柔。我等你。”

周思危往上滑动,翻到三天前的某一段对话时,停住了。对方问姚蔓住在教师公寓的几楼,姚蔓说三楼,对方又问窗户朝不朝海,她说朝东,早上阳光很好。对方回了一句:“真好,阳光应该照得到你的床头。我希望能记住你每天早上醒来看见的第一样东西是什么。”

这不是情话。这是数据搜集。

周思危把手机还给姚蔓。“从现在开始,不要回复他的任何消息。不要接他的电话。如果他问你为什么沉默,我们会给你编一套合理的解释。你周六不要去渡口。我们会派人替你赴约。”

姚蔓咬着下唇,眼眶有点泛红,但最终还是点了点头。

从滨海实验小学出来,江一苇在车里打了一通电话,让技术组锁定姚蔓那个匹配对象的实时IP。“他知道我们已经盯上他了。今天早上他给我发的那条消息里,直接点了我的名字。”周思危望着车窗外飞速后退的棕榈树,想起“暮色码头”那句“这不礼貌”,感觉像被一只冰冷的手指从后颈轻轻划了一下。

“他不但不怕我们,他是在跟我们打明牌。接下来他会更肆无忌惮。”

上午十一点,第二份红色文件夹被摊开在车后座。方旭的案子复核有了突破。江一苇调到了方旭生前的手机云端备份,发现他在死亡前一天凌晨,曾用浏览器搜索过一句话——“如何在不知情的情况下查自己手机有没有被监控”。那个搜索记录只保留了不到十二小时就被清除了,但云端备份的数据库日志里留下了痕迹。

“他死前已经察觉到不对劲了。”江一苇说,“但为什么没有报警?”

周思危把搜索记录的时间戳和近情上的聊天时间做对照。凌晨零点十四分,方旭和那个伪装成哲学爱好者的女性账号结束了一段长达两个小时的对话。对话末尾,对方突然提到了一件方旭从未在平台上公开过的事——他七年前因为学术分歧被导师从论文署名里除名的那段旧伤。方旭在回复里接连打了三个问号,问对方怎么会知道这件事。对方说,是你有一次聊天时自己提到的,你可能忘了。

凌晨零点二十一分,方旭进行了那条搜索。他在怀疑自己是不是在不知情的情况下泄露了更多信息,甚至怀疑手机被装了间谍软件。但他没有报警,也许是因为他不确定,也许是因为他仍然不愿意相信那个唯一理解他的人会是假的。

凌晨两点零三分,方旭从三十七楼坠落。

“他怀疑的不是被监控,而是自己是不是说漏了嘴。”周思危把手机搁在膝盖上,“对方故意让他陷入自我怀疑,一个人在质疑自己记忆的时候,是防御最脆弱的时候。这是教科书级别的心理操控。”

江一苇把车拐进网络安全署地下车库,熄了火但没有立即下车。他转过头看着周思危,犹豫了一下才开口:“老周,我有个话不知道该不该说。你们家苏晴,最近是不是遇到什么事了?”

周思危眉头微拧。“什么意思?”

“昨天晚上我加班查数据的时候,在近情的冗余日志里看到一个残留的注册请求,来自一个和你们家同一个路由器的IP地址,时间大概是一周前。那个请求最后没有完成注册,在验证码那一步就断了,但是——”江一苇停了一下,“注册用的手机号归属是你家的宽带账户。你是不是知道这件事?”

车内的空气忽然像被抽走了大半。周思危的手指攥了一下手机,指节泛白。苏晴从来没有跟他提过她想注册交友软件。哪怕只是好奇,哪怕只是下载了看了一眼就删了,她什么都没说。

“那个注册请求填的资料是什么?”周思危的声音听起来很平静,但江一苇听得出那种平静是被强行按住的。

“只有一个昵称栏,填了两个字。”江一苇把手机递过来,屏幕上是一行十六进制的服务器记录,转译之后赫然是两个简体汉字。

“溺鸥。”

周思危盯着这两个字,脑子里忽然闪过那个反复出现在近情对话里的意象——码头、渡口、灯塔,现在又多了一只溺水的海鸥。这不是巧合。这个昵称和凶手反复使用的水边意象属于同一套符号系统。

他想起今天凌晨苏晴发来的那条短信——“醒了吗?我做了个梦,梦到你受伤了,在梦里哭醒了。”她的语气那么温柔,那么正常,像一个妻子对加班丈夫的惯常叮嘱。可如果她在这一周内的某个深夜,独自坐在客厅里,拿起手机下载了那款软件,在昵称栏里敲下“溺鸥”两个字,然后在验证码跳出来的一瞬间惊觉不妥,仓皇退出——

她当时在想什么?她在找什么?还是什么在找她?

周思危拉开车门,下车的时候脚步比平时沉。他走了两步,回头对江一苇说:“帮我调一下那个IP地址下面最近一个月全部的网络活动记录。所有的,不要漏掉任何一个域名访问。”

“老周,你确定要查自己家?”

“我现在什么都不确定。”周思危的声音在空旷的地下车库里回荡了一下,像某种沉闷的回响。“这就是问题所在。”

电梯门合上,楼层数字一格一格跳升。周思危望着不锈钢门板上自己模糊的倒影,忽然想起昨天晚上他给苏晴发的最后一条消息——“今晚不回来了,案子紧。”她回了一个“嗯”字,没有多余的标点。

他以前从来没有仔细琢磨过那个“嗯”字背后可能藏着什么。现在他开始想了。而那个自称“教员”的人,此刻或许正冷眼旁观着这一切——不,不是或许。周思危几乎可以肯定,对方知道苏晴的昵称,知道那个IP,知道他此刻在查什么。因为“他”从来都比他早一步。

电梯到达楼层,叮的一声像某种冰冷的提醒。周思危迈出电梯门,走廊尽头的专案组会议室灯火通明,白板上已经贴满了受害者的照片和线索线条。他在心里做了一个决定:今天之内,必须锁定“教员”的物理位置。而关于苏晴和“溺鸥”,他必须自己亲自查,在任何人介入之前。

他推开会议室的门,八双眼睛齐刷刷地转向他。墙上的电子时钟跳到十一点四十七分,距离周六还有不到六十个小时。距离下一场“意外”,也许更短。

本章评论(0)

暂无评论,来抢沙发吧!

我来评论

您的邮箱地址不会被公开。 必填项已用 * 标注