書境
程式碼攻防戰
看見李棟樑從揹包裡拿出了一臺膝上型電腦,並利索地將線纜連到了書桌下方的電腦上時,崔孃好是驚訝:
“你這是哪來的電腦?”
李棟樑的聲音從桌子下方傳了出來:
“這電腦是我剛剛收到第一筆回收員獎金的時候買的,啟辰一直幫我保管著。看來她還不時拿出來做充放電的保養,到現在電池還完好無損的……”
崔孃的語氣又開始陰陽怪氣起來了:
“喲?看來你的啟辰妹妹對你還真的是不錯呢!”
李棟樑白了崔孃一眼,不再搭理這個愛吃醋的女人,直接開啟了電腦裡的虛擬機器(筆者注:虛擬機器,Virtual Machine,指透過軟體模擬具有完整硬體系統功能的、執行在一個完全隔離環境中的完整計算機系統。當前的技術發展中,虛擬機器可以透過指定的外部介面,對真實系統網路進行有效訪問)。
雖然已經離開老本行一年多了,但李棟樑的雙手在鍵盤上敲打的速度卻沒有半點的變慢。那畢竟是曾經的吃飯手藝,每一個程式碼、每一個操作命令,都像是鐳射蝕刻在腦溝上一樣,仍然記憶猶新。
虛擬機器透過物理網線成功連線上了書房裡的那臺電腦,李棟樑興奮地拍了拍手。
簡單地掃描了一遍後,李棟樑發現那臺電腦所使用的Linux系統版本實在是太舊,許多的0day漏洞(筆者注,0day漏洞,泛指計算機系統或軟體中能夠被破解的漏洞)都根本沒有打上補丁。於是他一邊飛快地敲打著程式碼,一邊向崔孃解釋道:
“這電腦雖然採用了圖形化的登陸介面,不過核心的系統實在是太舊了。剛剛我對這個系統的外部埠進行了一遍底層掃描,發現了十幾個0day漏洞。我現在寫一個簡單的木馬程式同時去攻擊幾個0day漏洞。等取得了這個系統的ROOT許可權之後,我就能隨意的控制這臺電腦了!”
崔孃雖然對李棟樑這段包含有大量專業術語的話聽得並不十分太懂,但也理解到李棟樑發現了這臺電腦的安全性可以說是千蒼百孔的。但她同時又表示出了自己的擔心:
“那個……電腦我不太懂。不過你確定那些是漏洞,不是陷阱嗎?”
話音剛落,李棟樑的膝上型電腦螢幕上突然變成了一片黑色,所有的字元都消失不見了,著實將他嚇了一跳!
“我去!真的被你說中了!那臺電腦裡竟然預設了陷阱式的攻擊性防禦機制!幸好我用了虛擬機器做接觸性登陸……”
說罷,李棟樑便在虛擬機器裡重新載入了作業系統,再次與書房裡的電腦進行了二次連線。
剛剛的攻擊失敗,說明了那臺電腦雖然表面上有著開放式的進入環境。但系統的安全環境佈置者卻在系統裡安放著一個像是看門狗一樣的安全策略:
我允許你進來隨便看看,但我隨時會放狗咬你。
於是,李棟樑進入了一個讓人難受的死迴圈:如果不重新進行漏洞掃描,那麼他將無法確定該從哪個位置去“黑”進這臺電腦;但如果繼續進行漏洞掃描,電腦上預設的安全策略便會對他的掃描進行逆向攻擊。
“怎麼了?搞不定嗎?”
聽見崔孃的發問,李棟樑只好向她解釋了現在的處境。雖然崔孃對電腦的認識只是上網和打字,但卻給了李棟樑一個另外的思路:
“嗯……駭客入侵這種東西我不懂。不過像你說的攻防策略什麼的,不就跟我們打架一樣嗎?總是要看見對方出招,看清楚了對方出的是什麼招,才能有防禦和反擊的策略,對吧?”
崔孃的話讓李棟樑茅塞頓開!於是他立刻在虛擬機器上斷掉了與目標電腦的連線,並在虛擬機器裡再設了一個虛擬機器,並透過這個二級的虛擬機器對書房的電腦進行了直接的掃描訪問。
由於這一次的操作是在一個二級虛擬機器裡進行的,受效能限制,訪問速度與執行速度都比之前要慢了不少。
但即使是這樣,這個二級虛擬機器在對書房電腦系統開始進行掃描的一分鐘後,又是一片黑屏。
看到了二級虛擬機器同樣被系統的防禦機制弄癱瘓了,李棟樑的臉上浮現出了會心的一笑。
他並未急於對二級虛擬機器進行再次載入,只是在一級虛擬機器上開啟了一個記載了二級虛擬機器遭受攻擊全過程的日誌文件,仔細地閱讀起來……
雖然從李棟樑和崔孃的眼中看來,二級虛擬機器被攻擊到系統崩潰只不過是一瞬間的事。但一級虛擬機器卻把攻擊的整個完整過程全部都紀錄了下來。
日誌文件中足足有六百多行是關於這個攻擊的紀錄描述。花了差不多十分鐘看完了這份文件後,李棟樑默默地蹲在地上,開始碼字了程式碼,口中還同時念念後詞……
“SYN/ACT應答……資料包……半連線重連……”
看著李棟樑忙碌的模樣,崔孃突然間有些心疼。
崔孃在遭遇了死去又活來的劇變之前,就是一個衣食無憂的富家女,從來都不曾為五斗米而擔憂,以致於她的生活安逸得在復活成為了回收員後,還為生活中突然增添了各種刺激與不確定性而感覺到了一絲興奮。
而李棟樑現在的模樣,像極了崔孃在過去的日子中所不能理解的那種每日為了明天的生活而努力的人。這樣的生活,崔孃只在文學作品中見過,卻是從來都沒有去感受過。
此刻,她終於明白到,為什麼李棟樑會在這末日中如此拼命。因為這個人在過去的日子裡早就習慣了拼命……
“搞定啦!”
李棟樑一聲興奮的拍手打斷了崔孃的各種聯想,主動地蹲到了他的身旁:
“怎麼了?能夠入侵那臺電腦了嗎?”
李棟樑指著螢幕上花花綠綠的程式碼串向崔孃解釋道:
“那臺電腦預設了一個防禦機制,就是當某個指定的漏洞被掃描到之後,就會觸發一個帶著大量無意義資料的洪水攻擊事件。這個事件會順著掃描器的埠進行大量無用資料反饋,從而使入侵端瞬間產生記憶體溢位而導致系統崩潰。
我現在在二級虛擬機器和一級虛擬機器之間設定了一個資料防火牆。當這個資料防火牆在偵察到大量無效資料試圖進入二級虛擬機器時,就會將這些資料分流到一個不存在的儲存區域裡。
這樣攻擊端就會因為攻擊資料沒有反饋紀錄而自行崩潰,整個防禦機制就會不攻自破了!”
崔孃雖然完全聽不懂李棟樑的解釋,但她知道自己的男人此刻就像一個孤獨的戰士,用著自己的所有計謀與策略去攻佔一座存放在陌生電腦裡的城池。他不需要任何援助的力量,只需要身邊的人默默支援。
於是她輕輕地摟住了李棟樑的腰,小聲給予了他一聲鼓勵:
“加油!”
回車鍵敲落後,螢幕裡的游標跳動了一行,繼續閃爍。接下來的,是漫長的等待……
……
在人類所不能目及的地方,是海量資料奔騰不息的數字通道。由代表著“1”和“0”的高電平與低電平所組成的億萬資料洪流蓄勢待發!
在李棟樑敲打下了回車鍵後,有如收到了衝鋒的命令,從二級虛擬機器裡踏上了遠征的道路,走過了一級虛擬機器,又順著資料線闖進了目標電腦的資料匯流排和硬碟之中!
一場看不見的攻防戰開始了……
……
當電腦的防禦策略偵察到了又一次的漏洞掃描後,立刻就根據既定的策略憑空產生了海量的無序程式碼,沿著前來掃描的資料走來的路直衝而上!
這些無序程式碼沿著由矽與銅所組成的導體飛速奔跑,最終找到了掃描資料所進來的埠,以同歸於盡的決心直湧而上!
而這個時候,李棟樑所設定的防火牆生效了!
防火牆就像一個站在資料埠前的魔術師一樣,朝這些氣勢洶洶的無序程式碼擺出了歡迎的手勢。程式碼們不疑有他,紛紛朝著魔術師所指的方向奔跑而去!
但這一次,他們走錯路了。每一個無序程式碼在鑽進了魔術師的口袋裡後,就像是海水灌進了黑洞,通通消失不見,落入了漆黑的深空。
而這個時候,放出這些無序程式碼的防禦機制慌了!
他明明放出了這麼多的程式碼,然而卻一直沒有收到程式碼成功對目標施行自殺式攻擊的回報!
為了實現自己防禦性攻擊的目的,他增強了無序程式碼的產生量。就像一臺製作程式碼的機器一般,開盡了最大功率,拼了老命去將這些用於自殺式攻擊的程式碼去生產出來!
可惜的是,在系統的另外一個安全策略的控制下,防禦策略只被給予了一定的算力。在他生產無序程式碼的需求在超越自身算力閾值的那一刻,防禦策略終於由於算力不足而崩潰了,整套系統也因此失去了保護!
這場驚心動魄且慘烈的程式碼攻防戰終於以攻擊方的完勝而告終。而在資料空間裡發生的一切,在現實世界裡,不過是半分鐘的時間……
……
“搞定!”
“那麼快?”
“當然!你不看看我是誰?”
李棟樑退出了二級虛擬機器,用一級虛擬機器重新登陸了系統,並順利地獲得了目標系統的ROOT許可權。
在調閱了系統的說明文件後,李棟樑的臉上露出了欣喜的表情!
他並未向崔孃說明自己發現了什麼,而是繼續敲打著鍵盤。十分鐘後,李棟樑再次重重地敲下了回車鍵。與此同時,他們身後的書架發出了一陣刺耳的金屬摩擦聲,緩緩向兩旁分開。
一條寬敞的通道進入了二人的眼簾……
找不到符合的作品。