他早就問(wèn)過(guò)豆包了,歷史資料顯示,08年奧運(yùn)期間雖然遭受了數(shù)以億計(jì)的攻擊,但核心系統(tǒng)固若金湯,直到閉幕式結(jié)束,連個(gè)網(wǎng)頁(yè)都沒(méi)卡過(guò)。
“這幫人就是太緊張了。”夏冬把怪味豆咽下去,然后又把目光移回了李寧飛天的畫(huà)面上,“這就是典型的考前焦慮癥,我就不一樣了,我是那個(gè)手里拿著標(biāo)準(zhǔn)答案進(jìn)考場(chǎng)的人。”
他確實(shí)有這個(gè)底氣。
然而,在這個(gè)世界的某個(gè)角落,蝴蝶扇動(dòng)了一下翅膀。
瑞典,斯德哥爾摩。地下室。
埃里克坐在那把人體工學(xué)椅上,房間里沒(méi)有開(kāi)燈,只有面前三塊屏幕散發(fā)著冷光,映照著他那張蒼白得近乎病態(tài)的臉。
他手里拿著一杯早就涼透的黑咖啡,眼睛里卻燃燒著一種奇異的狂熱。
屏幕上,無(wú)數(shù)行代碼正在瘋狂滾動(dòng),那是他最新編寫(xiě)的攻擊腳本。
“GraphLab……”埃里克喃喃自語(yǔ),手指無(wú)意識(shí)地在桌面上敲擊著。
那個(gè)來(lái)自東方的開(kāi)源項(xiàng)目,給了他太多的靈感。那個(gè)叫“Dong Xia”的人,在代碼架構(gòu)里展現(xiàn)出的一種對(duì)圖計(jì)算的理解,讓他這個(gè)自詡為神的人都感到了一絲戰(zhàn)栗。
“既然這個(gè)神秘的國(guó)度,給了我這么好的工具,那我送你一份回禮,不過(guò)分吧?”
埃里克嘴角勾起一抹神經(jīng)質(zhì)的笑意。
此時(shí),加密頻道里閃爍起紅燈。
【毒蝎:第一波佯攻開(kāi)始。所有人,掩護(hù)宙斯。】
北京,中關(guān)村。
指揮大廳里的氣氛驟然一變。
“來(lái)了!”
負(fù)責(zé)外圍監(jiān)控的數(shù)據(jù)分析師林雪聲音清冷,像是一把手術(shù)刀劃開(kāi)了沉悶的空氣,“境外IP激增,主要來(lái)自北美和東歐肉雞群,流量峰值瞬間突破300G,正在沖擊應(yīng)用層防火墻!”
“常規(guī)CC攻擊。”攻防專家雷震冷笑一聲,他那身戰(zhàn)術(shù)T恤下的肌肉微微緊繃,“這種手段,也就是給咱們撓癢癢。楊頭,不用動(dòng)用清洗中心,本地策略就能吃掉。”
楊建沒(méi)說(shuō)話,只是點(diǎn)了點(diǎn)頭。
雷震的手指在鍵盤上飛快敲擊,像是在彈奏一首激昂的進(jìn)行曲。
“開(kāi)啟黑洞路由牽引,清洗異常包。調(diào)整防火墻策略,限制單IP連接數(shù)……”
隨著雷震的操作,大屏幕上原本開(kāi)始泛紅的邊緣迅速退去,那些洶涌而來(lái)的流量就像是撞上了一堵無(wú)形的嘆息之墻,瞬間消弭于無(wú)形。
“搞定。”雷震松開(kāi)手,不屑地撇撇嘴,“這幫人就這點(diǎn)本事?看來(lái)今晚能睡個(gè)好覺(jué)了。”
辦公室里,夏冬也看到了這一幕。
“這對(duì)手也就是個(gè)程咬金,三板斧。”夏冬搖了搖頭,心想果然跟歷史上一樣,雷聲大雨點(diǎn)小。
他打了個(gè)哈欠,準(zhǔn)備去把那包還沒(méi)拆封的薯片拿過(guò)來(lái)。
就在這時(shí),斯德哥爾摩的埃里克,輕輕按下了回車鍵。
“只有這種程度的噪音,才配得上我的獨(dú)奏。”
第二輪攻擊,無(wú)聲無(wú)息地到了。
這不是海嘯,而是一根針。
指揮大廳里,原本平穩(wěn)下來(lái)的各項(xiàng)指標(biāo),突然出現(xiàn)了一種詭異的波動(dòng)。
“不對(duì)勁。”一直盯著底層協(xié)議數(shù)據(jù)的技術(shù)統(tǒng)籌季晉突然皺起眉頭,推了推鼻梁上的眼鏡,“流量沒(méi)有增加,甚至還減少了,但是……Web服務(wù)器的線程數(shù)在瘋漲!”
“什么?”雷震猛地回頭,“我看不到異常流量!”
“不是流量攻擊!”季晉的聲音里透著一絲慌亂,“所有請(qǐng)求都是合法的!每一個(gè)包都完全符合HTTP協(xié)議,防火墻根本不攔!但是這些連接……它們不傳輸數(shù)據(jù)!”
“什么意思?”楊建沉聲問(wèn)道。
“他們?cè)凇x’!”季晉的手指開(kāi)始顫抖,“他們發(fā)送一個(gè)合法的GET請(qǐng)求,服務(wù)器響應(yīng)了,然后他們以每秒鐘只接收一個(gè)字節(jié)的速度讀取數(shù)據(jù)!”
“我們的服務(wù)器為了維持這個(gè)連接,必須保留完整的線程資源!”
“草,是Slowloris的變種嗎?”雷震罵了一句,“切斷所有超時(shí)連接!”
“沒(méi)用!”林雪的聲音緊接著響起,語(yǔ)速極快,“對(duì)方利用了TCP滑動(dòng)窗口的一個(gè)極冷門的機(jī)制,他們偽造了窗口大小為0的通告,讓我們的服務(wù)器誤以為客戶端忙碌,主動(dòng)進(jìn)入等待狀態(tài)!”
“這是協(xié)議層面的合規(guī)等待,防火墻默認(rèn)策略根本不認(rèn)為是攻擊!”
屏幕上,代表服務(wù)器負(fù)載的曲線開(kāi)始以一種驚人的速度攀升。
80%……90%……
雖然流量極低,但CPU和內(nèi)存卻被迅速耗盡。這就像是成千上萬(wàn)個(gè)客人涌進(jìn)飯店,每個(gè)人都點(diǎn)了一杯白開(kāi)水,然后坐在那里一小口一小口地抿,抿上一整天,真正的食客根本進(jìn)不來(lái)!
“快想辦法!”楊建的煙終于被他捏斷了。
“改內(nèi)核參數(shù)!”林雪當(dāng)機(jī)立斷,她那張冷峻的臉上第一次出現(xiàn)了細(xì)密的汗珠,“必須在協(xié)議棧層面動(dòng)手腳。”
“我們要手動(dòng)修改連接時(shí)間,強(qiáng)制回收這些半死不活的連接,不管合不合規(guī),全殺了!”
“那樣會(huì)誤傷正常用戶!”季晉喊道。
“現(xiàn)在顧不上了!要么斷臂求生,要么全死!”
林雪沒(méi)有廢話,直接搶過(guò)控制權(quán),十指如飛,輸入了一串極長(zhǎng)的指令。
回車。
屏幕閃爍了一下。
那些如同附骨之疽般的僵尸連接,被強(qiáng)制切斷。負(fù)載曲線在觸頂?shù)那耙幻耄K于停住了,然后緩緩回落。
“呼……”
整個(gè)指揮大廳里,響起了一片整齊的呼氣聲。
雷震擦了一把額頭上的冷汗,心有余悸:“這幫孫子,太陰了。居然利用協(xié)議棧的合法機(jī)制來(lái)搞事,這手法……”
楊建的臉色陰沉得能滴出水來(lái):“都打起精神!這絕對(duì)不是結(jié)束。”
夏冬在辦公室里,也看到了敵人的手段,琢磨了一下,也明白了是怎么回事。
他看著左邊屏幕上剛才那驚心動(dòng)魄的數(shù)據(jù)波動(dòng),眉頭微微皺起。
“不對(duì)啊……”
他記憶里,08年雖然有攻擊,但絕對(duì)沒(méi)有這種利用TCP協(xié)議棧底層漏洞的高端操作。
這種手法,更像是幾年后才流行的“慢速攻擊”流派。
“難道是因?yàn)槲遥俊毕亩睦锟┼庖幌隆K肫鹆四莻€(gè)所謂的“蝴蝶效應(yīng)”。
如果是因?yàn)樽砸训闹厣瑢?dǎo)致技術(shù)線發(fā)生了某種微妙的偏移,或者讓某些黑客提前進(jìn)化了……
那這就麻煩了。
夏冬把手伸進(jìn)抽屜夾層,摸到了那部微涼的手機(jī)。
還沒(méi)等他把手機(jī)拿出來(lái),異變突生。
如果說(shuō)剛才那一波是針刺,那么接下來(lái)這一次,就是直接對(duì)著心臟開(kāi)了一槍。