电信管理局大楼在晨光中像一座巨大的灰色墓碑,倒映在克拉斯特商业区玻璃幕墙的海洋里。米拉将面包车停在大楼南侧一条小巷的卸货区,熄了火,但没有拔钥匙。两人坐在车里,透过贴了防晒膜的挡风玻璃观察大楼的正门。正是上班时间,穿着正装的员工陆续刷卡进入,旋转门转动的节奏像一座钟表,精确而不知疲倦。
“生物识别门禁是德国产,型号认出来了,虹膜加指纹双模。”米拉一边调试便携式频谱分析仪一边说,“但地下一层的机房用的是独立系统,不走大楼的中央门禁。这栋楼十年前翻修过,翻修时电信管理局要求在负一层保留旧有的独立供电和独立安保,理由是防止全国通信枢纽被单一故障点瘫痪。也就是说,地面上十五层和地下一层是两套完全不同的安全体系。”
“地下一层的入口在哪里?”莉迪亚问。
“货梯。大楼西侧有一部专用的货运电梯,直通负一层机房。电梯本身没有门禁,但电梯到达负一层后,电梯门打开面对的是一道独立的安全闸门。那道闸门用的才是生物识别。”米拉将频谱分析仪的读数调出来,“闸门的生物识别控制器型号是西门子的旧款,通过光纤直连负一层内部的独立服务器,不与外部网络通信。要骗过它,必须在光纤链路上做文章。”
莉迪亚从背包里拿出那套自己改装过的渗透测试工具箱,检查了探针和模拟器的接口状态。上次在启明星学院数据中心用过之后,探针有几根弯了,她在仓库里用镊子重新矫正了一遍。工具还可以用,但留给她的容错空间越来越小。光纤拦截不同于射频克隆,需要截获光信号、转换为电信号、注入伪造数据包、再还原为光信号发出去,整个过程延迟必须控制在毫秒级以内,任何一个环节的误差超过阈值都会触发警报。
“我需要进到负一层的光纤配线箱。”莉迪亚说,“配线箱通常在机房外面,不需要通过闸门。但它可能在大楼保安的巡逻路线上。”
米拉已经提前拿到了电信管理局大楼的消防疏散图。她将图纸放大,手指沿着地下一层的走廊滑动:“配线箱在这条走廊的尽头,消防楼梯的正对面。保安每隔四十五分钟巡逻一次,走完整条负一层走廊大约需要三分钟。你有四十二分钟的窗口。”
“前提是我能进入大楼。”
米拉从自己的背包里掏出一个透明文件袋,里面装着一张塑封的工作证,挂绳上印着诺瓦利亚电信管理局的标志和“技术维护——外部承包商”的字样。“今天早上六点,电信管理局的服务器温控系统出现了一次计划内的维护窗口。外包给了一家本地的暖通公司。那家公司有一个叫安卡·波佩斯库的女技术员,昨晚在酒吧喝多了,现在正躺在家里醒酒。她的工作证和派工单在她包里,包在她车上,车在她公寓楼下。我凌晨四点去取的。”
莉迪亚接过工作证,证件上的照片是一张诺瓦利亚中年女性的面孔,深色头发,圆脸,和她自己的长相差距不小。但米拉同时递过来一顶深棕色假发、一副粗框眼镜和一支颜色偏深的粉底液。“别照镜子太久。保安看工作证只看照片芯片,不怎么看脸。暖通公司的派工单上写了两个人,一个安卡·波佩斯库,一个她的助手——所以我也做了你助手的证件。两人一起进去,更不惹人怀疑。”
莉迪亚换好伪装,戴上假发和眼镜,用粉底液调整了肤色,然后套上一件从后备箱翻出来的蓝色工装外套。她从车窗玻璃里看了一眼自己的倒影,几乎认不出来。那张脸不属于旧金山信息安全顾问莉迪亚·萨特,属于一个在克拉斯特打工、每天面对噪音和灰尘、从不被人注意的中年维修女工。
“走吧。”她说。
两人以暖通公司维修员身份通过了大楼正门的访客登记处。保安核对工作证芯片时,莉迪亚保持着平稳的呼吸,手里拎着工具箱,表情倦怠而漫不经心——那种每天进出无数栋政府大楼、早已对这份工作失去任何热情的维修工的表情。保安抬头看了她一眼,目光在她脸上停留了不到一秒,然后挥手放行。
她们没有去暖通设备间。米拉在三楼的走廊里迅速辨认了方向,带她拐进一条标注着“仅供员工”的侧廊,推开一扇不起眼的灰色防火门。门后就是消防楼梯。两人沿着楼梯向下走,脚步声在混凝土墙壁之间回荡。负一层的楼梯间灯光昏暗,墙壁上的绿色应急灯发出惨淡的光,照得走廊像一条通往某座地下墓穴的通道。
光纤配线箱在走廊尽头,一个半嵌在墙壁里的金属柜子,柜门上的锁是机械式的。莉迪亚只用了一根撬片和一张薄金属片就打开了它。配线箱内部密密麻麻排列着几十条光纤跳线,每条都贴着标签,标注着连接的终端设备名称。她用了将近十分钟才找到那根连接安全闸门生物识别控制器与负一层独立服务器的单模光纤。
“找到了。”她低声说。
米拉在走廊拐角处放风,手里握着一个便携式对讲机,调到电信管理局内部安保频道。耳机里传来保安例行通讯的简短对话——一切正常,无人报警。
莉迪亚将光纤钳接入跳线,光信号先经过她的模拟器,再被还原输出。模拟器启动后,频谱分析仪上跳出一串高速滚动的十六进制数据流。那是生物识别控制器发给服务器的验证请求——工作正常,每秒几十条请求流过光纤,大部分是闸门状态轮询,夹杂着每一次刷卡或按指纹时产生的身份验证数据包。
她需要一条真实的身份验证数据包作为伪造模板。但闸门现在没有人在使用,数据流里只有轮询包,没有验证包。她必须等。
等了将近二十分钟。米拉在耳机里低声汇报,保安刚完成一次巡逻,下一次还有四十五分钟。时间在缓慢流逝,莉迪亚能感觉到自己的心跳在胸腔里越敲越重。
然后,数据流里出现了一条完整的验证包。有人在地面某处刷卡按指纹,身份信息正通过这台独立服务器的另一个终端接口发过来。莉迪亚迅速截获数据包,解析出结构——用户ID、指纹特征码哈希值、虹膜特征码哈希值、时间戳、验证级别。她将这些字段导入模拟器的合成模块,将用户ID替换为机房管理员的ID,将指纹和虹膜哈希值替换为之前从黑市数据库里买来的电信管理局前雇员的生物特征数据——那名前雇员三年前离职,但他的管理员权限从未被注销。
一切就绪。她撤除光纤钳,将配线箱恢复原状,然后和米拉一起走到负一层安全闸门前。闸门是不锈钢材质的,门框上嵌着指纹扫描仪和虹膜摄像头,红灯常亮。
莉迪亚按下指纹扫描仪。扫描仪发出蓝光,开始读取。光纤拦截模拟器夹在墙上的一个接线盒里,截获蓝光读取的数据,替换为预设的伪造哈希值,然后发回服务器。一秒。两秒。虹膜摄像头启动,扫描她的右眼。模拟器再次介入,再次替换。三秒。
红灯灭了。绿灯亮起。
闸门后面的电动锁发出沉重的咔嗒声,不锈钢门缓缓向内弹开。门的另一边是一条短走廊,走廊尽头是一扇没有任何标识的灰色金属门。但莉迪亚不需要进去——电信管理局总服务器的JTAG接口不在机房里,而是独立暴露在走廊左侧的一个检修面板上。这是米拉之前从维护手册里挖出来的信息:诺瓦利亚电信管理局当初采购这批芬兰服务器时,为了检修方便,要求厂商将JTAG接口外置到检修面板上。厂商照做了,然后告诉客户这个设计存在安全风险。电信管理局的回复是:机房有生物识别闸门保护,不需要担心。
那个检修面板就在莉迪亚右手边,面板上只有两颗十字螺丝。
米拉卸下面板。JTAG接口是一排十四个金属触点,排列在一块绿色电路板的边缘。她用便携式硬件调试器连接触点,接通电源,屏幕开始滚动显示底层固件的启动日志。启动日志的最底部,系统以明文形式输出了一长串十六进制字符——主密钥的管理员密码哈希值。
“拿到了。”米拉说。
莉迪亚将哈希值复制进加密硬盘。同一时间,她注意到JTAG接口的启动日志里还有另一段信息——一段不属于本次读取的记录。日志显示,有人在她之前访问过这台服务器的JTAG接口,时间是一个月前。访问者的操作是擦除了一部分日志记录,然后写入了某个新的系统模块。模块的名称只有三个字母,但莉迪亚不认识那个词。
她将这段异常的日志记录也复制了下来。
两人原路撤离时,负一层的走廊依然寂静无人。消防楼梯、侧廊、三楼、正门大厅。退出来时旋转门照常转动,保安照常坐在柜台后面看手机。莉迪亚走出大楼的瞬间,克拉斯特上午的阳光刺得她眯起了眼睛。她已经有两天没有看到阳光了。
回到面包车上,米拉发动引擎,将车缓慢驶出小巷,融入市中心的日常车流。莉迪亚靠在椅背上,将加密硬盘捧在手里,像捧着一颗刚挖出来的地雷。主密钥已经到手了。但戴维和埃利奥特那边的科斯塔港行动还没有传来任何消息。
她拿起卫星电话,拨了戴维的加密信道。电话响了很久,无人接听。
她又拨了一次。还是无人接听。
米拉从驾驶座上瞥了她一眼,没有说话,但车速悄然提高了。面包车驶出市中心,转入通往南方的沿海公路入口。导航显示科斯塔港距离此地三百八十公里,全程最快需要四个半小时。
莉迪亚握着沉默的卫星电话,看着窗外飞速后退的海岸线。黑海在正午的阳光下呈现出一片深沉的钢蓝色,平静得像是暴风雨前最后的伪装。她不知道戴维和埃利奥特在科斯塔港遇到了什么。她不知道马雷克在工业废墟里是否还在奔跑。她不知道那条异常的JTAG日志意味着什么。但她知道一件事。
有人在她之前碰过那台服务器。那个人不是政府,也不是基金会,否则日志会被完全擦除,而不是只擦除了一部分。那个人留下了痕迹,像故意留下了一扇半开的窗户。
而这个国家里藏着的东西,比她看到的每一份档案都要更深。


暂无评论,来抢沙发吧!