精選分類 書庫 完本 排行 原創專區
欣可小說 > 其他 > 白帽子 > 第3章

白帽子 第3章

作者:霍林 分類:其他 更新時間:2026-04-24 06:16:38

第3章 蜜罐------------------------------------------,“天網”基地地下一層。,也更冷。空調係統將溫度恒定在18攝氏度,是為了服務器散熱。霍林穿著林靜給的軍大衣,還是覺得指尖發涼。,裡麵裝著剛剛組裝完成的蜜罐係統。二十台服務器組成集群,通過光纖連接成一個獨立的網絡。機櫃側麵貼著標簽:“蜜罐實驗區-絕密”。。每個人眼睛都佈滿血絲,但冇人說累。“網絡拓撲確認完畢。”一個年輕技術員報告,“所有節點單向連接,物理光閘已啟用。數據隻能從入口進,不能從出口出。”“模擬支付介麵部署完成。”另一個技術員說,“用了央行提供的測試環境鏡像,和真實係統相似度99.7%。”,螢幕顯示著蜜罐的實時狀態:一切正常,等待連接。“攻擊流量引流配置好了嗎?”他問。:“防火牆規則已經修改,將來自柬埔寨IP段的偽裝流量,百分之十引流到蜜罐。比例不能太高,否則容易被察覺。”“百分之十夠了。”霍林說,“我們要的是樣本,不是全部。”。機櫃裡的服務器風扇同時加速,發出低沉的嗡鳴。螢幕上,數據流開始出現——綠色的代表正常訪問,紅色的代表攻擊流量。很快,紅色線條越來越多,像血管一樣在網絡拓撲圖上蔓延。“流量進來了。”林靜盯著螢幕,“第一個連接……是偽裝成支付寶交易的數據包。”。表麵看,它完全符合支付寶的介麵規範:正確的商戶號、合法的數字簽名、標準的JSON格式。但他在交易金額欄位發現了一個異常——金額是“0.01元”,但小數點後跟了二十個零。“這是緩衝區溢位測試。”霍林說,“攻擊者在試探係統對超長數值的處理方式。如果係統冇有做長度檢查,這個數字可能會溢位,導致內存錯誤。”,然後繼續觀察。接下來的半小時,蜜罐收到了上百種不同的攻擊試探:SQL隱碼攻擊嘗試、檔案包含漏洞探測、會話固定攻擊、甚至還有嘗試上傳Webshell的請求。

每一種試探,都精準地瞄準支付係統可能存在的弱點。

“這不是隨機掃描。”霍林對林靜說,“攻擊者對目標係統非常瞭解。他們知道用的是Oracle數據庫,知道應用服務器是Tomcat,知道API介麵的版本號。這是有內鬼,還是……”

他想起在矽穀時聽說過的一種攻擊手法:供應鏈滲透。黑客不直接攻擊目標,而是攻擊為目標提供軟件或硬體的供應商,在產品出廠前就植入後門。

“查一下支付係統的供應商清單。”霍林說,“特彆是數據庫中間件和API網關的提供商。”

林靜立刻去查。霍林繼續分析蜜罐捕獲的數據。他發現了一個規律:所有攻擊試探,都在嘗試觸發同一個函數——交易日誌記錄函數。

為什麼是日誌記錄?霍林皺眉。日誌通常隻記錄資訊,不執行敏感操作。除非……

他打開蜜罐模擬的日誌記錄模塊代碼,一行行檢查。突然,他瞳孔一縮。

找到了。

在日誌寫入檔案的那段代碼裡,有一個不起眼的字串格式化函數:sprintf。這個函數如果使用不當,會導致格式化字串漏洞——攻擊者可以控製格式化字串的內容,從而讀寫任意內存地址。

而這段代碼的寫法,恰好是危險的:sprintf(log_buffer, user_input);

用戶輸入直接被用作格式化字串。

“漏洞在這裡。”霍林指著螢幕,“但不是後門,是開發人員無意中留下的bug。攻擊者發現了它,正在嘗試利用。”

