用AI威脅狩獵的十種方法

網絡安全行業的人工智能浪潮已經到來,但人工智能并不會取代網絡安全人才,而是讓他們變得更強大。以下,我們將以ChatGPT為例,介紹用大語言模型人工智能技術提升威脅獵人獵殺技能的十種方法。
01
對惡意PowerShell去混淆
攻擊者常用PowerShell在系統中下載惡意軟件并獲得初始訪問權限。
PowerShell易于編寫,在大多數企業的IT環境中可用,并且具備可與Windows API交互的強大功能。對攻擊者不利的是,PowerShell很容易被防御者讀取并阻止。因此,攻擊者會使用各種技巧來混淆PowerShell惡意代碼。
威脅獵人經常會遇到經過混淆的PowerShell腳本,需要對這些腳本進行去混淆,以了解它們在做什么,以及是否包含可檢索的IOC。過去,這是一個艱苦的工作,但現在ChatGPT可以代勞!
只需將混淆過的PowerShell復制到ChatGPT的對話框中,讓它來研究代碼的作用:

02
發現攻擊者的TTP
在搜尋威脅時,獵人們需要緊盯攻擊者留下的IOC,例如IP地址、域名和文件哈希。但是,為了提高狩獵的成功率,獵人還需要了解攻擊者的戰術/技術/程序(TTP),因為攻擊者很難改變自己的TTP(參考痛苦金字塔模型)。
威脅狩獵依賴威脅情報提供攻擊者的TTP信息,但收集此類情報可能很困難,需要查詢各種來源,這時我們可以求助于人工智能。以勒索軟件拉撒路(Lazarus)為例,我們可以問ChatGPT該組織的TTP:

03
生成威脅搜尋查詢
為了搜尋攻擊者的IOC和TTP,我們需要為企業的安全解決方案(例如SIEM或EDR)創建威脅搜尋查詢。這些查詢定義了我們想要搜尋的內容,以及我們希望找到何種數據以及如何呈現給我們。
遺憾的是,不同安全解決方案使用不同的語法來定義其平臺上的搜索查詢。例如CrowdStrikes使用FQL(Falcon查詢語言),微軟使用KQL(Kusto查詢語言),QRadar使用AQL(Ariel查詢語言)。如果你的企業使用多個安全產品,掌握這些語法讓人頗為頭疼。
我們可以要求ChatGPT用我們選擇的語言為我們編寫威脅搜尋查詢,大大加快搜尋流程。
例如,我們可以讓ChatGPT創建一個查詢來搜索KQL中的惡意IP地址:

我們同樣可以用ChatGPT在Splunk中生成威脅搜索查詢:

事實上,我們可以要求ChatGPT根據我們使用的各種主流威脅狩獵平臺編寫對應的查詢。
04
分析惡意命令行
作為威脅獵人,我們經常需要分析命令行是否惡意。這些命令行包含各種選項、參數、文件名、可執行文件等。這項任務有時很困難,因為我們可能不知道每個命令行的作用。
為了解決這個問題,威脅獵人嚴重依賴Google查找有關命令的文檔。這種方法有時有效(但可能會非常耗時),有時則一無所獲,只能靠猜測。幸運的是,ChatGPT可以充當命令行的調查助手。例如,你知道下面這個命令行是做什么的嗎?
schtasks.exe/create/sc minute/mo 1 /tn "Reverse shell" /tr c:\some\directory\revshell.exe
對于一位經驗豐富的威脅獵人,會立刻發現此命令添加了一個名為“反向外殼”的計劃任務,表明對手正在試圖安裝持久性機制。但是,如果你是新手無法判斷,也可以求助ChatGPT:

05
發現哪些攻擊者盯上了你
所有威脅狩獵都基于為企業量身定制的威脅情報進行設計。
威脅搜尋應側重于企業可能遇到的IOC或TTP。如果你的公司在美國運營,那么專注于專門針對俄羅斯企業的攻擊者是沒有意義的。因此,最佳做法是找出哪些攻擊者會針對你,然后找到與其活動相關的IOC和與其攻擊方法相關的TTP。
為了查找此威脅情報,企業需要根據其需求定制免費和付費威脅情報源。此外,你也可以求助ChatGPT,如下圖所示:

