雨滴顺着铁皮屋顶的裂缝滑落,砸在发电机外壳上发出闷响。宋晨光把最后一根数据线插进读卡器,屏幕亮起时,波形图开始缓慢爬升。她没抬头,手指直接点开音频文件,“再放一遍。”
宋晚妹蹲在角落,指甲内侧的芯片刚取出来,贴在读取器接口上还有些发烫。她盯着笔记本右下角的时间,呼吸不自觉地跟着进度条同步。这是她们三个第一次凑在同一间屋子——废弃工厂的库房,墙角堆着生锈的传送带,地上散落着几块破布和一只翻倒的塑料桶。
“这次能行吗?”她低声问。
“能。”宋晨光说,“只要声音对得上。”
录音重新开始播放。电流杂音像针一样刺耳,夹杂着雨声和模糊的低语。这段音频来自昨夜那通电话,对方用变声器压着嗓音,可每一句话都精准戳中她们最怕的事:大姐被起诉、二姐停职、三妹复吸。现在她们知道,那不是恐吓,是试探。
宋晨光拖动进度条,找到最清晰的一段。同时,宋晚妹那边的芯片也完成了数据加载。两段音频并列显示在屏幕上,一段来自饭馆手机,一段来自玩具熊内部录音模块。后者时间更长,背景干扰少。
“重叠分析。”她敲下回车。
系统运行了十几秒,画面闪了一下,跳出匹配提示:“声源比对完成,相似度98.7%。”下方标注身份信息:张宇。
宋晚妹猛地抬头,“是他?”
“不是他本人说话,”宋晨光盯着结果,“是有人拿他的原始语音做模板,合成出来的。”
“所以……他还活着?”宋晚妹声音轻得几乎听不见。
没人回答。远处传来一声闷雷,窗外的雨又大了些。
宋晨曦一直靠在门边,手腕搭在口袋上,指尖能感觉到体内追踪器的微弱震动。她刚才已经看过信号轨迹——坐标漂移到海上,渔船定位,航向东南。太整齐了,每十二分钟刷新一次,路径重复率百分之百。
“假的。”她说。
另外两人看过来。
“真正的追踪信号不会这么规律。”她掏出备用手机,调出后台日志截图,“敌人在模拟数据流,想让我们以为张宇在船上,引警方力量过去。”
宋晨光点头,“他们怕我们联手。”
“可我们现在也没法报警。”宋晚妹看着电脑,“证据链断了,王姐那边查不动,银行线又卡住。”
“那就自己走。”宋晨光关掉声纹页面,打开直播后台。弹幕还在刷,但很多内容明显不对劲——有人说鸭舌帽出现在城南加油站,有人发殡仪馆照片说是爆炸残骸,甚至有账号反复刷“三姐妹已自首”。
她调出IP分布图,一眼看出异常:大量账号集中在同一境外代理节点,地理位置全指向东南亚某数据中心。
“水军来了。”她冷笑一声,拿起麦克风,在直播间里只说了句:“真线索发定位,假消息追到底。”
话音落下不到一分钟,无效弹幕清空。一条新消息顶上来,附带一张监控截图:码头三号仓外,一个戴鸭舌帽的男人正从面包车上往下搬冰柜,时间是二十分钟前。
宋晨光放大画面,看清那人右手腕内侧有一道弧形疤痕。
“李阳见过这个。”她立刻拨通加密频道。
电话接得很快。
“B计划。”她只说了三个字。
那边沉默了一瞬,然后挂断。
外面雨没停,李阳带着五个人站在码头外围的集装箱之间。他们穿着防水围裙,推着一辆改装过的餐车,上面架着几个低频音响。这些设备原本是用来在夜市放大炒菜声吸引顾客的,现在被接上了特制音频。
“准备。”李阳看了眼手机,倒计时结束。
音响启动,第一段声音传出——锅铲撞击铁锅的脆响,接着是辣椒入油的爆裂声,再然后是颠勺的节奏。这正是晨光小馆最招牌的爆炒声,熟悉得能让老顾客闻声而出。
他们等了六分钟。
三号仓的卷帘门微微抬起一道缝,一只手伸出来探了探雨势,随即又缩回去。
李阳举起扩音器,深吸一口气,吼出一句:“鸭舌帽在码头三号仓!”
声音穿透雨幕,惊起一片飞鸟。
仓库里传来重物落地的声响,接着是急促的脚步声往深处退去。
“看到了。”身后有人小声说,“刚才露头了,就是监控里的那个人。”
李阳没动,盯着那道缝隙。他知道不能冲进去,这里属于海关监管区,没有执法权的人擅入会被当场控制。但他们也不需要进去——只要对方知道已经被发现,就会慌,会动,会暴露更多痕迹。
他再次按下扩音器开关,这次放的是另一段录音——一段混杂着咳嗽和喘息的对话剪辑,其中一句清晰可辨:“……货不能留在岸上,天亮前必须转运。”
这是之前从行车记录仪里截下来的黑车对话片段。
音响播放的同时,宋晨光在工厂这边收到了新消息。直播间有个用户私信发来一张热成像图,是从附近高楼拍摄的码头区域。图上显示,三号仓内部有两个高温点,一个在角落静止,另一个正在快速移动,疑似试图打通后墙。
“他们在转移东西。”她把图转发给李阳。
宋晨曦此时正盯着追踪器的信号界面。伪造的渔船坐标还在跳动,但她刚刚接入缉毒队内网测试端口,发现真实信道里有一条未归档的短频脉冲,频率与阿辉团伙惯用的通讯模式一致,发射源就在码头西区。
“信号源不在海上。”她低声说,“在岸上,而且离我们不远。”
“他们用双层伪装。”宋晨光反应过来,“一边造个假目标引开注意,一边在眼皮底下干活。”
“目的呢?”宋晚妹问。
“要么是销毁证据,要么是……”宋晨光看向妹妹,“换人。”
宋晚妹愣了一下。
“你是说,他们要把张宇转移出来?”
“或者,把他变成下一个‘鸭舌帽’。”宋晨光站起身,走到发电机旁,拔下一根电源线,迅速接到另一台设备上。屏幕亮起,显示出一串加密频段列表。
“我能干扰他们的短频通信,但只有十分钟窗口。”
“够了。”宋晨曦拿出随身携带的干扰检测仪,调试频率,“我帮你锁信道。”
两人并排坐着,手指在键盘和旋钮间快速移动。宋晚妹则拆开带来的工具包,取出一组微型信号反射片,准备待会儿由李阳那边的人悄悄贴到仓库外墙,增强干扰效果。
就在这时,电脑突然弹出警报。
追踪器信号变了。
不再是重复的渔船轨迹,而是开始实时跳动,位置定格在码头五号闸口,距离三号仓不到三百米。
“活了。”宋晨曦盯着屏幕。
“是真的吗?”宋晚妹问。
“不知道。”宋晨曦摇头,“但如果是真的,说明对方改变了策略——不再藏,而是主动暴露坐标。”
“诱饵?”宋晨光眯起眼。
“或者是……求救。”宋晨曦的声音低下去。
她们都没再说话。
李阳那边传来新的视频画面:三号仓后墙被撬开一道缝,有人影钻出去,背着一个黑色背包。镜头拉近,那人右手腕上的疤痕清晰可见。
“跟上,别靠近。”宋晨光下令。
画面晃动了几下,切换成第一视角。李阳带着两个人压低身形,沿着排水沟推进。雨越下越大,地面反光映出前方人影的轮廓。
突然,那人停下脚步,转过头朝某个方向喊了句什么。
紧接着,远处传来引擎启动的声音。
一艘快艇从码头暗渠驶出,灯光全灭,贴着水面疾驰而去。
李阳举起望远镜,只看到驾驶座上的人戴着帽子,身形瘦削,看不清脸。
“不是张宇。”他说。
可就在这时,耳机里传来宋晨光的声音:“等等,放那段音频。”
他按下手持设备的播放键。
音响里传出那句合成语音:“你查一步,他死一步。”
快艇上的身影猛然一震,像是听见了什么不该听见的东西。
李阳屏住呼吸,再次调整焦距。
那人缓缓转过头,似乎在寻找声音来源。
雨幕中,他的侧脸终于露出一角。
下巴上有颗痣。