“能修複嗎?”林靜問。

“能,但需要修改源代碼,重新編譯部署。”霍林說,“支付係統的開發商是哪家?”

“金盾軟件,國企。”林靜調出資料,“他們的總部就在北京,我們可以直接聯絡。”

“不。”霍林搖頭,“先彆打草驚蛇。如果攻擊者已經知道這個漏洞,我們一修複,他們就會察覺蜜罐的存在。我們要利用這個漏洞,反過來追蹤他們。”

他有了一個大膽的想法。

“修改蜜罐的日誌記錄模塊。”霍林說,“保留漏洞,但在漏洞觸發時,不執行攻擊者期望的操作,而是執行我們預設的代碼——比如,在返回給攻擊者的數據包裡,隱藏一個追蹤信標。”

“追蹤信標?”林靜冇聽懂。

“一種隱蔽的標記。”霍林解釋,“在HTTP響應頭裡加一個特殊的Cookie,或者修改某個圖片檔案的畫素值,或者嵌入一段隻有特定設備能接收的超聲波信號。攻擊者的工具收到這些標記後,會在後續通訊中無意間攜帶它們,我們就可以反向追蹤。”

技術員們麵麵相覷。這個思路太刁鑽,也太冒險。

“如果被識破呢?”一個技術員問。

“所以我們不能用常見的追蹤手段。”霍林說,“要用他們想不到的。”

他想起在矽穀時參與的一個實驗項目:基於CPU微架構差異的設備指紋識彆。每台電腦的CPU,由於製造工藝的微小差異,在執行相同指令時,會有納秒級的時間差。這種差異就像人的指紋一樣,獨一無二。

如果能在蜜罐的響應中,嵌入一段精心設計的計算任務,讓攻擊者的電腦去執行,然後通過計算耗時反推CPU特征……

“給我兩個小時。”霍林說,“我寫一個腳本。”

他回到辦公室,關上門。窗外模擬的夜景已經切換到淩晨模式——深藍色的天空,幾顆星星,遠處有隱約的燈光。

霍林打開自己的加密筆記本電腦,連接基地的研髮網絡。他的手指在鍵盤上飛舞,代碼像流水一樣從指尖傾瀉而出。

這不是普通的編程,這是藝術。他要在幾十行代碼裡,實現一個完整的CPU特征提取演算法,還要把它偽裝成正常的網頁JavaScript,讓攻擊者的瀏覽器自動執行。

難點在於隱蔽性。代碼不能太大,否則會被安全軟件檢測;不能有明顯特征,否則會被攻擊者的人工審查發現;還要能在各種瀏覽器、各種操作係統上穩定運行。

他寫了一個小時,測試了三次,都失敗了。要麼代碼被瀏覽器攔截,要麼提取的特征不夠精確。

第四次嘗試時,他換了個思路。不直接測量CPU時間,而是測量內存訪問延遲。現代CPU都有多級緩存,訪問不同層級緩存的速度差異很大。通過設計特定的內存訪問模式,可以探測出緩存的大小和結構,這也是重要的設備特征。

這次成功了。代碼隻有5KB,看起來就像普通的頁麵統計腳本。但它在運行時,會悄悄執行一個緩存探測序列,然後將結果編碼成一個32位的雜湊值,隱藏在後續請求的Referer欄位裡。

霍林把代碼上傳到蜜罐服務器,配置好觸發條件:隻有當攻擊者嘗試利用日誌漏洞時,纔會返回這段特殊代碼。

“準備好了。”他在內部通訊裡說,“可以放開流量限製了。”

林靜將引流比例從10%提高到30%。更多的攻擊流量湧入蜜罐,螢幕上的紅色線條幾乎連成一片。

等待是煎熬的。霍林盯著蜜罐的訪問日誌,看著一條條記錄重新整理。大部分攻擊試探都失敗了——蜜罐模擬的係統雖然保留漏洞,但也做了安全限製,不會真的被攻破。

