17. 教育学杀人

苏晴把顾敏芝交给她的那个牛皮纸信封摊开在茶几上,里面的材料被她按照时间顺序重新排列过——聊天记录截图、比对表格、以及那份让她毛骨悚然的“踩点”对话。周思危坐在她对面,面前摆着三台笔记本电脑,屏幕上分别跑着三个不同的数据分析进程。客厅里只有落地灯亮着,光晕圈缩在沙发区一小片范围内,其余的空间都沉在暗处,像是整个房间都在朝这个亮着灯的角落倾斜。

“顾敏芝被问到的问题是——‘保安每天几点换班’。方旭在聊天里被问过‘你公寓楼下门禁的备用钥匙放在物业哪个抽屉’。陈茉被问过‘你家浴室窗户晚上会不会留缝通风’。”周思危把这三句话打在同一个文档里,排成三行,像三颗被串在同一条铁丝上的珠子,“这些问题的共同特征是什么?”

苏晴盯着那三行字看了片刻,然后从她自己的笔记本里翻出一页——那是她在安全屋里整理的许维远邮件术语表。她用指尖点着自己曾经圈出来的一个词。“‘物理侵入窗口’。许维远教案里用过这个措辞。他说每一个受害者的日常行为中都有一些固定不变的节点,这些节点就是——‘物理侵入窗口’。”

“保安换班时间、门禁钥匙位置、浴室窗户通风习惯。”周思危把这些词一个一个念出来,声音在安静的客厅里显得格外清晰,“这些东西无法从教育部的数据库里查到。教育部存的是职称、考核、心理测评——不会存门禁钥匙在物业哪个抽屉。所以他一定有另一个数据源。”

“我们之前讨论过这个。你说间谍软件投放能力可能不是许维远一个人做的。渡兰把名单交给了一个能替她执行技术入侵的人。”苏晴把顾敏芝的比对表格推到茶几中央,“顾敏芝的数据证实了这一点。她那些被对方掌握的隐私信息里,有一部分连她前夫都不知道。比如她每天早上六点二十分准时出门,因为她要在早班老师到岗前先到幼儿园开窗通风。这个习惯她从来没有在任何社交平台上提过,但她手机上的天气APP每天会在六点二十分给她推送一条‘今日天气’——定位精度到她的居住小区。如果她的手机被植入了间谍软件,那么获取她的起床时间只需要读取天气APP的推送日志。”

“问题就在这里。”周思危把其中一台笔记本转过来对着苏晴,“江一苇在许维远的U盘里找到了间谍软件的源代码。代码写得很漂亮,模块化结构,注释清晰,版本管理用的是Git。但开发者注释的写作风格和许维远的学术论文风格对不上。许维远写注释用的是教育学论文的语言习惯——长从句、被动语态、频繁使用‘应该指出的是’这种学术套话。但这些代码的注释写得很短、很直接,全是祈使句——‘从这里切入’‘别动这个端口’‘绕过身份验证后再激活’。这不是教育学者的语言。这是IT运维人员的语言。”

苏晴把屏幕拉近,对比了两段文字——左边是许维远教案里的注释,右边是间谍软件代码里的注释。两段文字放在一起,任何人都能一眼看出差异。许维远的文字像教科书,代码注释的文字像内部操作手册。

“许维远不会写这种注释。所以间谍软件不是他写的。”苏晴抬起头,眼神里有一种从层层迷雾中逐渐聚焦的锐利。

“而且他能拿到教师信息系统的管理员账号密码,这件事本身就很不合理。一个在师大被开除的心理学讲师,怎么拿到的?他当年参与的那套心理测评问卷只是系统的一个前端功能模块,他没有权限接触到数据库的访问凭证。除非有人把凭证给了他。”周思危把屏幕切换到另一组数据——那是江一苇从教育部数据库的访问日志里提取出来的、五年前许维远第一次接入服务器时使用的管理员账号信息。账号的创建时间比他第一次接入早了两年,创建者的注册信息显示为“系统维护工程师”,用户名为“sys_maitenance_03”。

