二十八岁,我被前女友堵在酒店门口

二十八岁生日这天,我揣着刚发的项目奖金,在市中心最贵的那家威斯汀酒店开了个行政套房。不为别的,就图个清静,想一个人待着,吹吹空调,看看江景,假装成功人士麻醉自己一晚上。

浴室里蒸汽腾腾,我刚抹了一头泡沫,哼着跑调的《生日快乐歌》,手机就跟催命符似的在洗手台上震起来。瞄了一眼,是陌生号码,直接掐断。没半分钟,又来了。我冲掉泡沫,没好气地接起来:“谁啊?推销保险不买,健身卡不办!”

电话那头沉默了两秒,一个我这辈子都忘不了,又凉又脆的声音响起来:“李哲,我在酒店大堂。你下来,还是我上去?”

我手一抖,手机差点滑进马桶。林薇?她怎么知道我在这儿?分手都快两年了,这唱的是哪一出?

“你……你怎么找来的?”我嗓子有点发干,泡沫水呛得我直咳嗽。

“你发在朋友圈那张房卡照片,背景反光能看见酒店logo。二十八岁,挺有仪式感啊。”她的语气平铺直叙,听不出是夸是损。

我这才想起半小时前嘚瑟的那条“祝我生日快乐”,配图是房卡和窗外的江景。千算万算,没算到这女人刑警学院毕业的观察力一点没退步。

“我……我洗澡呢。不方便。”我试图挣扎。

“行,那我等你。大堂沙发这儿,我不急。”说完,电话干脆利落地挂了。

我站在花洒底下,水哗哗地冲,心里却乱成一团麻。林薇,我的前女友,分手分得那叫一个惨烈。当初我俩好的时候,也是朋友圈里的模范情侣,从大学谈到工作,见过家长,差点就买了婚房。结果呢,败给了现实。她家条件好,父母都是体制内的,盼着她找个稳定可靠的女婿。我那会儿刚辞了工作,跟人合伙创业,天天吃了上顿没下顿,在她爸妈眼里就是“不务正业”。压力之下,争吵越来越多。最后那次,在她家楼下,她妈当面说我“给不了薇薇未来”,我血气上涌,撂下一句“那就不耽误她了”,转身就走。林薇追出来,我没回头。

后来听说她相亲认识了个医生,条件挺匹配。我以为这辈子不会再见了。

胡乱擦干身子,套上T恤短裤,我看着镜子里那张二十八岁、带着点胡茬、眼角已有细纹的脸,深吸了口气。是福不是祸,是祸躲不过。

乘电梯下楼,心怦怦跳。行政酒廊在高层,电梯一路下行,每一层停靠都让我神经紧张。电梯门一开,我一眼就看到了她。

她就坐在靠窗的那排沙发最边上,穿着一件浅蓝色的连衣裙,简简单单,却衬得皮肤更白了。头发比分手时长了些,松松地挽在脑后,露出光洁的额头和脖颈。两年不见,她好像瘦了点,但那股子清冷劲儿没变,坐在那里,周遭的喧嚣都像是被隔开了。她没看手机,只是安静地看着窗外的车流,侧脸在酒店暖黄色的灯光下,线条柔和了些。

我硬着头皮走过去,在她对面的沙发坐下。沙发软得让人陷进去,很不自在。

“来了。”她转过脸,目光在我身上扫了一圈,像安检仪,“胖了点。”

我下意识摸了摸肚子,是有点小肚腩了。“……伙食好。你怎么来了?”我尽量让语气显得平静,像对待一个普通老友。

她没直接回答,从身边一个印着某医院logo的环保袋里,拿出一个小蛋糕盒子,推到我面前。是最普通的那种水果奶油蛋糕,街边蛋糕店十几块钱一个。

“生日快乐。”她说。

我看着那个小蛋糕,心里更毛了。这算什么?分手后的温情关怀?还是鸿门宴的开胃菜?

“谢谢……不过,你怎么……”我指了指蛋糕,又指了指她,意思很明显:我们这关系,送蛋糕不合适吧?

“正好在附近医院办事,看到你朋友圈,顺路。”她轻描淡写,然后话锋一转,“找你有点事。”

来了。我坐直了些,心里那点不切实际的幻想瞬间破灭。“什么事?你说。”

