4. 十三秒指令

卡纳克普尔市政调度中心位于老城区一栋殖民时期的石材建筑里,外墙爬满了爬山虎,内部却塞满了二十一世纪的电子设备。德赛在这栋楼的地下室里工作,窗户只有巴掌大,正对着街道上行人匆匆的脚踝。

阿迪亚推门进去时,德赛正对着一面曲面显示器,屏幕上三十二个窗口同时运行着不同的分析程序。他的头发比三天前更乱,但眼睛亮得惊人。

“你上次给我那个U盘里的东西,我花了两天时间重建了时间线。不是踩踏的时间线——是那十三秒指令的来龙去脉。”德赛敲了一下键盘,一个新的窗口弹出来,上面是一串命令行记录。

“调度中心的主服务器日志显示,事發当晚二十三点四十七分零三秒,一条指令从内网的一个合法终端发出,要求供水站三号泵组执行紧急停机。指令格式完全符合邦政府水电部门的操作规范,数字签名验证通过,权限等级是最高级。十三秒后泵组停转。然后这条指令就从日志里消失了,被抹得干干净净。”

“既然被抹掉了,你是怎么找到的?”

德赛嘴角微微上扬。技术人员在自己擅长的领域被质疑时,总是会有这种表情。

“因为物理规律。调度中心的SCADA系统使用的是环形数据库,新数据覆盖旧数据。覆盖的周期是七天。也就是说,在事发后的第七天之前,那条指令的磁残留还在硬盘的某个扇区里——逻辑上被删除了,但磁头没有真正覆写过那个位置。我用取证软件做了全盘扫描,在第三十七个扇区找到了原始数据残留。”

阿迪亚在笔记本上写下“环形数据库”和“第三十七扇区”。

“但是数字签名验证通过,权限等级最高——这意味着要么有人在调度中心内部操作,要么有人拿到了最高权限的密钥。”

“都不是。”德赛顿了顿,切换到一个新的窗口,显示出一行又一行的十六进制数据,“这才是真正奇怪的地方。这条指令的数字签名是真实的,但它的生成时间戳显示的是事发前十五分钟。也就是说,这条签名是在十五分钟前被合法生成的,然后被复制粘贴到了非法指令上。这不是权限窃取——这是签名劫持。”

“能做到这一点需要什么?”

“需要知道调度中心的根证书私钥。而根证书私钥存储在一个物理隔离的硬件加密机里,任何人想要访问,必须同时提供两张智能卡和两组生物识别信息,在三名值班人员的监督下完成。而这三个值班人员当晚——全都在岗,全都通过了测谎。”

地下室里的安静持续了几秒。

“所以结论是什么?”阿迪亚问。

“结论是我遇到了职业生涯中最难对付的东西。”德赛说这话时脸上没有任何恐惧,只有一种奇怪的热情,“有人在十五分钟的时间窗口内,从一台内网合法终端获取了合法签名,然后把这枚签名嫁接到了一条恶意指令上。整个过程没有触发任何报警,没有留下任何操作痕迹,仿佛操作者从一开始就知道每一个防护节点在哪儿、怎么绕过去。”

德赛往前探了探身子,压低声音,像是在分享一个只有少数人才能理解的秘密。

“阿迪亚,这不是黑客。黑客在系统外面,找漏洞钻进去。这个人在系统里面——不是物理意义上,而是逻辑意义上。他可能是三年前离职的某个工程师,七年前为系统写过底层代码的某个外包人员,甚至是当年设计这套SCADA系统的顾问团队里的某个成员。他不必‘黑’进系统,因为系统本来就是按他的方式建的。”

阿迪亚感到自己手里的笔记本忽然变得更加烫手。

“三年前离职的工程师,七年前的外包人员,设计团队的老顾问——这些人的名单能拿到吗?”

“我已经拉了一份。”德赛又切换了一个窗口,上面是一份电子表格,密密麻麻列着名字和日期,“邦政府水电部门和神庙基金会近十年所有参与过SCADA系统建设、维护、升级的人员。总计三百一十四人。按你的标准——离职的、外包的、现在不在职的,筛出来还剩八十六人。”

“八十六个。”

“对。但有一个名字我帮你标红了。”

表格滚动到某一行停住。一个名字被高亮显示为红色。

萨米尔·帕特尔。职务:高级自动化工程师。状态:十年前离职。备注:神庙东区扩建工程电力系统首席设计师。其他信息:无。

“为什么标红他?”

“因为他的离职时间。”德赛点了点屏幕上的日期,“十年前,神庙东区扩建工程在施工中发生了一起事故。官方记录是脚手架倒塌,三人受伤,无人死亡。但我在翻旧档案的时候找到了一份内部备忘录——事故实际造成一名女性工人当场死亡,身份是工地临时工,名字叫卡薇塔。萨米尔·帕特尔的妻子。”

德赛又敲了几下键盘,调出一份扫描件。那是一份手写的事故报告草稿,边缘有烧过的痕迹,字迹潦草而急促。报告的最后一行写着:“事故原因:地基沉降导致配电柜倾覆。责任认定:项目管理方未尽到现场监督职责,但鉴于神庙基金会系宗教慈善机构,建议不予追究。”

“不予追究。”阿迪亚把这两个词咬在牙齿之间。

“当时的项目主管现在是邦政府基建部的副部长。基金会法务负责人已经退休。其他相关人员基本都离开了原来的岗位。这起事故就这样被埋了十年——直到三天前。”

“萨米尔本人呢?”

“这是最诡异的地方。”德赛往后一靠,双手交叉放在肚子上,“事故发生后第三个月,萨米尔提交了辞呈,理由是健康原因。之后这个人就从所有公开记录里消失了。没有银行交易,没有纳税记录,没有出境记录,没有死亡登记。他像一个影子一样溶进了暗处。十年。”

“地址呢?”

“最后一个已知地址是神庙东区附近的职工宿舍,已经被拆除,现在那位置是朝圣停车场。”

阿迪亚合上笔记本,站起身,走到那扇巴掌大的窗户前,透过铁栅栏看着外面街道上行人的脚踝来来往往。他忽然想起拉维画的蛇道地图上,在最深处标注的那个“旧闸室”——那个位置在地面上,正好对应神庙东区的朝圣停车场。

“他还在这里。”他说,声音像是从很远的地方传回来,“他没有消失。他钻进地下去了。”

德赛摘下眼镜擦了擦,重新戴上,看着阿迪亚的背影。

“你打算怎么找一个主动消失十年的人?”

“不找他。”阿迪亚转过身,眼神里有某种让德赛感到不安的东西,“让他来找我。”

“什么意思?”

阿迪亚拿起自己的笔记本,翻到最近写的几页,递给德赛看。纸上密密麻麻写着“遗忘之境”的入口协议、积分机制、那个十六进制ID的每一个回复内容,以及一句话——

“我们需要一个他能看得上的人。”

德赛看完之后沉默了很长时间。然后他把笔记本还给阿迪亚,用一种技术人员特有的、不带感情的语调说:“你要知道,如果你要在那个论坛上伪装成一个够资格进入核心区的人,你就必须提供真实的攻击方案。必须真的懂工控系统,真的会写攻击代码,真的能让他们相信你是同类。一旦你跨过那条线——哪怕是为了追捕——你就已经在某种程度上变成了他们。”

“我知道。”

阿迪亚把笔记本揣进怀里,推开门,走进走廊尽头那片模糊的日光中。他想起拉维在暗渠里说过的话——这个人想让我们来,从一开始就想要。

那么,是该去赴约了。

本章评论(0)

暂无评论,来抢沙发吧!

我来评论

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