假設您的企業不是一家全球化公司。可以嘗試在提示詞中增加國家和行業關鍵詞以獲得更準確的答案:

06
掌握惡意軟件趨勢
作為威脅獵人,搜尋惡意軟件是你的日常工作之一,無論是簡單的信息竊取程序(例如Red Line)還是復雜的勒索軟件(例如QakBot)。你需要在企業IT環境中開展威脅狩獵工作,搜尋此類惡意軟件的指標。
惡意軟件家族和變種在網絡中的流行度往往會隨時間推移產生較大波動,威脅獵人必須隨時了解惡意軟件的“潮流”。過去,安全認識主要依賴來自安全供應商的威脅情報源或季度威脅報告,如今ChatGPT也可以幫我們快速了解惡意軟件趨勢:

本文使用的是ChatGPT 3.0,訓練數據集的截止時間為2021年4月,因此并沒有最新惡意軟件的實時信息。但是ChatGPT 4.0(付費版本)能提供此類信息(編者:可通過插件或擴展應用關聯實時威脅情報)。
07
開發威脅搜尋假設
威脅狩獵始于一個假設——你想要尋找什么以及如何做到這一點。
例如,你可能需要查找攻擊者在IT環境中使用的駐留機制。你需要將這個想法轉變為可以通過實驗測試的陳述,將想法變成假設。最重要的是,你必須能夠反駁這個假設,否則,你將永遠得不到最初問題的答案。
例如:“我將在IT環境中查找攻擊者使用注冊表運行密鑰的駐留機制。我可以通過在每臺計算機上查找已知的惡意注冊表項來做到這一點。”
現在,你知道要查找的內容(惡意注冊表運行密鑰)以及查找位置(計算機的注冊表日志)。你可以通過編寫包含良好文檔的流程來將此假設轉換為實驗。
生成一個好的假設可能很困難:
- 你需要具體,但又不能太具體,以至于錯過了想要尋找的東西。
- 你需要確保你可以反駁你的假設。
- 你需要將假設限制在一個可管理的時間范圍內。
值得慶幸的是,您可以在創建威脅搜尋假設時向ChatGPT尋求幫助,它甚至能生成測試步驟:

08
記錄威脅狩獵
威脅狩獵是否成功往往取決于文檔,沒有文檔記錄的狩獵難以重現。
文檔工作很容易被新手威脅獵人忽視,他們經常過于關注行動而不是方法。值得慶幸的是,ChatGPT可以幫助解決這個問題。下面是ChatGPT提供的一個示例模板,可在威脅搜尋的每個階段填寫此模板,從而幫助我們養成編寫文檔的好習慣:

09
學習威脅狩獵
威脅狩獵涉及多種技能,需要大量時間系統學習和實踐才能掌握。許多威脅獵人利用在線資源在工作中學習,但是由于在線資源的非結構化屬性,這種學習方法可能效率低下且難以跟蹤。
你可以要求ChatGPT幫你編制一個威脅狩獵的自學課程大綱,具體如下:

有了課程大綱,你只需要收集學習資源并根據此大綱進行組織。您甚至可以要求ChatGPT推薦學習資源:

10
威脅狩獵自動化
自動化是網絡安全的王道。作為威脅獵人,我們的目標是自動執行威脅狩獵。我們希望提升威脅狩獵的自動化水平,即威脅狩獵任務可(自動)重復執行。ChatGPT可以幫助我們初步了解如何自動化特定威脅狩獵任務:

如上所示,ChatGPT為我們提供了有關Cobalt Strike(一種流行的命令和控制C2框架)自動化威脅搜尋的想法。我們還可以要求ChatGPT提供其中某個想法的更具體信息。
總結
本文探討了使用人工智能工具幫助威脅獵人提升技能和效率的十種方法:
- 對惡意PowerShell進行去混淆處理
- 發現攻擊者的TTP
- 生成威脅搜尋查詢
- 解碼惡意命令行
- 發現哪些攻擊者可能以您的企業為目標
- 調查惡意軟件趨勢
- 開發威脅狩獵假設
- 創建威脅狩獵文檔
- 學習威脅狩獵
- 威脅狩獵的自動化
隨著人工智能網絡安全應用的普及,網絡安全從業者應該主動了解并嘗試用強大的人工智能工具來增強工作流程并提高效率,使自己成為人工智能的受益者而不是受害者。