她看着我,眼神很直接,带着点审视的意味:“我听说,你那个小公司,去年接了个政府的智慧园区项目,做得还不错?”

我愣了一下。我确实跟朋友合伙搞了个科技公司,主要做软件开发和系统集成,去年运气好,中标了一个区里的项目,算是熬出了点头。她连这个都知道?

“嗯,混口饭吃。小打小闹,比不上你们……稳定。”我差点说“比不上你那位医生”,及时刹住了车。

“那个项目里,有个安防子系统的数据对接模块,是你负责的?”她追问,语气有点急。

“是……是我写的核心代码。怎么了?”我越来越疑惑。她一个在医院行政岗工作的人,问这个干嘛?

她深吸了一口气,身体微微前倾,压低了声音:“李哲,我需要你帮我个忙。这个忙,可能有点……麻烦。”

酒店大堂的背景音乐是舒缓的钢琴曲,但此刻在我听来却有点聒噪。我看着她的眼睛,那里面有种我很久没见过的情绪——焦虑,甚至是一丝恳求。这不像我认识的林薇,她一向是冷静甚至有点骄傲的。

“你说说看。”我谨慎地回答。

“不是我个人的事。”她顿了顿,似乎在斟酌用词,“跟我们医院有关,也跟……你那个项目有关。”

接下来的十分钟,林薇用尽可能简洁的语言,给我讲了一件让我后背发凉的事。

原来,她所在的市第一人民医院,最近在推进一个智慧医疗的项目,其中很重要的一部分,就是和市里刚建成的智慧园区平台进行数据共享,尤其是应急响应和人员流动数据这一块。这本是好事。但她在参与数据对接测试时,偶然发现,从园区平台传过来的部分数据流里,夹杂着一些非常隐蔽的、异常的数据包。这些数据包加密方式很特殊,而且指向一些与医疗完全无关的境外IP地址。

她凭着直觉和以前学过的一点网络安全知识,觉得不对劲,私下里做了一些初步分析。她怀疑,这很可能是一种经过伪装的数据泄露通道,有人利用园区平台这个官方项目作为跳板,在窃取敏感信息,而医院的数据可能只是其中之一,甚至是被利用的一环。

她向科室领导隐晦地提过,但领导觉得她想多了,说那是经过严格验收的政府项目,不会有问题,让她别节外生枝。她不甘心,又不敢贸然上报,怕打草惊蛇,也怕自己判断失误担责任。想来想去,她记起我这个“前码农”参与过那个园区项目,而且她知道我的为人,虽然分手了,但起码的正义感和底线还是有的。

“李哲,我知道这听起来有点玄乎,也可能是我敏感了。但万一我的怀疑是真的,这背后可能涉及很大的问题。我不相信别人,只……只能来找你。”她说完,看着我,眼神里有紧张,也有期待。

我半天没说话,脑子里飞速运转。智慧园区项目……数据对接模块……那部分代码确实是我写的,为了保证效率和兼容性,我用了些比较灵活的通信协议。如果真有人利用这个漏洞做手脚,技术上不是不可能。但谁有这么大本事,能在政府项目里埋雷?目的是什么?

“你有证据吗?那些异常数据包。”我问。

“有,我偷偷拷贝了一部分,在我U盘里。”她拍了拍身边的包,“但我设备有限,分析不了太深。需要专业的工具和环境,最好能反向追踪。”

我靠在沙发上,感觉额角有点冒汗。这事太大了。如果林薇说的是真的,那我写的代码就成了帮凶?如果她是错的,我插手进去,会不会惹一身骚?而且,我们俩这关系,掺和到一起查这种事,算怎么回事?

“林薇,”我舔了舔有些发干的嘴唇,“你为什么找我?我们……已经分手了。你可以找网警,或者更专业的安全公司。”

她低下头,看着自己的手指,沉默了一会儿。“我查过,那个项目现在的运维负责人,是王胖子。”

王胖子?我心头一紧。王胖子是我以前的同事,技术不咋地,但特别会来事。当初项目做完,公司架构调整,他不知怎么攀上了关系,成了甲方指定的运维负责人。我跟他不和,也是我后来离开的原因之一。如果真是他负责运维,那这里面猫腻的可能性就更大了。

