為什麼在使用傳統特徵碼外, 也要使用關聯規則?

Signature( 特徵碼 )是用來檢測惡意行為值的資安產品。Correlation(關聯)是對事件流的處理,以識別數據量內的重要事件, 讓我們一起看兩者之間的共通和差異:

為什麼在使用傳統特徵碼外, 也要使用關聯規則? 

AT&T Cybersecurity的 Alien Labs團隊負責編寫的關聯規則,並每一天發布威脅情資的更新。當團隊中的研究人員發現新的惡意軟體家族或威脅時,我們總是找最佳方法來保護我們的客戶。

特徵碼是用來檢測已知惡意行為值的資安產品。例如:Snort / Suricata規則,防病毒簽名和YARA規則。

另一方面,關聯是事件流的處理,以便識別大量數據中的重要事件或事件模式。識別這些事件的邏輯在關聯規則中的定義。

關聯規則的好處:

  • 關聯規則是基於行為的,而不是基於特定的指標的,這使它們可以進行長期檢測,即使惡意軟體隨時間發生了變化,也可以識別惡意行為。
  • 它們可以用來映射來自不同數據源的事件,無論事件是來自網路,端點代理還是其他資安產品。這種跨平台功能使用來自不同來源的事件來執行更完整和更靈活的檢測。
  • 使用事件流的能力允許將上下文添加到檢測中,從而可以用來改善警報中反映的信息並有助於事件回應階段。

為了清楚地看到使用這些關聯規則的優勢以及它們通常如何補充傳統規則,我們將看一些示例,例如Baldr偷竊者,Ursnif銀行木馬和ALPC 0-day漏洞,以及如何找到最佳方法。

例子1:惡意軟體版本控制

在第一個例子中,我們將介紹惡意軟體家族如何隨著時間演變,以及行為和配置在版本之間如何變化。在這些情況下,簽章可能會失去其檢測標準並停止觸發警報。一個很好的例子是Baldr惡意軟體,該惡意軟體自2019年1月以來一直存在,並通過不同版本進行了重大修改。

Sophos報告, Baldr vs The World中,您可以在其中找到有關該惡意軟體的大量信息,還可以比較2.x版與3版的區別。如果我們分析一些示例以查看與之相關的網路連接,命令和控制伺服器,我們可以輕鬆地觀察每個版本發行版中引入的差異。

Baldr版本1.xx

Baldr的第一個發現版本是使用簡單的HTTP POST請求,其中包含受害者的信息(包含在URI中)。如您所見,很容易的編寫NIDS特徵碼 , 以檢測網路數據封包。

baldr1.jpg

Baldr版本2.x

在第二版或至少在2.2版及更高版本中,他們更改了先前的請求,使用XOR key對command和控制的通信進行加密。在這裡,我們可以看到最初信標,其中XOR key始終與以“;”定界符分隔的版本一起發送給受害者,使用特徵碼更難以檢測到但仍然是可能的。

baldr_version_2.jpg

Baldr版本3.x

最後,在第三個版本中,通信方法與第二個版本中使用的通信方法非常相似,但它們仍在使用XOR key。但是,他們用“〜;〜”改了分隔符,現在他們還發送了一些配置設置。這些變化迫使我們建立新的特徵碼 。

很明顯地,版本1.xx編寫的網路 特徵碼 ,不適用於版本2.x和3.x,對於2.x和3.x的簽章也會發生相同的情況。這種情況使我們認為,如果有新版本,則不會使用現有 特徵碼 進行檢測,並且每當發布新版本的惡意軟體時,我們都需要繼續研究和創立新的特徵碼 。

baldr_version_3.jpg

取而代之的是,我們可以嘗試觀察惡意軟體從初始攻擊媒介到最終command的所有動作,並控制通信並以關聯事件來建立檢測。根據對惡意軟體家族的研究,攻擊者使用了兩種不同的方法來分發和感染受害者:精心製作的ACE文件(利用WinRAR CVE-2018-20250漏洞)以及針對帶有CVE-2018-0802漏洞的Microsoft Office產品的RTF文檔。 