直到淩晨四點十七分。

一條特殊的請求出現了。它精準地利用了sprintf漏洞,傳入的格式化字串經過精心構造,試圖覆蓋內存中的函數指針,從而執行任意代碼。

蜜罐“中招”了——當然,是假裝中招。它返回了一個看似正常的錯誤頁麵,但頁麵裡隱藏著霍林寫的追蹤腳本。

攻擊者的工具收到了這個頁麵,解析,執行。五秒鐘後,蜜罐的日誌裡出現了一條新的記錄:來自同一個IP的後續請求,Referer欄位裡多了一串奇怪的編碼——c3ab8a137e1038d9a9a1f8c5e6b7a2d1。

“抓到了!”霍林幾乎從椅子上跳起來。

他解碼那串雜湊,得到了一組CPU緩存參數:L1緩存32KB,L2緩存256KB,L3緩存8MB。這是英特爾酷睿i7-9700K處理器的典型配置。

“攻擊者用的是一台搭載i7-9700K的電腦。”霍林說,“而且從請求間隔時間看,那台電腦在境外,延遲大約200毫秒。”

“能定位嗎?”林靜問。

“暫時不能,但有了這個指紋,隻要那台電腦再次出現,我們就能認出來。”霍林說,“而且,攻擊工具顯然有自動化功能,它會儲存會話狀態,包括我們植入的Cookie。下次它攻擊其他目標時,我們可能還能看到它。”

天快亮了。窗外模擬的天空漸漸泛白,基地裡的燈光自動調暗,切換到日間模式。

霍林靠在椅背上,長長地撥出一口氣。連續工作了十八個小時,他的大腦已經超負荷運轉,太陽穴一跳一跳地疼。但他心裡有一種久違的興奮——那是解出一道難題、打贏一場戰鬥的興奮。

辦公室門被推開,李處長端著早餐進來:豆漿、油條、茶葉蛋。

“聽說有進展?”他把早餐放在桌上。

霍林彙報了追蹤信標的成果。李處長聽完,沉默了一會兒。

“你比我想象的還要厲害。”他說,“但記住,這隻是開始。‘棱鏡’不是一般的黑客組織,他們背後有國家級的支援。你今天挫敗了他們一次試探,明天他們就會換一種方式。”

“我知道。”霍林咬了一口油條,酥脆,溫熱,“所以蜜罐要一直開著,而且要不斷升級。我們要讓他們以為漏洞還在,但實際上,每一個漏洞都是陷阱。”

“像捕獸夾。”李處長比喻。

“更像蜘蛛網。”霍林糾正,“靜靜地等,來了就粘住,然後順著線找到老巢。”

窗外,模擬的太陽完全升起來了,金色的光灑滿房間。基地裡,新一天的工作已經開始。主控大廳的螢幕上,全國網絡流量圖又開始活躍,早高峰即將到來。

霍林吃完早餐,洗了把臉,重新坐回電腦前。螢幕上,蜜罐的日誌還在實時重新整理。那條攜帶追蹤信標的IP,已經兩個小時冇有出現了。

但它一定會再來的。

就像獵人知道,受傷的野獸總會回巢。

霍林打開一個新的代碼檔案,開始編寫下一個陷阱。他的手指在鍵盤上敲擊,發出有節奏的聲響,像心跳,像鐘錶,像這個永不眠的基地裡,無數守護者共同的脈搏。

天亮了,戰鬥還在繼續。

目錄
設置
設置
閱讀主題
字體風格
雅黑 宋體 楷書 卡通
字體風格
適中 偏大 超大
儲存設置
恢複默認
手機
手機閱讀
掃碼獲取鏈接,使用瀏覽器打開
書架同步,隨時隨地,手機閱讀
收藏
聽書
聽書
發聲
男聲 女生 逍遙 軟萌
語速
適中 超快
音量
適中
開始播放
推薦
反饋
章節報錯
當前章節
報錯內容
提交
加入收藏 < 上一章 章節列表 下一章 > 錯誤舉報