交通大學亥客書院─惡意程式檢測 課程心得
2020-11-28
2020年參加亥客書院辦理的「惡意程式檢測」課程心得筆記 📝
亥客書院介紹
由交大所成立的教學單位,邀請業界實務的講師進行授課,課程取向是實務性質,因此授課的進行聚焦在實驗與工具上,而非單純的理論知識。
課程的開課時間類似學院以春季、秋季等方式規劃,而且上課的時間是星期六整天,或連續隔週的星期六,方便學生或者在職人士週末的時候進修資安攻防實務。授課的地點則在台北車站附近的北門郵局,同時也是交通大學台北校區的所在,交通十分便利。
教室環境雖然不算是新穎,但基於教學的各項功能都很齊全。同時書院有準備專門的筆記型電腦供上課的人借用,不用另外準備自己的設備十分方便。
相關課程心得
惡意程式檢測
課程大綱
- 惡意程式簡介與分類
- 惡意程式分析技術概述
- 系統鑑識工具與實做
- 逆向工程工具與實做
講師在課程的說明上相當有脈絡性,首先介紹課程中的各主題,說明脈絡關係,最後也會回顧個主題串接而成整體的課程架構。課程中包含許多的 Lab 課程,藉由講師所準備的 VM 環境來進行。
而惡意程式檢測的課程,其實需要許多的背景知識:作業系統、檔案系統、組合語言、計算機程式,而這幾個主題其實也很難在有限的時間內說明清楚,因此課程所提供最大的學習成果在於概論性的介紹惡意程式如何進行,當中會使用到的工具與方式。
若真的要深入惡意程式檢測,上述的背景知識的深入不可或缺,同時也需要大量的惡意程式檢測實務經驗累積,才能夠真正掌握這門知識。
惡意程式定義
程式本是沒有惡意的一連串指令執行,惡意的是使用者的意圖與使用的情境。
數位鑑識 Digital Forensics
藉由分析作業系統活動、硬碟檔案系統、記憶體的方式,從其中的蛛絲馬跡來識別惡意程式的行為與特徵。
講師介紹
講者溫文儒雅,同時本身也是一個參與實務工作的資安研究人員,課程中分享了許多有趣的案例,並且樂於為學習者解答疑問,非常用心 👍
工具介紹
Kali
豐富的 Linux 資安軍火庫 Distro 留待未來專文筆記介紹 😄
Sysinternals
用以觀察惡意程式所進行的行為(Behavior),包含刪改 Registry, File 等以及檢視惡意程式是否有對外連線的行為。
- Process Explorer
- Process Monitor
- Sysmon
Yara
用來定義惡意程式行為的 Pattern Match Tool,以 pattern rule 的方式定義檢測惡意程式的方式,pattern 可以做為情資交流,也有助於規模性地檢測大量設備。
Ghidra
進行逆向工程所使用的開源工具,相對比的是商業軟體 IDA Pro,能夠將惡意程式以 Aseembly Code 的方式檢視,藉由逆向工程能夠查找出惡意程式的運作機制。
Immunity Debugger
用來進行動態分析的工具,可以藉由設定中斷點 (Breakpoint) 的方式來觀察惡意程式的運作,同時可以設法還原為 C code 以更高階的方式檢視。
Unpack & Memory Dumps
課程做了調整,最後沒有介紹這個部分。
結論
課程心得
和一開始的想像有一點落差,落差的原因在於發現到惡意程式不是一翻兩瞪眼的檢測識別,而是需要經過層層鑑識方法、抽絲剝繭才能洞察其中。同時也深感資安沒有終南捷徑,其背後所需要的背景知識,包含作業系統、檔案系統、組合語言、計算機程式等,博大精深。
對於在資安門外窺探玄奧的自己而言,這門課程為我留下概論性的惡意程式介紹以及識別方法論的初步認識,雖然與未來的工作實務未必銜接,卻讓自己對未來資安能力精進的方向有了指引🧭
後續行動
- 熟悉 Process Explorer & Process Monitor 使用
- 相關的惡意程式檢測工具與方法論筆記作為備忘參考