“我信不过他们。”林薇抬起头,眼神坚定起来,“李哲,我知道分手时我说了些难听的话,我爸妈也……对不起。但这件事上,我认识的李哲,还是那个写代码时容不得一个bug、有点理想主义的人。我不是以你前女友的身份来求你,是以一个可能发现了严重安全隐患的公民身份,来请你帮忙核实。当然,你可以拒绝,就当我没来过。”

她这番话,像个小锤子,一下下敲在我心上。分手时的委屈、不甘,还有那份被否定的挫败感,好像又被翻了出来。但她说得对,代码是我的“孩子”,我不能容忍它被人利用去做坏事。而且,这种涉及公共安全的事,知道了不管,我心里过不去。

我看了看窗外,江对岸的霓虹灯已经亮起,一片繁华景象。谁能想到,这平静之下可能藏着暗流。

我又看了看面前的小蛋糕,奶油有点化了。

最后,我看向林薇。她紧张地等待着我的回答。

“蛋糕,”我指了指,“再不吃就化了。”

她愣了一下。

我拿起旁边的一次性勺子,挖了一大块带草莓的,塞进嘴里。奶油甜得发腻,但莫名让人踏实。

“U盘带了吗?”我边嚼边问,声音有点含糊,“楼上房间网速快,电脑也现成的。”

林薇的眼睛一下子亮了,像是夜空中突然点亮的星。她赶紧从包里拿出一个银色的小U盘,递给我。

我接过U盘,站起身:“走吧,上楼。这事儿,得细聊。”

我也站起来,看着她明显松了口气的样子,忍不住还是问了一句:“那个……你那位医生男朋友,知道你来这儿找我吗?”

她闻言,奇怪地看了我一眼:“谁跟你说我有男朋友了?早分了。不合适。”

我:“……哦。”

电梯上行,这次心里揣着的,不再是慌张和尴尬,而是一种久违的、沉甸甸的责任感,还有一丝说不清道不明的、像是死灰复燃般的东西。二十八岁的生日,看来是没法清静了。但好像,也不算太坏。

我们一前一后走进房间,五星级酒店的行政套房确实气派,落地窗外是流光溢彩的江景,客厅宽敞得能打羽毛球。但此刻我俩都没心思欣赏。我径直走到书桌前,打开我带过来的笔记本电脑,那是我吃饭的家伙,配置还算顶配。

林薇跟进来,轻轻带上门,站在我身后不远不近的地方,有点局促。房间里的空气似乎都凝滞了,只剩下空调出风口细微的嗡嗡声。

“坐吧,别站着。”我指了指旁边的沙发椅,自己拉过书桌前的转椅坐下,插上U盘。

她依言坐下,双手放在膝盖上,背挺得笔直,像个等待老师检查作业的小学生。这让我想起刚认识她那会儿,她也是这样,表面冷静,其实紧张的时候小动作特别多。

U盘识别了,里面文件不多,就几个加密的数据包文件和一个她写的简要说明文档。我点开说明文档,快速浏览了一遍,眉头越皱越紧。她的描述很清晰,甚至画了简单的数据流图,标注了异常数据包出现的时间和特征。凭我多年的经验看,这确实不像普通的网络噪声或者配置错误,手法很老练,伪装得极好。

“你拷贝这些数据,没被人发现吧?”我一边问,一边调出我电脑上的专业分析工具和反编译环境。

“应该没有。”林薇的声音从我身后传来,“我用的是科室一台不常联网的备用机,权限也比较低,不太会引起注意。”

我点了点头,开始导入数据包。屏幕上飞快地滚动着十六进制代码和日志信息。房间里很安静,只有我敲击键盘的噼啪声和她偶尔调整坐姿时衣料的摩擦声。

时间一分一秒过去。我全神贯注,追踪着数据包的来源和路径,尝试破解它的加密方式。这活儿需要耐心和技术,像在黑暗的迷宫里摸索。林薇也很安静,没有打扰我,只是偶尔起身去倒两杯水,一杯放在我手边。

不知过了多久,我揉了揉发酸的眼睛,长舒了一口气。

“怎么样?”她立刻问道,声音里带着急切。

我转过转椅,面对她。她的脸色在屏幕光的映照下有些苍白,眼神紧紧盯着我。