这个拼写错误——maitenance,正确的拼写应该是maintenance——在日志里被重复了无数次,从来没有被纠正过。周思危用搜索引擎在纽斯特里亚的所有技术论坛和代码共享平台上检索了这个错误的拼写。结果在第三天凌晨找到了一个匹配项。一个匿名账号在三年前于某个网络安全技术论坛上回答过一个关于数据库权限管理的问题,回答末尾留下了一段示例代码,代码的注释里赫然出现了同一个拼写错误——“maitenance”。

顺着这条线索,江一苇追踪到了匿名账号的注册邮箱——一个被注销的教育系统内部邮箱,注销前归属于港城教育局信息技术科。而信息技术科过去十年的员工名单里,有一个人在许维远被开除前一年从师大调到了教育局,此人在师大时的工作岗位,恰好是教务系统后台维护。

名字叫方铎。

周思危把这个名字写在便签纸上,推到苏晴面前。“方铎调去教育局之后,教育部数据库经历了一次系统升级,升级项目的外包供应商对接人就是他。在升级期间,他拥有全部数据库的临时完全访问权。这个窗口期持续了整整半年。他在那半年里创建了至少三个后门管理员账号,其中一个就是‘sys_maitenance_03’。他把它给了许维远。”

“他为什么要把账号给许维远?”苏晴皱起眉头,“他们是什么关系?”

“方铎有个侄子,叫方旭。”周思危把这句话说出口的时候,客厅里的空气像是被什么东西抽了一下,落地灯的灯光似乎都暗了一瞬。

苏晴愣住了。方旭。那个从三十七楼坠亡的理工学院讲师。那个在近情上被一个伪装成哲学爱好者的女性账号精准刺穿了内心软肋的男人。他的叔叔,是给许维远提供了数据库后门钥匙的人。这意味着方旭从一开始就不是被随机选中的。他的名字被放进那份名单,不是因为渡兰在五十多所学校的人事记录里随机筛选到了他——而是因为有人特意把他放了进去。

“方铎把他侄子的名字给了许维远。”苏晴的声音压得很低,“一个叔叔,亲手把自己的侄子推上了一个连环杀手的实验台。为什么?”

“这就是我需要你在今晚帮我想通的问题。”周思危站起来,在客厅里踱了两步。他的影子在墙上拖得很长,随着他移动的方向忽大忽小,“方铎在教育局信息技术科工作了十年,负责教育系统数据库的安全维护。他亲手创建了后门账号,把教师们的隐私数据一扇一扇地打开。他不可能不知道自己提供的数据被用来做了什么——许维远那些‘情感补丁’的理论文章在匿名学术论坛上挂了三年,方铎那种技术背景的人,看一眼就知道这套理论的实操版本会是什么后果。但他没有阻止。他甚至把自己侄子都交出去了。”

“因为他自己也是这个实验的样本之一。”苏晴忽然说。

周思危停下脚步,转过头看她。苏晴的眉头仍然皱着,但皱的方式变了——不再是困惑,而是一种正在逼近某个真相的专注。她翻出自己笔记本里的一页,上面是她之前标注过的许维远术语频率表。

“许维远的教案里最频繁出现的词是什么?‘结构性忽视’‘制度性排斥’‘系统边缘化’。这些词全是渡兰的社会学术语,许维远从她那里学来的。你再看方铎——他在师大做系统维护的时候是什么地位?IT外包,不是正式编制。他调到教育局之后仍然是外包身份,干了十年没有转正。整个教育系统依赖他维护核心数据安全,但系统从来不承认他是自己的一部分。你觉得一个被系统边缘化了十年的人,在第一次拿到数据库完全访问权的时候,他会做什么?”

