成默在那臺檔案室的伺服器裡發現了一段隱藏的程式碼。不是普通的程式檔案,是獨立編譯的二進位制模組,被加密儲存,沒有在系統程序中顯示,也沒有在硬碟的目錄結構中留下任何可見的痕跡。如果不是葉媚在提取資料時注意到硬碟容量有一處細微的偏差,那段程式碼可能會一首留在那裡,不被任何人發現。
他把那段程式碼提取出來,用隔離分析機運行了一次初步反編譯。結果顯示這是一個自動化操作模組,負責週期性地向外傳送某種狀態確認訊號,訊號的目的地是一個境外IP地址,傳送頻率不固定,但每次傳送之前都會檢查特定埠的狀態。
“埠17。”成默的聲音從角落裡傳出來。“它的觸發條件就是埠17的狀態。只要埠17持續線上,它就不會發送訊號。如果埠17斷開了,它會在一段時間後向境外IP傳送一條確認訊息。”
方銘站在成默身後,看著螢幕上那行反編譯的程式碼。“也就是說,只要檔案室那臺伺服器還連著埠17,這個程式就不會向外傳送任何東西。只有伺服器被斷開時,它才會發出訊號,通知境外。”
“類似一個看門狗。”葉媚在旁邊說。“它在等。只要一切正常,它就沉默。一旦異常發生,它就會發出訊號。”
林錚站在白板前,看著那段程式碼被逐行展開。“這個程式是寫在那臺伺服器裡的。老劉在檔案室維護的這臺伺服器,不只是用來存檔案的,它還承載著一條看不見的通訊通道。只要埠17保持連線,這條通道就是通的。一旦斷開,境外就會知道。”
成默繼續往下翻,在程式碼的底層發現了一段註釋。註釋是用英文寫的,沒有署名,但用的變數命名習慣和賬本里SJ模組的邏輯結構高度相似。註釋的內容只有一行:“Trigger on port dow: static.”——埠斷開時觸發,傳送至固定地址。
“SJ。”成默把那段註釋放大。“寫這段程式碼的人和寫SJ審批程式的是同一個人。程式碼風格、變數命名方式、註釋習慣,全對得上。”
林錚沒有接話。他走到成默身後,看著那段註釋。“SJ不只是一個審批程式,它還管理著一條通訊通道。陳永昌的渠道透過SJ審批,檔案室的伺服器透過SJ的程式碼保持連線。SJ覆蓋的範圍比我們之前認為的更大。”
方銘靠著機櫃,看著螢幕上那段註釋。“那它發的訊號去哪了?那個固定地址是哪?”
成默往下翻了幾行,找到了目標地址。他把那個地址複製出來,輸入查詢系統。結果顯示那個IP地址屬於日本東京的一家資料中心,和賬本里六個空白節點之一的東京座標在同一棟樓。
“東京。同一個資料中心。”方銘的聲音不高。“SJ的訊號發往東京的一個節點。那個節點在賬本里是空白的,沒有資金記錄,沒有人員記錄,但它一首在接收SJ的狀態訊號。”
林錚站在螢幕前,看著那個東京座標在電子地圖上亮起。紅色的光點在地圖邊緣穩定地閃爍著,沒有移動,沒有閃爍加速,只是亮著,像是在等待什麼。窗外天己經全黑了,技術中心的燈光把白板上的名字照得發白。風還在吹,但吹進來的風己經沒有下午那麼冷了,像是氣溫正在慢慢回升,又像是暖氣管道終於把整棟樓都烘透了。
(第一百七十西章 完)








