2024年7月19日,澳大利亞出現了BSOD的報道,隨后英國、美國、印度、德國和其他國家也出現了類似的中斷。5000多個航班被取消,銀行業務暫停,醫療服務中斷,零售交易受阻。境外媒體稱此次事件是“史上最嚴重的”IT事故。本文分析了這次事件的原因及給人類帶來的教訓。
2024年7月19日,一場重大事件在全球IT基礎設施中掀起了沖擊波,影響了數百萬用戶,并擾亂了多個部門的重要服務。這一前所未有的事件是由網絡安全公司CrowdStrike的一個有缺陷的軟件更新引起的,導致全球微軟Windows系統出現災難性的藍屏死機(BSOD,即Blue Screen of Death的縮寫)循環。影響深遠:5000多個航班被取消,銀行業務暫停,醫療服務中斷,零售交易受阻。本文深入研究了該事件的技術復雜性、廣泛的影響以及從中獲得的寶貴經驗教訓。
事件
問題始于CrowdStrike Falcon傳感器更新,無意中導致Windows系統進入藍屏死機(BSOD)循環。具體的錯誤消息“DRIVER_OVERRAN_STACK_BUFFER”表明驅動程序中存在嚴重缺陷,導致系統反復崩潰,使受影響的機器無法操作。這個問題主要影響運行Windows 10和11的系統,這些系統使用CrowdStrike的端點安全軟件(EDR)來抵御網絡威脅。錯誤的更新觸發了驅動程序中的緩沖區溢出條件,其中多余的數據被寫入緩沖區邊界之外,損壞相鄰的內存。這種損壞破壞了正常的執行流,導致系統崩潰并進入BSOD狀態。BSOD循環阻止受影響的機器正常啟動,而是迫使它們進入一個連續的崩潰和重新啟動的循環。
來自CrowdStrike和第三方研究人員的技術分析
CrowdStrike很快發現問題的根本原因是他們的Falcon傳感器內核驅動程序存在缺陷。CrowdStrike首席執行官George Kurtz證實,該缺陷導致傳感器故障,導致緩沖區溢出和隨后的系統崩潰。他強調,這不是安全漏洞,而是在最新更新中引入的軟件缺陷。“獵鷹”(Falcon)傳感器更新包括旨在增強系統性能和安全性的更改。然而,不充分的測試導致部署了一個具有嚴重缺陷的驅動程序。根據網絡安全研究員Kevin Beaumont的說法,該更新包含了一個錯誤配置的內核驅動文件,該文件的格式不正確,導致Windows每次試圖加載驅動程序時都會崩潰。這突出了與沒有在不同環境中進行全面測試的更新部署相關的風險。CrowdStrike的工程師在公司論壇和社交媒體上發帖,提供技術細節和解決方案。他們解釋說,有問題的驅動程序文件,標識為“C-00000291.SYS。需要從受影響的系統中手動刪除,以停止BSOD循環。他們提供了詳細的說明來指導IT管理員完成恢復過程,包括啟動到安全模式,導航到CrowdStrike目錄,并刪除有故障的驅動程序文件。
安全研究員的見解
著名安全研究人員奧桑達·賈亞蒂薩(Osanda Jayathissa)對CrowdStrike的崩潰進行了詳細分析:
這是我對CrowdStrike崩潰的分析。幾家大公司使用該軟件作為EDR(端點檢測與響應)解決方案。在每臺Windows PC中,將安裝此代理來監視惡意活動。然而,昨天他們推出了一個更新和一個名為csagent的驅動程序文件。系統導致了這次崩潰。
驅動程序被寫入環0(ring 0)或內核,你的應用程序和Windows運行在環3(ring 3)即用戶區。在內核態(ring 0)沒有異常處理,如果你的程序有任何類型的錯誤,結果將是一個藍屏死機(BSOD)。您還可以訪問這里的任何內存,因為這里沒有操作系統來分配虛擬內存。
在Windows調試器時,寫一個無效地址看起來像是新手犯的錯誤。目前CrowdStrike在客戶門戶網站上發布了一個解決方案,它需要在安全模式或恢復模式下啟動。我不認為一旦電腦在每次重啟時都造成藍屏,你可以改變設置以安全模式啟動。對于恢復模式,這里的問題是,我不認為人們可以在公司這樣做,因為有密碼來防止用戶這樣做。
假設他們有一個補丁,如果機器每次重啟都在BSOD屏幕上,他們怎么能推送補丁呢?這將是最大的災難之一。微軟讓所有的驅動程序都在代碼審查后簽名,因為在內核驅動程序開發中,權力越大責任越大,我不認為開發人員會認真對待這一點。CrowdStrike的股價正在走下跌。
事件發生后,CrowdStrike的股價大幅下跌Jayathissa的分析強調了內核級驅動程序開發的關鍵性質,以及嚴格測試以防止此類災難性故障的重要性。
影響范圍
其影響是巨大而直接的。澳大利亞出現了BSOD的報道,隨后英國、美國、印度、德國和其他國家也出現了類似的中斷。該事件影響了全球的關鍵基礎設施和服務,凸顯了現代IT系統的相互依賴性。
航空公司:包括聯合航空、達美航空和美國航空在內的主要航空公司發布了全球地面停靠令,導致全球5000多個航班取消。機場面臨著嚴重的混亂,乘客經歷了長時間的延誤和取消。金融機構:像摩根大通這樣的銀行面臨著處理交易的延遲,因為員工無法訪問他們的系統。支付系統中斷,導致零售交易和自動取款機出現問題。醫療保健:醫院不得不取消非關鍵手術,并且在訪問患者記錄方面面臨挑戰。在某些情況下,911等緊急服務受到影響,延遲了響應時間,使關鍵操作復雜化。零售和公共服務:超市,包括英國的莫里森和維特羅斯,都經歷了支付系統的中斷。廣播網絡等公共服務中斷,影響正常運營和通信。政府和公共基礎設施:包括機場和火車站在內的政府服務受到影響,導致航班延誤和取消。該事件還影響了倫敦證券交易所(London Stock Exchange)等關鍵基礎設施,盡管受到干擾,但交易仍在繼續。
社交媒體反應
這一事件迅速成為社交媒體平臺上的熱門話題,用戶們分享了他們的經歷和沮喪。推特、Reddit和其他平臺上充斥著關于這種情況的表情包和幽默。#CrowdStrikeBSOD的標簽開始流行起來,用戶發布了他們的藍屏截圖,自嘲給自己帶來的麻煩,批評CrowdStrike的更新程序。
與微軟的關系
在CrowdStrike引發BSOD事件的同時,微軟也在處理自己的Azure云服務中斷問題。雖然最初被認為是相關的,但微軟證實這兩起事件沒有聯系。Azure的中斷獨立地影響了各種服務,增加了當天事件的總體混亂和復雜性。微軟的Azure云服務是許多組織的關鍵支柱,提供一系列基于云的服務,包括計算、分析、存儲和網絡。Azure的中斷中斷了對這些服務的訪問,使那些已經在努力解決由CrowdStrike引起的BSOD問題的組織面臨的挑戰更加復雜。這種同時發生的故障凸顯了全球IT基礎設施的脆弱性和相互關聯性。
CrowdStrike的反應
CrowdStrike的首席執行官George Kurtz承認了這個問題,并表示公司已經隔離了這個缺陷,并部署了修復程序。然而,他警告說,由于許多系統需要人工干預,恢復可能需要時間。微軟還與CrowdStrike合作,幫助受影響的客戶恢復系統。
緩解和解決辦法
對于受影響的用戶,CrowdStrike提供了詳細的補救計劃。主要的解決方法包括將系統啟動到安全模式,導航到CrowdStrike目錄,并刪除有問題的驅動程序文件(C-00000291*.sys)。這允許系統繞過BSOD并正常啟動。此外,CrowdStrike發布了關于在其高級事件搜索平臺中使用特定查詢識別和隔離受影響主機的更新指南。
方案1:
從受影響的虛擬服務器上卸載操作系統磁盤卷
創建磁盤卷的快照或備份,然后再繼續操作,以防止意外更改
將磁盤卷掛載到一個新的虛擬服務器上
導航到%WINDIR%\System32\drivers\CrowdStrike目錄
找到匹配“C-00000291*”的文件。,并刪除。
從新的虛擬服務器上卸載卷
將固定卷重新連接到受影響的虛擬服務器
方案2:
回滾到UTC時間0409之前的快照。
識別受影響的主機
CrowdStrike發布了一份名為“如何識別可能受Windows崩潰影響的主機”的綜合指南,以幫助用戶檢測和減輕錯誤更新的影響。該程序包括幾個步驟,以準確有效地識別受影響的宿主設備。
循序漸進的過程:
確定受影響的通道文件(Channel File):在高級事件搜索中運行查詢,搜索窗口設置為7天。該查詢識別受更新影響的特定通道文件版本:
#event_simpleName=ConfigStateUpdate event_platform=Win
| regex("\|1,123,(?<CFVersion>.*?)\|", field=ConfigStateData, strict=false)
| parseInt(CFVersion, radix=16)
| groupBy([cid], function=([max(CFVersion, as=GoodChannel)]))
| ImpactedChannel:=GoodChannel-1
| join(query={#data_source_name=cid_name | groupBy([cid], function=selectLast(name), limit=max)}, field=[cid], include=name, mode=left)
執行查詢以識別受影響的系統:使用上一步中受影響的通道文件號(channel file number)來運行另一個查詢。此查詢檢查在影響窗口期間在線并進行了有問題的更新的系統:
#event_simpleName=/^(ConfigStateUpdate|SensorHeartbeat)$/
event_platform=Win
| case{
#event_simpleName=ConfigStateUpdate | regex("\|1,123,(?<CFVersion>.*?)\|", field=ConfigStateData, strict=false) | parseInt(CFVersion, radix=16);
#event_simpleName=SensorHeartbeat | rename([[@timestamp, LastSeen]]);
}
| case{
#event_simpleName=ConfigStateUpdate | @timestamp>1721362140000 AND @timestamp < 1721366820000 | CSUcounter:=1;
#event_simpleName=SensorHeartbeat | LastSeen>1721362140000 AND LastSeen<1721366820000 | SHBcounter:=1;
*;
}
| default(value="0", field=[CSUcounter, SHBcounter])
| selfJoinFilter(field=[cid, aid, ComputerName], where=[{ConfigStateUpdate}, {SensorHeartbeat}])
| groupBy([cid, aid], function=([{selectFromMax(field="@timestamp", include=[CFVersion])}, {selectFromMax(field="@timestamp", include=[@timestamp]) | rename(field="@timestamp", as="LastSeen")}, max(CSUcounter, as=CSUcounter), max(SHBcounter, as=SHBcounter)]), limit=max)
| in(field="CFVersion", values=[0,31])
| LastSeenDelta:=now()-LastSeen
| LastSeenDelta>3600000
| LastSeenDelta:=formatDuration("LastSeenDelta", precision=2)
| LastSeen:=formatTime(format="%F %T", field="LastSeen")
| aid=~match(file="aid_master_main.csv", column=[aid])
| aid=~match(file="aid_master_details.csv", column=[aid], include=[FalconGroupingTags, SensorGroupingTags])
| FirstSeen:=formatTime(format="%F %T", field="FirstSeen")
| $falcon/helper:enrich(field=ProductType)
| drop([Time])
| default(value="-", field=[MachineDomain, OU, SiteName, FalconGroupingTags, SensorGroupingTags], replaceEmpty=true)
| case{
LastSeenDelta>3600000 | Details:="OK: Endpoint seen in past
經驗教訓
嚴格的測試:該事件強調了徹底測試的重要性,特別是對于安全軟件更新。部署前測試應該包括各種操作環境,以捕獲潛在問題。
分階段推出:實現分階段推出可以減輕大范圍的中斷。通過最初向一小部分用戶部署更新,公司可以在全面部署之前識別和解決問題。
事件響應:有效的事故響應協議至關重要。CrowdStrike的快速承認和隨后的修復對于管理危機至關重要,但人工干預的需求突出了需要改進的領域。
溝通:與受影響的各方進行透明和及時的溝通是必不可少的。CrowdStrike和微軟都提供了持續的更新,這有助于管理用戶的期望和行動。
結論
CrowdStrike引發的BSOD事件提醒我們,互聯的數字基礎設施存在固有的漏洞。隨著網絡安全威脅的不斷發展,旨在抵御這些威脅的系統的穩健性和彈性也必須提高。這一事件無疑將促使對最新部署戰略進行重新評估,并加強對全面測試和快速反應機制的迫切需要。
**本文借鑒了來自各種可靠來源的詳細信息和見解,包括最近CrowdStrike更新事件帶來的重大技術和運營挑戰。
作者:Benjamine;來源: OSINT網絡情報微信號
1、本文只代表作者個人觀點,不代表本站觀點,僅供大家學習參考;
2、本站屬于非營利性網站,如涉及版權和名譽問題,請及時與本站聯系,我們將及時做相應處理;
3、歡迎各位網友光臨閱覽,文明上網,依法守規,IP可查。
作者 相關信息
內容 相關信息
? 昆侖專題 ?
? 高端精神 ?
? 新征程 新任務 新前景 ?
? 習近平治國理政 理論與實踐 ?
? 國策建言 ?
? 國資國企改革 ?
? 雄安新區建設 ?
? 黨要管黨 從嚴治黨 ?