“你的怀疑,八成是对的。”我沉声说,“这不是意外,是人为的后门。加密方式很偏门,但破解后能看到,数据被重定向到了一个海外的中转服务器,那个IP地址……我查了一下,注册信息很模糊,但关联到一些已知的网络攻击活动。”

林薇的呼吸明显急促起来,手指绞在了一起。“真的是……泄露?”

“嗯。”我点点头,心情沉重,“而且从数据包的大小和频率看,被窃取的数据量可能不小。你发现的只是流向医院测试端的一部分,园区平台那边,流向其他合作单位的数据流里,很可能也有。”

“那怎么办?”她问,声音有些发颤,“报警吗?”

“报警是肯定的,但得有确凿证据。”我指了指屏幕,“我们现在只有这些异常数据包,只能证明数据被异常转发,但具体被窃取了什么内容,是谁干的,证据链还不完整。直接报警,如果对方背景硬,很容易被压下来,或者推说是技术故障。”

“那……你的意思是?”

“得找到源头,拿到更直接的证据。”我看着她,“这个后门,肯定是被人植入到系统里的。最可能的地方,就是我当初写的那个数据对接模块。虽然项目已经移交运维,但源代码的备份我电脑里还有。我需要对比一下,看看有没有被篡改过。”

我说着,开始在电脑里翻找那个老项目的源代码仓库。幸好我有备份重要代码的习惯。

林薇站起身,走到我旁边,俯身看着屏幕。她身上有股淡淡的消毒水味混着一点洗衣液的清香,这味道很久没闻到了,让我有点恍惚。

“能找到吗?”她问,气息拂过我的耳畔。

“我找找……应该就在这个目录……”我定了定神,继续操作。终于,找到了那个项目的源代码文件夹。我点开数据对接模块的目录,里面是我熟悉的一个个代码文件。

“就是这些了。”我说着,开始逐个文件检查版本历史和修改记录。这是一个繁琐的过程,需要极强的耐心和细心。

林薇就站在我旁边,安静地看着。她的存在感很强,让我无法忽略。我能感觉到她的紧张和期待。

检查了几个核心文件,都没发现异常。修改记录都停留在项目验收之前,是我自己提交的版本。难道问题不出在源代码上?

我不死心,又检查了项目的配置文件、依赖库列表。突然,在一个不起眼的配置文件里,我发现了一行奇怪的注释,指向一个我完全没有印象的外部资源库地址。

“等等……这个库是干嘛的?”我皱起眉头,这个资源库的名字很陌生,不在当初的设计文档里。

我尝试访问那个地址,发现是一个需要特定权限的私有代码库。这更可疑了。正常的第三方库都是公开的。

“有问题?”林薇敏锐地察觉到了我的表情变化。

“可能找到了。”我指着那行注释,“这个资源库的地址很可疑。我需要想办法弄到这个库的代码,看看里面到底是什么。”

“怎么弄?”

我沉吟了一下。“这个地址……域名有点眼熟。我好像在一个技术论坛上见过类似的,属于一家叫‘深度科技’的小公司。这家公司……”我努力回忆着,“好像王胖子后来跳槽去过?”

林薇的脸色一下子变了:“王胖子?你是说,可能跟他有关?”

“现在只是猜测。”我谨慎地说,“但这个巧合太明显了。如果这个私有库是‘深度科技’的,而王胖子又知道怎么把它偷偷引入到项目里……那他就是最大的嫌疑人。”

事情似乎有了眉目,但同时也变得更加复杂和危险。如果牵扯到王胖子,他现在又是甲方指定的运维负责人,意味着他很可能有同伙,或者有保护伞。

“那我们接下来怎么办?”林薇问,眼神里既有找到线索的兴奋,也有对未知风险的担忧。

我看了看窗外,天已经彻底黑透了,江上的游船亮着彩灯,一片歌舞升平的景象。而我们俩,却在这个酒店房间里,窥见了一场可能危及公共安全的阴谋的一角。

我关掉电脑上的代码窗口,深吸一口气,转向林薇。

“光有这些推测还不够。我们需要拿到那个私有库的代码,或者找到王胖子与这件事直接关联的证据。”我说,“明天,我去会会这个王胖子。”

“你怎么见他?他要知道你查他,肯定会警惕。”