“他会把那些在系统里身居高位的、被系统认可的人——那些正式编制的教师、校长、行政官员——全部变成可以被窥探的对象。”周思危重新坐下来,手指在键盘上快速地敲击,调出了方铎在教育局十年间的内部评估记录。评估栏里每一年的评语都差不多——“工作负责、技术过硬、遵守纪律”。但每年的晋升推荐栏里,同样都打着同一个批注——“建议维持现有岗位。非编内人员不具备晋升资格。”

十年的同一个批注。十年。一个人把教育系统的核心数据库维护了十年,没有任何安全事件,没有任何技术失误,但每一年都被告知——“你不属于这里。”

“这就是为什么他把方旭也交出去了。”周思危靠在沙发靠背上,声音里有一种彻骨的冷,“方旭是在理工学院教书的正式讲师。方旭是那个被系统认可的人。方铎把他侄子推给许维远,不是因为他不爱方旭——恰恰相反,正是因为他太清楚许维远的筛选标准了。方旭被学术圈边缘化了,方旭的婚姻里被妻子长期忽视,方旭符合清单上的所有特征。他给方旭的,也许不是一份杀人的名单——也许他在自己扭曲的逻辑里,是在把方旭也拉到他自己站着的那个‘被系统抛弃’的位置上来。要么一起被救,要么一起被毁。”

苏晴沉默了很长时间。窗外海风在楼群之间穿梭,发出低沉的呜咽声,像一个被拉长的音符找不到可以落脚的节拍。她想起了顾敏芝今晚说的那句话——“我以为是我自己有问题。”被系统抛弃的人最可怕的不是愤怒,而是内疚。他们会以为被抛弃是自己的错。陈茉以为是自己不够好才被前夫忽视,方旭以为是自己不够优秀才被学术圈边缘化,方铎以为是自己不够资格才十年转不了正——而当他们发现彼此的时候,他们不是抱团取暖,而是互相印证。印证了那个最致命的信念:你看,我们这样的人就是注定被忽视的。

“所以方铎不是渡口。”苏晴开口了,声音很轻但很确定,“渡兰也不是。许维远也不是。这三个人都在做同一件事——他们在用不同的方式执行一套逻辑,而这套逻辑的源头不在任何一个人身上。它是一个系统运作了几十年之后,自然生产出来的废料。”

“渡口不是一个具体的人。”周思危慢慢地说出了这句话,像是在用舌尖品尝每一个字的重量,“渡口是一个位置。任何被系统排挤到边缘的人,只要掌握了足够的工具和数据,就可以站在那个位置上。渡兰站在过那里,许维远站在过那里,方铎一直站在那个位置上——他可能十年前就站在了。而他们三个人之间从来不是上下级关系,他们是在互相验证、互相提供资源、互相把对方往更深的地方推。”

书房里的打印机忽然自动启动了。不是有人在打印东西,而是打印机在进行开机自检——之前江一苇远程调试过这台打印机,现在他在网络安全署那头重新连接了设备,发送了一封加密消息过来。消息内容很短,但每一个字都像是被敲出来之前反复掂量过的:

“方铎今早办理了离职手续。他在离职申请表上填的离岗理由是‘个人原因’。但他最后一条操作记录的时间戳是昨天晚上凌晨三点零九分——他在自己办公室的终端上执行了一次数据库全量导出,导出的内容与许维远第一次接入时获得的教师信息字段完全一致。他手里现在有一份完整的、最新的、覆盖全港城在职教师的隐私数据库。”

周思危读完消息,把笔记本电脑合上,站起来拿起外套。苏晴没有问他去哪,只是站起来走到他面前,帮他把外套拉链拉到领口——这个动作在过去的四年里她做过无数次,但这一次她的手指在拉到最上面的时候停了一下,隔着衣领轻轻按在他的锁骨上。

“方铎不会再找下一个许维远。他会自己来。”她说。

“所以我在他启动新课程之前找到他。”周思危握住她的手腕,用力握了一下,“你今晚做的事,已经让两个名字从名单上消失了。接下来是我的部分。”

本章评论(0)

暂无评论,来抢沙发吧!

我来评论

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