地铁车厢轻微摇晃,墨青抱着笔记本电脑,靠在角落,面色平静,内心却波涛暗涌。
被监视了。而且是被一个技术实力强大、行动迅速的专业组织盯上了。
这种如芒在背的感觉让他极其不爽,同时也感到了前所未有的压力。虽然他自信凭借新获得的黑客知识和身上的几样宝物,自保应该无虞,但被人24小时窥探的感觉,就像生活在透明的鱼缸里,毫无隐私和安全感可言。
“必须想办法摆脱这种状态,或者至少,搞清楚他们到底知道多少,目的究竟是什么。”墨青眼神闪烁,“硬碰硬肯定不明智,得用点别的法子。”
他提前几站下了地铁,混杂在拥挤的人流中,连续换乘了几次公交,又步行穿过几个大型商场,利用人群和建筑的掩护,仔细感知着周围。确认那种被窥视的感觉暂时消失后,他才稍稍松了口气,但警惕并未放下。
他不能回学校宿舍,也不能回家。想了想,他用自己的身份证,在远离家和小区的另一端城区,找了一家不需要登记联网、管理相对松散的老旧小旅馆,开了一个临时的单间。
房间很小,设施简陋,但好在干净,而且隐蔽。拉上窗帘,锁好房门,墨青将新电脑放在桌上,接通电源。
他需要做两件事:第一,进一步熟悉和消化脑海中的黑客知识,并尝试制作一些简单的工具;第二,他需要找到一个宣泄口,或者说,一个测试自身能力并获取信息的途径——一个不会直接暴露自己,却能给那些暗中窥伺者找点小麻烦,或者至少能让自己出口恶气的方式。
思绪流转间,他忽然想起了前几天的一件事。
那是在他第一次钓起破鞋获得神级足力健,速度测试惊呆自己之后,他当时按捺不住兴奋,在一个他偶尔会逛的本地户外运动论坛上,发了一个略带凡尔赛性质的帖子。帖子大意是:“无意中发现一种奇怪的训练方法,短跑速度暴增,有没有懂行的来分析一下?”
当时他还没获得系统多久,心态尚未完全沉淀,带着一点少年人的炫耀心思。
结果可想而知。帖子下面几乎是一边倒的嘲讽和奚落。
“楼主怕不是百米跑出五秒,然后把自己脑子跑坏了吧?” “又疯一个,下一个!” “无图无真相,吹牛谁不会?我还说我能飞呢!” “楼主说的训练方法是不是每天吃三斤核桃补脑?” “钓鱼帖,鉴定完毕。” 甚至有几个自称是“业余田径教练”、“体校学生”的人,从各种“科学角度”冷嘲热讽,断定他要么是测错了,要么就是在哗众取宠。
墨青当时气得够呛,但苦于无法证明(总不能真去拍个视频展示非人速度),只好憋屈地关了网页,没再理会。后来经历了一系列奇遇,早就把这点小事抛在了脑后。
现在,这件事突然从记忆角落里蹦了出来。
“就它了!”墨青嘴角勾起一抹腹黑的弧度。
那个论坛规模不大不小,用户活跃度尚可,正好用来练手。既不会像攻击重要设施那样立刻引来雷霆反击,又能实实在在地教训一下那些嘴臭的家伙,顺便验证一下自己刚学的技术,可谓一举多得。
说干就干。
墨青打开电脑,深吸一口气,双手放在了键盘上。这一刻,他脑海中庞杂的黑客知识迅速被调动、梳理、整合。他眼神专注,手指如同拥有了自我意识般,开始在键盘上翩飞起舞,敲击声密集而富有韵律。
他并没有直接去攻击论坛服务器。那样太粗暴,容易留下明显痕迹。
他选择了一种更巧妙、更恶心人的方式。
首先,他利用图书馆系统残留的临时权限和一些公共代理节点,精心构造了几个跳板,隐藏自己的真实ip,如同套上了一层又一层的匿名面具。
接着,他并没有去挖掘论坛程序本身的高危漏洞(那样容易被发现),而是巧妙地利用了几个该论坛管理员疏于打补丁的低风险漏洞组合,加上一点社会工程学技巧,模拟了一个看似正常的版主管理后台登录请求。
这个过程需要极高的技巧和对系统心理的把握。几分钟后,他成功获取了一个临时的、权限受限的版主会话id(session id),虽然无法进行最高权限操作,但足以进行一些普通的帖子管理和用户操作。
“第一步,搞定。”墨青微微一笑,动作不停。
他并没有用这个权限去大肆破坏。他的目标是精准打击,并且要足够“有趣”。
他快速编写了一段极其精简的javascript脚本,这段脚本的功能很简单:它会检测发帖和回帖用户的id,一旦匹配到那几个跳得最欢、嘲讽他最狠的id(他早就记在心里),就会神不知鬼不觉地在他们发布的内容后面,自动添加一个极其微小、肉眼几乎难以察觉的隐藏字符。
这个隐藏字符本身不会影响显示,但却会破坏论坛的页面编码。当其他用户浏览到这些被“诅咒”的帖子或回复时,他们的浏览器在解析到这个隐藏字符时,就有一定概率(墨青刻意控制了触发概率)发生错乱,导致……
导致页面上的所有图片,瞬间替换成一张巨大的、滑稽的、扭动着屁股的卡通橘猫动图(gif),并且伴随着一句闪烁的文字:“我是键盘侠,我错了,喵~”,同时音箱里还会爆出一声尖锐的猫叫!
而中招的用户想要关闭这个页面,却发现“关闭”按钮也被那只扭屁股的橘猫占据了,必须精准地点击到猫屁股上某个特定像素点,才能关闭页面!
这还不算完。墨青还给这段脚本加了个“传染”机制。任何一个浏览了中招帖子的用户,如果他当时恰好也在登录状态,那么他接下来发布的任何内容,也会被自动打上“隐藏字符”,成为新的传染源!
“嘿嘿,让你们嘴臭。”墨青看着自己编写的恶作剧脚本,满意地笑了。这玩意儿没什么破坏性,就是极度恶心人,足以让那几个家伙和他们的帖子在短时间内成为论坛公敌。
他小心翼翼地将这段脚本,利用获取的临时版主权限,植入到了论坛的一个公共js库文件的末尾。这样,所有用户加载页面时都会执行这段代码,但又极难被发现。
做完这一切,他立刻清理了所有操作日志,抹除了临时会话痕迹,断开了所有跳板连接。
整个过程行云流水,耗时不到二十分钟。他对于脑海中知识的运用越发纯熟。
“搞定,收工。”墨青伸了个懒腰,想象着论坛即将开始的混乱场面,心情莫名舒畅了不少。这种躲在暗处,轻轻拨动一下杠杆就能引发一场小风暴的感觉,确实有点上瘾。
他关闭了电脑,决定不再关注后续。让子弹飞一会儿。
压力需要释放,但正事不能忘。当务之急,是提升实力。
他看了一眼储物戒指里的两件“硬骨头”——异兽青铜像和雷击木玉盒。尝试再次向内灌输内力,依旧如同石沉大海,玉盒表面的白光甚至比之前更淡薄了一点,但距离打开仍遥遥无期。
“看来内力修为还是太弱。”墨青叹了口气,“或者需要特殊的能量?”
他想起钓起幽水母时感受到的那丝空间能量,又想起监视者身上那锐利如金铁的气息。
“不同的世界,不同的力量体系吗?”他若有所思,“或许……我需要钓起更多来自不同世界的东西,吸收各种能量,才能找到打开它们的钥匙?”
思路似乎清晰了一些。不能只依赖内力。
看了看时间,还只是下午。墨青决定再次出门。城里的小河暂时不能去了,野水库也刚回来。他打开手机地图,搜索附近的其他水域。
很快,他锁定了一个目标——位于城市边缘,一个废弃多年的湿地公园。据说那里曾经规划得很好,后来因为资金和环境问题烂尾了,如今荒草丛生,水系却依然发达,形成了不少野塘和沼泽,平时人迹罕至。
“这种地方,说不定能钓到点不一样的东西。”墨青背上渔具包(掩人耳目),再次出发。