凌晨三点,被黑我电脑屏幕突然闪了一下。客入不是图片那种正常的屏保切换,是被黑像被人从里面拧了一下,画面歪斜后又弹回来。客入桌面上那张去年拍的图片海边日落照,正一片一片往下掉像素——像有人在用橡皮擦从右上角开始擦除天空。被黑我揉了揉眼睛,客入以为是图片熬夜熬花了眼。可那张照片里的被黑海浪还在动,慢吞吞地,客入像被按了0.5倍速。图片我知道,被黑被入侵了。客入
不是图片我的电脑被入侵,是那张照片本身。有人从云端找到它,改写了它的元数据,然后在EXIF信息里塞了一串十六进制代码。我点开属性,在“拍摄时间”那一栏看到一行字:DELETE /home/user/photos/2023-07-15.jpg HTTP/1.1。这不是时间戳,是命令。有人把一张静态的JPEG变成了一个待执行的脚本。你看,图片不再是图片了,它成了载体,成了伪装成风景的恶意通道。
最让人发毛的是照片里那艘小船。原本它停在画面左侧,船头朝右,现在它朝左了。我放大像素,发现船尾多了一个模糊的、半透明的人形轮廓,像是从海面上浮起来的影子。我没拍过这个。我用Hex编辑器打开文件,在接近文件尾部的FFD9标记之前,找到了一段被植入的数据——一个伪装成注释块的PHP后门。它藏在图像数据的容错区里,只要有人用特定软件打开这张图,后门就会尝试向外发送请求。
我试着删掉那段数据,重新保存。可每次保存后不到十分钟,文件大小又会自己变回原来的字节数。就像有只无形的手在后台不断把删掉的东西补回来。我换了个思路,把图片改成无扩展名的纯数据文件,扔进虚拟机里跑了一遍。结果它在第3秒就试图连接一个境外IP,端口是443,用的还是HTTPS加密流量——伪装得滴水不漏。
后来我查了查,这种手法叫“图像隐写术”的进阶版,不藏文字,藏指令。黑客把恶意代码拆成碎片,分散到不同像素的RGB通道里。肉眼看到的还是那片蓝色大海、金色沙滩,但每三个像素的蓝色分量末位,都藏着一位二进制数。一百万个像素就能藏三十三KB的代码,足够运行一个小型木马了。我之前总觉得黑客入侵得噼里啪啦敲键盘、满屏代码飞滚,其实不是。真正的入侵安静得像一张照片被轻轻保存。
那天早上我删掉了那张海边日落图,连带云端备份一起。可我知道这意义不大——我的相册里还有几百张照片,每一张都可能被改写过。我翻开其他图片检查,那张去年冬天拍的雪景,右下角树影的排列方式似乎有规律,像是某种编码。我盯着看了好久,没敢再用任何软件去解析它。有些东西,你越查,陷得越深。
那张照片现在还在我回收站里,我没彻底清空。说不清为什么留着它。也许是想提醒自己:你眼中的风景,可能只是别人递过来的门把手。你按下快门的那一刻,永远不知道谁在另一端,用你的取景框当窗户,探头探脑。