“我有办法。”我笑了笑,心里已经有了个计划,“我们公司虽然小了,但偶尔也会接一些园区平台的运维外包小单子,以技术支持的名义去找他,‘请教’点技术问题,合情合理。顺便,看看能不能在他电脑上找到点‘惊喜’。”

这有点风险,但似乎是目前最可行的办法了。

林薇看着我,眼神复杂:“李哲,你……小心点。王胖子那个人,很滑头。”

“我知道。”我点点头,“你呢?你这边暂时装作什么都没发现,正常上下班,别打草惊蛇。”

“好。”她应道。

正事暂时告一段落,房间里的气氛又变得有些微妙。我们俩都站着,一时无言。桌上的那个小蛋糕,奶油化得更厉害了,显得有点可怜。

“那个……蛋糕,”我指了指,“再不吃真不能要了。”

林薇走过去,拿起勺子,也挖了一小块,慢慢放进嘴里。她吃东西的样子还是那么斯文。

“甜吗?”我问。

“嗯,太甜了。”她说,但嘴角似乎有了一点极淡的笑意。

我也走过去,和她一起,就着房间里昏暗的灯光和窗外的夜景,把这个卖相已经不太好的小蛋糕分着吃完了。甜腻的奶油糊在嘴里,却莫名冲淡了一些刚才的紧张和沉重。

吃完蛋糕,林薇看了看时间,已经不早了。

“我该走了。”她说,拿起她的环保袋。

“我送你下去吧。”我说。

“不用,酒店很安全。”她摇摇头,走到门口,又停下脚步,转过身,“李哲,谢谢你。还有……生日快乐。”

“谢谢你的蛋糕。”我说。

她打开门,走了出去。门轻轻合上,房间里只剩下我一个人,还有空气中残留的那一丝若有若无的消毒水味。

我走到落地窗前,看着楼下车水马龙。二十八岁的生日,以被前女友堵门开始,以卷入一场可能不小的风波为转折,最后以和一个久未谋面的人并肩面对未知结束。这经历,可真够写进小说了。

但我心里清楚,这不是小说。明天要见的王胖子,可能隐藏的危险,都是真实的。我下意识地摸了摸电脑,代码是我的战场,而这次,战场之外,似乎多了点需要守护的东西。

夜还很长,但我已经没有睡意。我回到电脑前,重新打开那些代码和数据分析工具。得为明天的“拜访”,做更充分的准备。这场仗,才刚刚开始。

好的,这是接下来的内容:

第二天一早,我顶着两个黑眼圈,在酒店餐厅囫囵吞了几口早饭。一晚上没怎么睡,脑子里反复推演着待会儿见到王胖子的各种可能性和应对方案。我给公司合伙人老张打了个电话,简单说了下情况,当然,略去了林薇的部分,只说我发现之前做的那个园区项目可能被人动了手脚,存在安全隐患,需要以技术支持的名义去探探口风。老张是我多年兄弟,一听就明白事情的严重性,二话不说给我打掩护,说正好有个客户咨询园区平台接口的问题,让我去“顺便”请教一下王胖子这位“专家”。

上午九点半,我准时出现在智慧园区运营中心楼下。这地方我来过不少次,轻车熟路。前台登记后,我被领到了王胖子的办公室。

两年不见,王胖子更“丰满”了,西装绷得紧紧的,坐在宽大的老板椅里,面前摆着功夫茶具,一副成功人士的派头。看见我,他愣了一下,随即堆起满脸假笑:“哟!李哲!什么风把你吹来了?听说你现在自己当老板,混得不错啊!”

“王总,您就别寒碜我了,小打小闹,混口饭吃。”我笑着在他对面的椅子坐下,“今天来,是有点技术问题想请教您这位大专家。”

“哦?什么问题?你们公司也接了我们平台的活儿?”王胖子给我倒了杯茶,眼神里带着审视。

“没有没有,我们哪够格。”我摆摆手,“是另一个客户,想做类似的数据对接,遇到点疑难杂症,我寻思着您这边经验最丰富,就厚着脸皮来取取经了。”我抛出了事先准备好的几个技术问题,都是关于数据协议和加密传输的,听起来合情合理。

王胖子一开始还侃侃而谈,吹嘘他们平台如何先进、安全措施如何到位。但我故意把问题往深里引,提到一些非标准的协议和潜在的边界情况时,他明显有些卡壳,眼神开始闪烁,不时端起茶杯喝水掩饰。

