IT團隊避免中招的“神技能”,讓勒索軟件見鬼去吧!
原創【51CTO.com原創稿件】在過去幾年里,勒索軟件無疑讓那些惡意軟件的開發者們賺得盆滿缽滿。勒索軟件的各種典型代表包括:2013 年的 CryptoLocker、2017 年 5 月的 WannaCry 和 2017 年 6 月的 NotPetya。
它們的受害者包括各大電話公司、英國國家醫療服務(NHS)、以 FedEx 為首的快遞公司、本田和雷諾之類的汽車制造商、以及烏克蘭國家機構。
這些攻擊目標往往是并無針對性,而且如果不加以防范的話,大多數企業在未來的某個時候還可能面臨同類的威脅。
本文分為如下四部分對勒索軟件進行深度剖析:
- 都是“比特幣”惹的禍:勒索軟件基本概念與原理
- “零容忍”地識別:IT 團隊如何識別出自己的系統是否已被感染
- 確認過眼神,該行動了:在發現中招后應采取的各個步驟
- 未雨綢繆,管好“一畝三分地”:做好防范,減小被攻擊的可能
都是“比特幣”惹的禍
什么是勒索軟件?
勒索軟件是一種快速傳播的惡意軟件,它可以加密計算機上的各種文件以換取贖金。
它通過鎖定屏幕、鍵盤或文件,攻擊者能夠阻止或限制用戶訪問自己的系統,并通常以索取付款(一般是比特幣之類的電子貨幣)的方式,換取文件或系統的解鎖密鑰。
在少數情況下,就算贖金已支付,勒索軟件也無法解鎖文件,或者文件內容在加密時就已被混亂,導致其永遠無法再被訪問。
同時,還有另一種風險存在:勒索軟件在收到付款之后,可能在影響過的系統上留下痕跡,以便未來再次發起加密攻擊。
與比特幣的關系
眾所周知,比特幣是一種全球性的加密貨幣。由于它能夠提供匿名性,因此常被作為贖金支付的首選方式。
鑒于系統中沒有中間方(如銀行或信用卡公司)的介入,因此交易直接發生在兩個用戶之間。
什么是電子贖金條?
與現實生活中的贖金條或勒索信類似,這種電子提示是給受害者或第三方留下的,告知他們攻擊者已劫持了某些文件。
因此,在惡意軟件體系中,它通常能明確地指示受害者如何通過轉賬(一般是比特幣),以換取對被加密文件的破解或繼續訪問。
贖金條可以有多種形式,這當然會限制計算機的繼續啟動,但最常見有:
- 用戶桌面上新增可打開的文件
- 新的桌面墻紙或
- 引導啟動時的醒目消息
圖 1:WannaCrypt 贖金條示例
那么應該付款嗎?
當然不!因為如果支付了贖金,您最終將助長該惡意軟件產業,給他們去攻擊更多的無辜受害者提供資助。
同時,如果您被識別為愿意支付贖金的人,您可能在未來再次成為受害者。就算您付清了贖金,實際上也不能保證一定收到恢復數據的解密密鑰。
此外,一些“假的”勒索軟件變體,甚至都無法有效地真正加密數據,何況它們中的一些可能已經被破解,并且市面上已有了解密工具。
應該引起關注
在過去的幾年里,勒索軟件已經成為了大多數企業與個人系統的重大威脅,一些不那么舉足輕重的電腦也可能會中招。
而且,因為家庭用戶不一定有到位的備份策略,所以針對個人電腦的攻擊會更為常見。
勒索攻擊的后果一般是非常嚴重的,除了感染可能導致業務的中斷之外,勒索軟件攻擊所造成的經濟損失還會導致:
- 代價高昂的響應與調查
- 災難公關處理
- 敏感數據泄漏的相關法律行為
- 可能違反 DPA(數據保護法案)或 GDPR(通用數據保護條例)所支付的罰金
最重要的是,企業可能遭受到嚴重的聲譽損失、失去現有或潛在客戶、并長期削弱其品牌形象。
此外,勒索軟件的目的也并不總是靠贖金牟利。在最近的一些案例中,人們發現某些勒索軟件只是某些其他惡意目的的“面紗”。
它們給傳統的網絡攻擊和數據盜竊提供了掩護,通過使得 IT 團隊忙于應對顯著的勒索軟件感染事故,而限制或破壞了系統的整體效率。
如何會被感染?
勒索軟件最常見的感染媒介是網絡釣魚,即通過誘惑用戶去點擊電子郵件中的惡意鏈接、附件或社交網站上的信息,電腦和移動設備就會被感染。
其他感染方式還包括:
- Drive-up 攻擊,受害者打開了掛馬的網站或訪問惡意組件,如點擊廣告時勒索軟件就會自動進行安裝。
- Watering hole攻擊,水坑攻擊,即攻擊者猜測或觀察一些常被使用的目標網站,將惡意軟件植入其中。
“零容忍”地識別
雖然用戶看到贖金條是最為明顯的被感染跡象,但是勒索軟件攻擊在早期階段并不那么明顯。
惡意軟件作者經常將勒索軟件構造為:等到加密完成之后,再讓受害者知道,這消耗了受害者及時限制攻擊影響的寶貴時間。
在多數情況下,一旦業務環境受到了感染,勒索軟件就可以通過網絡共享的途徑,在后臺有條不紊地加密它有所有權訪問的各種文件。
勒索軟件的直觀識別,通常始于用戶報告 IT 團隊某個文件已被損壞,或被創建了未知的文件擴展名。然后 IT 團隊接手查找感染源,以控制正在進行的攻擊,并遏制其影響。
以下部分旨在為 IT 團隊提供指導,以應對正在進行的勒索軟件感染、并標注出那些是被最終用戶發現的感染源。
無論感染是正在繼續還是已經停止,這些任務都可以被并行執行,同時也能通過組合判斷來消除誤報。
查看安全警報
請善用已經部署到環境的現有安全工具,包括查看防病毒軟件(AV)的日志,入向電子郵件和代理設備上的日志警報。
雖然您會碰到大量的數據,但是這些可以與后面提到的其他任務相關聯,以提高結果判斷的準確性。
從用戶處獲取的信息
我們時常會忽略通過咨詢 IT 支持人員或用戶來確定事故的根源,因為他們對于日常工作中出現的異常現象會更敏銳、更具體。
您最好能提供一個單獨的聯系點,如某個郵件地址組或支持電話號碼,以便用戶直接報告問題,從而避免出現各自去頻繁地呼叫 IT 支持人員,而耽誤了他們實施調查的寶貴時間。
我們可以指導用戶按照如下的檢查表,逐條報告問題:
- 是否有無法被打開/被找到/被損壞的文件?
圖 2:文件無法打開
- 是否出現奇怪擴展名的文件?
- 桌面背景是否被改為贖金條字樣?
圖 3:桌面背景被修改
- 是否無法啟動并顯示贖金單的計算機?
調查人員可以根據以下問題來進一步詢問用戶:
- 是否在事發前打開過任何新的文檔?
- 是否點擊了電子郵件中的附件或鏈接?
- 最近是否有任何軟件出現過崩潰?
- 是否訪問了任何陌生網站?
- 網站是否彈出過與加密有關的窗口?
圖 4:NanoLocker 的示例
雖然這會產生許多“噪音”,但是這些不但是事故的第一手資料,同時也能培養用戶觀察與報告問題的基本意識。
文件服務器是否被感染?
單從無法訪問的角度來看,我們無法準確定位自己的文件共享服務器或主機是否已被感染。
因此請遵循以下步驟來予以判斷:
- 在文件服務器上運行防病毒軟件的掃描。
- 查看那些未被共享的路徑,如本地桌面和系統盤。如果這些位置上都有被感染/加密的文件,則文件服務器很可能已被感染。
- 查詢未知進程的列表(最好能與以前采集過的正常基線相比較)。
- 如果將文件服務器置于脫機狀態,加密情況會停止蔓延嗎?
檢查文件所有權
為了加密,勒索軟件必須打開并寫入文件,這就意味著文件的所有權會被更改成受感染的用戶。
另外,贖金條也同樣需要有受感染帳戶的權限。識別所有者的最快方法就是打開被加密文件的屬性,在“詳細信息”選項卡中查看其所有者。
圖 5:識別所有者的用戶名
你也可以用如下 PowerShell 命令來進行查詢:
- Get-Acl ‘.\2017-finance_report.doc.wncry’ | Select Owner
我們可以通過手頭的用戶名來直接聯系相關用戶,然后通過查詢活動目錄,以獲知用戶登錄的計算機名稱。
雖然活動目錄本身本地并不提供此項操作,但是我們可以使用以下的腳本來實現。當然,根據域的大小不同,該腳本的運行時間也有所差異。
- $username = "infected_username"
- $computers = Get-ADComputer -Filter 'Enabled -eq $true' -Properties Enabled | Select Name
- foreach ($comp in $computers) {
- $Computer = $comp.Name
- $ping = new-object System.Net.NetworkInformation.Ping
- $Reply = $null
- $Reply = $ping.send($Computer)
- if ($Reply.status -like 'Success'){
- $proc = gwmi win32_process -computer $Computer -Filter "Name = 'explorer.exe'"
- ForEach ($p in $proc) {
- $temp = ($p.GetOwner()).User
- if ($temp -eq $Username){
- write-host "$Username is logged on $Computer"
- }
- }
- }
- }
另外,用戶名也可以作為篩選的條件,來獲取某個用戶當前所打開的文件列表。
當前文件共享會話
如果攻擊針對的是網絡共享,那么對于打開文件和當前會話的查詢則非常有用。
那些具有多個連接的文件集會特別可疑,它們應該正在創建未知文件類型的文件。
要想顯示當前會話,請打開“計算機管理”,用“系統工具→共享文件夾→會話”(如圖 6)和“系統工具→共享文件夾→打開文件”(如圖 7)來查看當前的各種文件共享和遠程連接。
圖 6:系統工具→共享文件夾→會話
圖 7:系統工具→共享文件夾→打開文件
同樣,你也可以使用 PowerShell 命令來查詢打開的文件。
如果已知惡意軟件的文件擴展名,您可以添加查詢參數(-Match“extension_of_encrypted_files”),以限制返回結果的數量:
- Get-SmbOpenFile | Where-Object -Property ShareRelativePath -Match "extension_of_encrypted_files" | Select-Object ClientUserName,ClientComputerName,Path
另外,您可以根據用戶名來篩選 Get-SmbOpenFile 的輸出結果:
- Get-SmbOpenFile | Where-Object -Property ClientUserName -Match "infected_username" | Select-Object ClientComputerName,Path
關聯文件的訪問
識別出含有被加密的文件的共享路徑,與用戶組屬性之間的關聯。例如,如果財務共享文件夾里的文件被加密,并且只有財務用戶才能有權訪問,那么感染源很可能使用的是財務用戶帳戶。
同時,如果有多個受影響的共享路徑,那么確定哪個用戶組同時有多個訪問權限是至關重要的。
例如:如果財務和銷售的共享盤里的文件都被加密了,那么感染源很可能是財務用戶,因為只有他們部門才有權訪問這兩個路徑。
圖 8:財務部用戶可訪問兩個路徑
有針對性的防病毒定義
您的防病毒供應商通常可以幫助您,為加密文件所關聯的文件擴展名創建有針對性的定義更新(或手動創建特征簽名)。這將有助于調查人員確定哪些系統受到了感染。
定義更新通常需要設置警報日志,而不是刪除或隔離文件,否則在能夠解密時,您的重要文件就已經丟失了。
該更新應該能夠被推送到所有系統中,以獲取被感染的系統列表,以及識別感染源。
在與防病毒供應商聯系時,您可以涉及到如下方面,以便他們對您當前的情況有所了解:
- 描述遇到的問題,包括要訪問和被損壞的文件。
- 描述當前針對感染所采取的措施,包括是否已將主機與網絡連接斷開,或已確定了所涉及到的用戶。
- 描述被加密的文件及其擴展名。
- 描述被加密的文件位置,是在共享文件夾還是用戶的電腦上。
- 描述業務規模和受影響主機的數量。
檢查連接互聯網的主機
許多案例證明:那些面向外部提供終端服務、和遠程桌面的主機最容易被惡意軟件所感染。各類攻擊者每天都會掃描數百萬個 IP 地址,以尋找易受攻擊的系統。
通過檢查自己系統中這些服務的最近登錄情況,您可以確定那些頻繁使用網絡連接的帳戶,并限制感染的橫向傳播。
勒索軟件樣本
在調查期間,響應與分析團隊通常會將潛在的惡意樣本提交到事先設計好的沙箱中,進行快速自動的分析。這在很多情況下為分析工作提供了一個很好的起點。
名為 CAPE(Configuration and Payload Extraction,配置和有效負載提取)的開源工具會專門構建出上下文環境、并快速地分析輸入樣本是否為惡意。
如果在目標網絡中發現了未知的可執行文件,你還能夠將其上傳到 https://cape.contextis.com/submit/ 進行深入分析。
以下是特別針對勒索軟件的 CAPE 公開實例。它們分別展示了將文件寫入磁盤,以及更改用戶文檔擴展名等行為。
- WannaCryptor: https://cape.contextis.com/analysis/7240/
- CryptoShield: https://cape.contextis.com/analysis/4509/
- Locky: https://cape.contextis.com/analysis/3579/
- BadRabbit: https://cape.contextis.com/analysis/3007/
- NanoLocker: https://cape.contextis.com/analysis/806/
如果您想構建自己的 CAPE 實例,也可以使用 GitHub 上的鏈接:https://github.com/ctxis/CAPE
確認過眼神,該行動了
無論是您自己在電腦上發現了令人討厭的贖金條,還是您的員工報告了可疑的感染,您都需要迅速采取一些步驟來控制和修復,以減少損失。
下面分兩部分來具體介紹:
- 針對企業內部 C 級別的人員,給出一般性的建議和采納的步驟,最大限度地減輕攻擊的后果。
- 針對內部 IT 團隊的具體處理實務,大家可以直接對號入座。
給 C 級別的建議
不要驚慌,不要付款:
- 要知道,在您之前許多組織都遇到過,所以請深吸一口氣,這并不意味著您明天會上頭條。
- 不要草率為了面子而支付贖金,在很多情況下,贖金條上的鏈接很可能會構造出另一個網絡釣魚的機制。
通知您的 IT 團隊,并考慮獲得外部幫助:
- 立即通知您的 IT 團隊,以確保盡快采取措施。
- 您也可以考慮打電話給外部專家。在很多情況下,具有網絡事件響應經驗的專業安全公司會比內部 IT 團隊更擅長處理此類事件。他們將能夠調查問題的嚴重程度,并確定下一步需要采取的措施。
迅速行動,并制定公關計劃:
- 迅速的響應對于減少攻擊的進一步影響是至關重要的。建議組織針對此類攻擊制定演習計劃,以確保其有效性。
- 及時將信息傳遞給外部媒體。建議創建適當的通信模板或聲明,以便按需發布。
確保符合法規和法律的要求:
- 注意:勒索軟件也可能會影響到您的部分客戶數據。在這種情況下,您需要遵守相應的監管和法律要求,如數據保護法(DPA)和通用數據保護條例(GDPR)。
這就意味著您必須在意識到數據泄露的 72 小時內通知主管部門,以及受影響的個人,以避免受到處罰。
給 IT 團隊的技術指導
主要任務
下面列出了可應用于勒索軟件感染場景的各項技術步驟:
與網絡進行物理隔離,并關閉已識別的主機:這是一個關鍵性的步驟,應該盡快完成。鑒于最近蠕蟲類勒索軟件的流行(如 WannaCry 利用了 Windows 核心組件中的漏洞),如果缺少此步,企業將“如臨大敵”。
在實踐中,我們應該執行一些經過了充分測試的流程,如某種網絡訪問控制(NAC)的方案。
在需要時,可將主機與網絡的連接斷開,并提醒用戶會出現無法訪問共享盤的情況。
從網絡中斷開被加密的共享盤,或禁用寫入權限:此舉可以抑制任何新的文件被加密。
如果網絡共享確實無法斷開的話,請盡可能地根據調查結果撤銷對共享盤的寫入權限,以便用戶仍可以只讀的方式訪問幸存的文件。
下一步是要確保加密進程已被停止。如果沒有,則感染很可能在于服務器端,因此應當及時關閉服務器。
次要任務
為了限制感染的傳播范圍,并隔離源主機,我們可以采取如下步驟來予以減緩:
識別勒索軟件家族:用沙箱進行分析,識別勒索軟件的變種與類型會是一個復雜的過程,因此我們需要用到各種工具和信息。
其中包括:Context 的 CAPE(https://cape.contextis.com/)沙箱,它提供對惡意軟件樣本的詳細技術分析;Chronicles 的 Virus Total 則(https://www.virustotal.com/)提供了更為全面的描述。
用 Google 檢查文件擴展名:如果該軟件已經存在了一段時間,那么在網上會有大量可用的信息。我們通過搜索文件擴展名,就能識別出勒索軟件的家族類型。
另外,通過諸如 https://id-ransomware.malwarehunterteam.com/ 這樣的第三方網站,我們也能夠快速地通過勒索條、加密文件的樣本來確定被感染的類型。
清理:在重新連接回網絡之前,將主機恢復到之前的“干凈”狀態是非常必要的。
具體操作包括:完全擦除干凈系統,從“黃金映像”中恢復,而不僅僅只是刪除已知的感染文件那么簡單。
隨著虛機技術的發展,現在重新鏡像的速度非常快,并且這是首選的可靠清理方法,尤其是在面對惡意軟件已影響到硬盤引導扇區的時候。
恢復到已知安全日期的文件:公司的備份策略會影響到恢復的進程,因此需要有一個經過良好測試與實施的日常備份記錄,以供不時之需。
另外如下面鏈接所示,一些防病毒供應商或免費工具網站也能提供第三方工具,以識別勒索軟件家族中某些加密機制的弱點,并實現解密的服務。
https://success.trendmicro.com/solution/1114221-downloading-and-using-the-trend-micro-ransomware-file-decryptor
當然,如果發現備份記錄失效的話,我們還可以將被加密的文件經過掃描之后,再傳輸到一個帶有最新防病毒軟件的干凈系統之上,以便后續處理。
未雨綢繆,管好“一畝三分地”
只要惡意軟件作者能夠持續獲利,那么勒索軟件的攻擊程度與范圍就會不降反升。因此,企業的安全團隊應時刻做好各種事件響應的準備。
下面我們列出了一些有助于最大限度地降低業務威脅的建議:
- 采取切實可行的預防措施,持續保護 IT 基礎架構及其持有的數據,例如:我們可以模擬運行各種攻擊的場景,以測試和評估自身的安全性。
- 采用“深度防御(defence-in-depth)”的策略,以減少風險的暴露、并阻止惡意軟件在內網中的傳播。
其中包括:防火墻和電子郵件安全產品可以阻止已知的惡意發件人、并去除已知的惡意附件類型;瀏覽器中的廣告攔截器和腳本攔截器能夠在用戶端各司其職。
而新的“沙盒”隔離技術則可以阻止從釣魚鏈接、惡意廣告、網絡驅動器和“水坑”中下載并執行勒索軟件。
- 實施嚴格的備份制度、持續備份數據、并將其存儲到受感染的系統所無法訪問到的多個位置(包括脫機),以確保在發生攻擊時不會造成數據的丟失。同時,我們還應定期測試這些系統的訪問性,而且最重要的是定期測試備份的完整性和恢復流程的可行性。
- 通過定期更新系統的補丁程序、并消減漏洞被利用的可能性,來保障自己網絡與系統的安全態勢。
- 通過考慮如何增強技術系統與流程的恢復能力,來為最糟糕情況的發生做好準備,進而保證您的關鍵系統在被勒索軟件鎖定時,仍能繼續運作。
- 制定事件的響應計劃,并定期進行測試,以不斷尋求改進。當然,如果您沒有此項內部技能的話,可以外包或尋求外部電腦取證專家的服務。
同時,對于違規所可能引起的公眾利益受損,您應當確保有適當的溝通計劃,以及具有及時通知媒體的能力。
- 開展員工意識培訓。確保您的員工充分了解自己可能面臨的威脅,和常見的攻擊方式(如:釣魚郵件等)。
【51CTO原創稿件,合作站點轉載請注明原文作者和出處為51CTO.com】