里奥·范德米尔住在沙漏镇北边的一栋废弃磨坊里。那栋石砌建筑以前是用来磨玉米的,水轮早就拆了,只剩下半条干涸的引水渠绕屋而过,夏天长满荒草,冬天积满落叶。里奥的父亲是镇上邮局的代理人,靠着那份微薄的薪水把这栋没人要的磨坊买了下来,当作儿子的“实验室”——镇上的居民私下说,那是因为范德米尔先生再也受不了里奥把家里每一根电线都改装成数据线的行为了。
卢卡斯沿着磨坊侧面的石阶走上去,木门没有锁,门缝里透出蓝白色的冷光,伴随着一种低沉的嗡鸣声,像是几台散热风扇同时运转的声音。他推开门,里奥正盘腿坐在一张旧沙发上,面前是一张被三台显示器和两台主机占满的桌子,键盘旁边的快餐盒叠了至少五层。里奥听到门响,头也不回地说:“密码是‘海鸥’。”
“我没问密码。”卢卡斯关上门,靠在一堆垒起来的旧科技杂志旁边。
里奥这才转过头来,摘下一边的耳机。“你走路的声音不对。平时你落脚重,今天刻意放轻了。出事了?”
卢卡斯从口袋里掏出手机,调到那条短信的截图页面,递到里奥面前。里奥接过去看了两秒,眉头微蹙。他没有说话,把手机连上一根数据线,手指在键盘上飞快地敲了一串命令,屏幕上的字符翻滚了几页,然后他轻轻“啧”了一声。
“虚拟号,通过三个不同的跳板服务器路由,源头用了洋葱路由的匿名层。追踪不了,除非我拿到其中一个跳板的物理权限——但那些服务器分布在三个国家,其中一个在法属圭亚那。”
“法属圭亚那?”
“南美洲,法国海外省。那边有不少低成本的数据中心,监管松散,很适合做中转站。”里奥把手机拔下来还给卢卡斯,“但我能告诉你一件事:这个号码在发信之前两小时内,在沙漏镇周围的基站有过一次注册握手。不是漫游,不是路过——是主动注册,一台设备在本地连上基站,然后发送这条消息,发完立刻关机拔卡。所以发这条短信的人,当时就在镇上。”
卢卡斯把这句话在心里放了几秒。他想到酒馆里那三个朋友的脸,德雷克的笑,艾琳的沉默,里奥的专注。他不认为他们之中有人会发这种消息——但这条短信的时间点太精准了,刚好在他离开酒馆之后、走到海堤中段的时候。发信人知道他在酒馆,知道他已经拿到了U盘,甚至知道他大概会在那个时间点走出门。
“你在酒馆的时候,有没有注意到任何陌生面孔?”卢卡斯问。
里奥想了想。“莫里斯吧台那边坐着一个穿灰夹克的男人,一个人,喝了两杯淡啤酒,没点食物。我走的时候他还在,但我没看清他的脸,他帽子压得很低。德雷克跟他搭过一句话,好像是问借火。”
卢卡斯记下这个细节,然后从外套内袋里取出用纸巾包好的那几丝蓝色纤维,放在里奥的键盘旁边。“堤岸上发现的。尸体不是自己爬上来的,有人拖过它。这是拖痕旁边的残留物。”
里奥小心翼翼地用镊子夹起一段纤维,放在一台带摄像头的显微镜下面,调整焦距。显示器上放大了几百倍的画面呈现出一簇螺旋形编织结构,颜色是深蓝偏紫,边缘清晰,没有磨损。
“工业级高密度聚乙烯,防割、防水、耐盐腐蚀。”里奥说,“这种材料一般用在两种地方:特种部队的战术背包,或者近海作业的商用深水潜水服。普通渔具不会用这个级别的东西——太贵,没必要。”
“军用或者专业潜水。”卢卡斯重复了一遍,“一个穿城市运动鞋的人,被穿深水潜水服的人拖上岸。你告诉我这像是意外溺水吗?”
里奥没有回答。他关掉显微镜,身体向后靠在沙发垫上,盯着天花板发了几秒钟的呆,然后忽然坐直了。“韦恩,你刚才说那个U盘是军规级钛合金外壳。死者穿着城市便装,但带着军规级存储设备。拖他上岸的人穿着战术级防割面料。这三件事放在一起,只有一种解释:死者是某个系统里跑出来的信息携带者,而拖他上岸的人是追踪者——或者说,是回收者。”
“回收者。”
“一个专门找回丢失数据或清除知情人的角色。”里奥的声音低了一些,“我在暗网上见过类似的术语。有些人靠这个吃饭,佣金很高,但风险也高。如果沙漏镇来了一个回收者,那说明U盘里的东西足够值钱,值得让一个人从水里捞起一具尸体。”
卢卡斯沉默了很久。磨坊里只有散热风扇的嗡鸣声和远处偶尔传来的一两声犬吠。他想到了那具浮尸苍白浮肿的脸,那只攥着U盘直到僵硬也不松开的手。一个人宁愿带着秘密淹死,也不愿意放手。那里面装着的,也许不只是“值钱”两个字能概括的东西。
“里奥,”他开口,“你觉得那只U盘里,会不会有让你不想再碰电脑的东西?”
里奥回过头看他。年轻人的脸上第一次出现了一种超出年龄的审慎,像是一个在深水区边缘试探水温的人忽然发现水里有什么东西在动。“有可能。我见过很多加密数据,有些打开之后是账本,有些是地图,有些是照片。但如果是‘铸造者’留下的——”
“铸造者。”
“我去年在一个封闭论坛上看到过一个帖子,帖主自称是前东欧军火集团的技术外包人员。他说‘铸造者’不是一个人,是一个代号,被不同的军火设计师轮流使用。他们专门定制没有序列号的武器,用3D打印机和数控机床做零件,通过暗网销售。最大的客户不是黑帮,是那些不想留下入境记录的——我猜你明白我说的是谁。”里奥没有把话说完,但他和卢卡斯都知道那个词:极端组织。
卢卡斯的前妻玛丽曾经说过一句话,他说他离开警队不是因为怕死,而是因为他开始觉得所有的子弹最后都会打到同一种人身上。那些人不会穿制服,不会宣誓,但他们的枪一样会响,而且响过之后,没有任何弹道档案能追到它们。那个黑帮律师之所以能在法庭上对他竖中指,就是因为那把枪从来没有被找到——现场只有弹头和壳,而弹头上的膛线痕迹无法匹配任何注册过的枪管。他后来听说,那种枪管是在一个私人车库里的CNC机床上铣出来的,设计图来自暗网,材料是网购的航空铝合金。和“铸造者”这个词对得上。
“如果这U盘里有蓝图,”卢卡斯说,“或者有客户的名单——”
“那它就不是一笔横财。”里奥打断他,“它是一个引线。谁碰它,谁就被点燃。”
磨坊外面的风忽然大了起来,吹得窗户上的旧铁栓嘎嘎作响。卢卡斯站起身,走到窗边,透过蒙尘的玻璃看向外面的小路。月色还算明亮,磨坊前那截干涸的水渠在月光下泛着灰白的光,两侧的荒草被风吹得伏倒又弹起。没有人在那里。但他总觉得有什么不对——某种被他忽略的细节,像鱼线一样轻轻扯着他的后颈。
他转过身时,里奥已经在键盘上敲了一串命令,其中一台显示器的屏幕从命令行切换到了一个黑色背景的监控界面。画面分成四格,分别显示着磨坊前后左右的实时图像——里奥在房子周围布了六个夜视摄像头,外行人看不出。左上角的画面显示正门方向,空无一人;右上角的画面显示水渠方向,只有草和月光;左下角的画面显示侧面的工具棚,棚门半开着。
里奥“嗯”了一声。“工具棚的门我没开过。”
卢卡斯走到屏幕前放大那个画面。工具棚的木门确实敞着一道缝隙,宽度足以让一个人侧身挤进去。里奥切换到前一天的录像,快进回放了四个小时,在晚上九点二十三分时,画面里出现了一个模糊的身影——个子中等,穿深色连帽外套,动作很快地闪进了工具棚,五分钟后出来,手里没有任何东西,然后从磨坊后方的树篱方向消失了。画面分辨率不够,看不清脸。
“那个时间点,”里奥说,“我在酒馆里和你在一起。”
卢卡斯把画面定格在那个身影消失的最后一帧。“他进去五分钟,出来空手。但他可能留下了什么东西,或者取走了什么东西。”
里奥抓起一支手电筒,卢卡斯跟在他身后,两人推开磨坊的后门,沿着砾石小径走到工具棚前。里奥伸手拉开门,里面堆放着旧油漆桶、生锈的园艺工具和几袋水泥。卢卡斯用手电扫了一圈,地面上有一双脚印——鞋底纹路是整齐的V字形,不是里奥的普通胶鞋。脚印在水泥袋旁边停留了一下,然后原路退出。水泥袋的封口被割开了一道小口,几粒灰色的粉末洒在地上。
卢卡斯蹲下来,用手指捻了一点粉末,放到鼻尖闻了一下。没有水泥的气味,反而有一种淡淡的化学苦味,像某种无机溶剂。他把粉末装进一个小塑料袋里,递给里奥。“明天下午之前,帮我看一下这是什么成分。别用仪器联网。”
里奥点头。两人回到磨坊里,卢卡斯把那扇后门重新锁好,又检查了一遍前门。他站在门廊下,看了一眼手机上的时间——凌晨一点四十二分。他今晚回不了船坞了,至少得等到天亮。
“我睡你沙发,”他说,“你睡你的。”
里奥没反对,从柜子里扔出一条毯子。卢卡斯躺下去的时候,盯着天花板上的一道裂缝,脑子里翻来覆去的是那条短信、蓝色纤维、工具棚里的化学粉末、以及里奥最后说的那句话——“谁碰它,谁就被点燃。”他闭上眼睛之前,忽然想起一件事:他在酒馆里把U盘推给里奥的时候,德雷克凑近想拿,被他按住了。德雷克的手指碰到过那个防水袋的外沿。而那条短信,是在他离开酒馆之后才收到的。
如果发信人看到了酒馆里的一切,那么发信人知道他们四个人都在场。那短信是发给他的,还是通过他发给所有人一个信号——你们已经被看到了。
他侧过身,面朝沙发靠背,呼吸均匀地假装睡去,但耳朵一直竖着,听着磨坊外面的每一阵风声和每一声虫鸣。直到凌晨三点十七分,里奥的其中一台显示器忽然亮了一下,屏幕上弹出一行自动生成的日志提示:
“检测到外部端口扫描。来源IP:10.0.0.XXX(本地回环地址伪装)。频次:每秒四次。已自动阻断。”
卢卡斯坐起来。里奥已经在键盘前了,手指悬在Enter键上,没有敲下去。“有人想从镇上的某个节点摸进来。不是远程黑客,是物理接入——有人在用本地的网络接口扫描我。”
“能反追踪吗?”
“能,但如果他用的设备是跳板,我找到的只是一个空壳。”里奥看着屏幕上的阻断日志,忽然顿了顿,“但这个扫描的协议格式……我见过。和那只U盘外壳上的激光蚀刻序列号是同一套编码规则。韦恩,扫描我的人,和制造那只U盘的人,用的是同一套系统。”
卢卡斯从沙发上站起来,走到窗边,拉开一条窗帘缝隙。磨坊外的月光依然清冷,水渠里的荒草依然静立。但他知道,那只U盘像一个被打开的蜂巢,而蜜蜂已经开始倾巢而出了。
“明天下午,”他低声说,“不等了。现在就弄。”


暂无评论,来抢沙发吧!