關聯規則可以幫助我們從初始訪問階段以及受害人系統中執行的操作中檢測到那些攻擊。這是偽相關規則的列表:

  • 從公司外部收到的具有相同發件人,主題或附件名稱的多個電子郵件,發給多個不同的收件人,並且附件的文件擴展名應包含在要監視的文件類型列表中。
  • 由WinRAR可執行文件刪除並執行的文件,尤其是如果該文件被刪除到用戶可寫文件夾中,或者壓縮文件來自電子郵件或瀏覽器下載。
  • 由Microsoft Office產品刪除並執行的文件,尤其是如果該文件被刪除到用戶可寫文件夾中,或者該文檔來自電子郵件或瀏覽器下載。

子2:具有許多指標的惡意軟體

有時,很難檢測到惡意軟體家族,因為它不使用HTTP進行信標,通信被隱藏或其他情況。當您無法檢測到通信時,一種常見的方法是跟踪所有惡意基礎結構以不斷更新指標,從而使其非常耗時且效率低下。Ursnif惡意軟體就是這種情況,這是一種銀行木馬,試圖竊取用戶信息,例如帳戶憑據。如果我們查看該惡意軟體的現有簽章,則會發現大量的NIDS 特徵碼 和YARA規則,它們試圖檢測樣本中存在的某些危害指標。

ursnif.jpg

另一方面,關聯規則可用於檢測行為中的惡意模式,並從上面討論的優點中受益。以下關聯規則可以檢測到Ursnif惡意軟體,而無需在出現新指標時進行更新或建立新特徵碼 。

  • 從外部公司收到的具有相同發件人,主題或附件名稱的多個電子郵件,發給多個不同的收件人,並且附件的文件擴展名應包含在要監視的文件類型列表中。(與第一個示例相同)
  • Microsoft Office應用程式建立一連串的可疑過程。
  • 一個合理的系統進程名由一個錯誤的父級進程建立(explorer.exe)。
  • 添加了具有自動啟動功能的註冊表項。
  • 刪除的文件帶有可疑的雙擴展名。

例子3:沒有現有特徵的新惡意軟體或攻擊

關聯規則優點的是,當新的惡意軟體或攻擊開始出現且沒有 特徵碼 可檢測到時,便會出現這種情況。在這些情況下,尋找關聯的常規規則,以查找通常不會在系統中發生的可疑行為即可。

為了解釋此例子,我們將討論影響Microsoft Windows系統的ALPC 0-day漏洞。此漏洞已公開發布,沒有任何補丁,許多系統都容易受到此漏洞的影響。由於這是本地特權升級(LPE),並且只有概念驗證(PoC)可用,因此網路和端點特徵碼不存在並且不足以檢測可能的利用。通過對用於執行特權提升的方法進行快速研究,可以檢測到威脅的關聯規則列表:

  • 從用戶可寫文件夾中刪除並以SYSTEM用戶身份執行的文件。
  • 將硬連結建立到文件並插入Task目錄,然後更改了同一文件的權限。
  • 建立新的可疑計劃任務。

重要事項

我們已經討論了當我們要創建檢測方法時關聯規則提供的好處和優點。但是,還需要考慮一些重要事項:安全性上沒有萬靈藥,最好保守一些,並補充各種方法和技術以提高檢測能力。盡可能使用常規特徵碼和IOC,因為它們的編寫和部署速度很快,並且具有很高的信心。

使用關聯規則的一些弊端是:

  • 如果設計不當,關聯規則很可能會產生誤報,因此您的團隊將需要時間和專業知識來對它們進行及時分類。
  • 花費的時間比特徵碼更多。
  • 僅提供例子是不夠的-您需要了解如何在入侵中使用它們。您需要了解行為並研究來自不同來源的大量事件。

Source: https://cybersecurity.att.com/blogs/labs-research/why-should-you-use-correlation-rules-on-top-of-traditional-signatures?Source=ESSZsPSPR00gensEM&wtExtndSource=20200204210000_attcyber_TWITTER_Business_N%2FA_Evergreen_N%2FA_APS+%E2%80%93+Cybersecurity_20200204_Organic_Brand_N%2FA_N%2FA_N%2FA_Awareness_No_attcyber_tw_