“这些细节嘛……都是底下工程师具体操作的,我主要负责管理协调。”他开始打官腔,“你放心,我们平台经过严格安全测评,绝对没问题。”

“那是自然,王总管理的项目,肯定是标杆。”我顺着他的话捧了一句,话锋突然一转,“对了,王总,我记得当初项目里,有个叫‘深度科技’提供的第三方加密库,好像挺好用的,不知道现在还在用吗?我们客户那边也想了解一下。”

“深度科技?”王胖子端茶的手几不可察地抖了一下,茶水溅出来几滴,他赶紧抽纸巾擦拭,语气变得有些生硬,“哦,那个啊……早就不用了!性能不太稳定,后来换成了更成熟的方案。”

他这反应,简直是此地无银三百两。我心中冷笑,面上却不动声色:“是吗?那太可惜了。我还觉得他们家有些独门技术呢。”

“没什么独门的,都是噱头。”王胖子摆摆手,明显不想继续这个话题,“李哲啊,要是没别的事,我这边还有个会……”

这是下逐客令了。我知道再待下去也套不出更多话,便起身告辞:“行,那不打扰王总了,谢谢您的指点。”

走出运营中心大楼,阳光有些刺眼。我深吸一口气,虽然没拿到直接证据,但王胖子的反应已经足够说明问题。那个“深度科技”的私有库,绝对有鬼。

我拿出手机,给林薇发了条加密消息:“鱼已惊,库是关键,深度科技有问题。你那边一切正常?”

没过几分钟,她回复:“正常。小心。”

接下来的两天,我和林薇分头行动。我动用了我所有的技术人脉,旁敲侧击地打听“深度科技”这家公司和王胖子的关系。果然,这家公司成立时间不长,法人代表是个查无此人的名字,但有几个项目的资金流向隐约指向王胖子一个远房亲戚。而林薇则利用医院内部的权限,更加隐蔽地监控着数据流,试图捕捉更多异常数据包的样本。

压力越来越大。我们知道时间不多了,对方一旦察觉被调查,很可能会切断证据或者采取更极端的措施。

转机出现在第三天晚上。林薇突然给我打来电话,声音压得很低,带着一丝激动:“李哲,我可能找到突破口了!医院信息科有个老工程师,姓周,快退休了,人很正直。他今天悄悄告诉我,他前段时间也发现数据有点不对劲,但被上面压下来了。他说……他手里有前段时间系统完整的日志备份,包括一些被删除的记录!”

“太好了!日志是关键!”我心头一喜,“能拿到吗?”

“周工说可以偷偷拷贝给我,但他要求必须交给可靠的人,并且要保证他的安全。”林薇顿了顿,“他明天下午值班,我可以去找他。”

“我跟你一起去!”我立刻说,“多个人多个照应。在医院附近找个安全的地方交接。”

约好了时间地点,我挂了电话,心情既紧张又兴奋。如果能拿到系统日志,尤其是被删除的记录,很可能就能找到王胖子操作的确凿证据。

第二天下午,我提前到了医院附近的一家安静的书咖,选了个靠里的角落坐下。心跳得有点快,不停地看着门口。

两点刚过,林薇来了,她穿着白大褂,外面套了件薄风衣,神色警惕。她身后跟着一位头发花白、戴着老花镜、面容慈祥却带着忧虑的老工程师,应该就是周工。

两人快步走到我这边坐下。周工警惕地看了看四周,然后从怀里掏出一个用报纸包得严严实实的移动硬盘,推到桌子中间。

“小伙子,林医生都跟我说了。”周工看着我,眼神严肃,“这里面的日志,我做了标记,异常的时间点和操作记录都在里面。这帮人,胆子太大了!这是拿病人的信息安全开玩笑啊!”老人家的声音有些颤抖,带着愤怒。

“周工,您放心,证据我们一定会交到该交的地方,也会确保您的安全。”我郑重地接过硬盘,感觉手里沉甸甸的。

“我相信林医生,也相信你。”周工点点头,又叮嘱了几句,便匆匆离开了,他不能离开岗位太久。

我们也不敢久留。林薇还要回科室,我则带着硬盘立刻返回酒店。

回到房间,我迫不及待地连接硬盘,打开日志文件。巨大的数据量扑面而来,但我很快根据周工的标记,锁定了关键部分。几个通宵的技术攻关没有白费,我运用各种分析工具,逐条解析那些被刻意删除又恢复的日志记录。

汗水浸湿了我的额发。屏幕上,一条条指令清晰可见:在某月某日某时某分,来自运维管理员账户(用户名赫然是王胖子的拼音缩写)的操作记录,远程登录服务器,修改了数据转发配置,悄悄地添加了对那个“深度科技”私有库的调用指令。时间点,正好和林薇最初发现异常数据包的时间吻合!

铁证如山!

我长出一口气,靠倒在椅背上,感觉全身的力气都被抽空了。兴奋、后怕、愤怒,种种情绪交织在一起。

我立刻把关键证据截图、整理成文档,然后拨通了一个电话——打给我一个在省公安厅网警总队工作的大学同学。这件事,已经超出了我们个人能处理的范畴,必须由执法机关介入。

听完我的简要说明和看到的证据,同学高度重视,让我立刻通过加密渠道将所有材料传过去,并叮嘱我和林薇注意安全,他们会立刻组织人手立案侦查。

做完这一切,窗外已是华灯初上。我瘫在沙发上,感觉像打了一场硬仗。

手机响了,是林薇。

“怎么样?”她问,声音里充满了期待和紧张。

“拿到了,铁证。已经交给网警了。”我说,“接下来,就是等待了。”

电话那头沉默了几秒,然后我听到她长长地、如释重负地舒了一口气。

“谢谢你,李哲。”她的声音有些哽咽,“真的……谢谢你。”

“谢什么,这是应该做的。”我说,心里也涌起一股复杂的情绪,“你也辛苦了,早点休息。”

挂了电话,房间里再次安静下来。危机似乎暂时告一段落,但我知道,真正的较量可能才刚刚开始。王胖子和他背后的人,不会坐以待毙。

几天后,消息传来。网警部门行动迅速,在王胖子试图外逃时在机场将其抓获。同时,“深度科技”也被查封,初步调查显示,这是一个专门为窃取商业数据和敏感信息而成立的空壳公司,背后可能牵扯更深的利益链条。案件还在进一步审理中。

我和林薇作为重要举报人,配合警方完成了笔录。走出公安局大门那天,阳光很好。

“终于……结束了。”林薇看着天空,轻声说。

“嗯,结束了。”我点点头。

两人并肩走了一段,气氛有些微妙的沉默。经历了这么多,似乎有很多话想说,却又不知从何说起。

“你……接下来有什么打算?”我忍不住问。

“先好好上班吧。”林薇笑了笑,“经过这件事,院里应该会重视信息安全了。可能……我也会申请调去相关的岗位做点事情。”

“挺好。”我说。

又走了一会儿,快到路口了,该分开了。

“那我……走了。”林薇停下脚步,看着我。

“好。”我点点头。

她转身,走了几步,又突然回过头,像是下了很大决心:“李哲,那天……在酒店,我说我们分手是因为不合适。”

我看着她,没说话。

“其实……不全是。”她低下头,声音很轻,“也有我的问题。那时候压力大,我说了很多伤人的话……对不起。”

我沉默了一下。这两年,我心里不是没有怨气。但经过这次事情,看到她的坚持和勇敢,那些怨气好像也淡了很多。

“都过去了。”我说,“而且,你也没说错,那时候的我,确实挺失败的。”

“不是的!”她立刻抬头反驳,眼神急切,“你只是……需要时间。你看现在,你不是做得很好吗?”

我看着她着急的样子,忽然笑了:“行了,别互相检讨了。反正,都过去了。”

她也笑了笑,笑容里有些释然,也有些别的什么我看不懂的情绪。

“那……再见。”

“再见。”

她转身汇入人流,背影渐渐远去。我站在原地,看了很久。

二十八岁的这场风波,以一种意想不到的方式,冲刷了过去的某些隔阂。未来会怎样,谁也不知道。但至少,代码的bug修复了,心里的某个角落,好像也透进了一点光。

我深吸一口充满阳光和汽车尾气的空气,迈开步子,朝自己的方向走去。生活,还得继续。

滚动至顶部