14.1 概述
1)定義與分類
(Malicious Code)它是一種違背目標系統安全策略的程式程式碼,會造成目標系統資訊洩露、資源濫用,破壞系統的完整性及可用性。它能夠經過儲存介質或網路進行傳播,從一臺計算機系統傳到另外一臺計算機系統,未經授權認證訪問或破壞計算機系統。
常許多人認為 “病毒” 代表了所有感染計算機並造成破壞的程式。事實上,“惡意程式碼”的說法更為通用,病毒只是一類惡意程式碼而已。惡意程式碼的種類主要包括計算機病毒(Computer Virus)、蠕蟲(Worms)、特洛伊木馬(Trojan Horse)邏輯炸彈(Logic Bombs)、細菌(Bacteria)、惡意指令碼(Malicious Scripts)和惡意ActiveX控制元件、間諜軟體(Spyware)等根據惡意程式碼的傳播特性,可以將惡意程式碼分為兩大類,如圖所示。
2)攻擊模型
作用機制:
- 侵入系統
- 維持或提升已有的許可權
- 隱蔽
- 潛伏
- 破壞
- 重複前5步對新的目標實施攻擊過程
3)生存技術
反跟蹤技術
:提高自身的偽裝能力和防破譯能力,使檢測與清除惡意程式碼的難度大大增加。
- 反動態跟蹤技術
- 禁止跟蹤中斷
- 檢測跟蹤法
- 其他反跟蹤技術。如指令流佇列法和逆指令流法等
- 反靜態分析技術
- 對程式程式碼分塊加密執行
- 偽指令法
加密技術
大部分惡意程式碼對程式體本身加密,但還有少數惡意程式碼對被感染的檔案加密
模糊變換技術
- 指令替換技術
- 指令壓縮技術
- 指令擴充套件技術
- 偽指令技術
- 重編譯技術
自動生產技術
變形技術
- 重彙編技術
- 壓縮技術
- 膨脹技術
- 偽指令技術
- 重編譯技術
三執行緒技術
程序注入技術
通訊隱藏技術
- 埠定製技術
- 埠複用技術
- 通訊加密技術
- 隱蔽通道技術
核心級隱藏技術
- LKM 隱藏
- 記憶體對映隱藏
4)攻擊技術
- 程序注入技術
- 超級管理技術
- 埠反向連線技術
- 緩衝區溢位攻擊技術
5)分析技術
- 靜態分析
- 反惡意程式碼軟體檢查:特徵程式碼法、檢驗和法、行為監測法、軟體模擬法等
- 字串分析:惡意程式碼的名字、幫助和命令列選項、使用者對話方塊、後門密碼、惡意程式碼相關的網址、惡意程式碼作者或者攻擊者的email地址、惡意程式碼用到的庫&函式呼叫&可執行檔案、其他有用的資訊
- 指令碼分析:js、perl、shell
- 靜態反編譯分析
- 靜態反彙編分析:線性便利和遞迴遍歷
- 動態分析
- 檔案監測
- 程序監測
- 登錄檔監測
- 網路活動監測
- 動態反彙編分析
6)防範策略
14.2 病毒分析與防護
1)概念與特性
計算機病毒的名稱由來借用了生物學上的病毒概念,它是一組具有自我複製、傳播能力的程式程式碼。它常依附在計算機的檔案中,如可執行檔案或 Word 文件等。
特點:隱蔽性、傳染性、潛伏性、破壞性
2)組成與執行機制
由三部分組成:複製元件、隱藏元件、破壞元件
生命週期:
- 複製傳播階段
- 病毒的啟用階段
3)常見型別與技術
- 引導型病毒:透過感染計算機系統的引導區而控制系統
- 宏病毒
- 多型病毒:每次感染新的物件後,透過更換加密演算法,改變其存在形式
- 組成:雜亂的病毒體、解密例程(decryption routine)、變異引擎(mutation engine)
- 隱蔽病毒
- 隱藏檔案日期、時間的變化
- 隱藏檔案大小的變化
- 病毒加密
4)防範策略與技術
- 查詢計算機病毒源
- 阻斷計算機病毒傳播途徑
- 主動查殺計算機病毒
- 計算機病毒應急響應和災備
5)防護方案
- 基於單機計算機病毒防護
- 基於網路計算機病毒防護
- 基於網路分級病毒防護
- 基於右鍵閘道器病毒防護
- 基於網管防護
14.3 特洛伊木馬分析與防護
1)概念與特性
它是具有偽裝能力、隱蔽執行非法功能的惡意程式,而受害使用者表面上看到的是合法功能的執行。目前特洛伊木馬已成為駭客常用的攻擊方法。它透過偽裝成合法程式或檔案,植入系統,對網路系統安全構成嚴重威脅。同計算機病毒、網路蠕蟲相比較,特洛伊木馬不具有自我傳播能力,而是透過其他的傳播機制來實現。受到特洛伊木馬侵害的計算機,攻擊者可不同程度地遠端控制受害計算機,例如訪問受害計算機、在受害計算機上執行命令或利用受害計算機進行 DDoS 攻擊。
2)分類
本地和網路
網路木馬:此類木馬由兩部分組成,即遠端木馬控制管理和木馬代理。其中遠端木馬控制管理主要是監測木馬代理的活動,遠端配置管理代理,收集木馬代理竊取的資訊;而木馬代理則是植入目標系統中,同機獲取目標系統的資訊或控制目標系統的執行,類似網路管理代理。目前,特洛伊木馬一般泛指這兩類木馬,但網路木馬是主要型別。
3)執行機制
- 尋找攻擊目標
- 收集目標系統資訊
- 將木馬植入目標系統
- 木馬隱藏
- 啟用木馬,實施攻擊
4)植入技術
被動/主動
被動:透過人工干預方式將木馬安裝到目標系統中
主動:將木馬透過程式自動安裝到目標系統中,植入過程無須受害使用者的操作
被動植入方法:
- 檔案捆綁
- 郵件附件
- web網頁
5)隱藏技術
- 本地活動行為隱藏技術
- 檔案隱藏
- 程序隱藏
- 通訊連線隱藏
- 遠端通訊過程隱藏技術
- 通訊內容加密技術
- 通訊埠複用技術
- 網路隱蔽通道
6)存活技術
反檢測,中斷反網路木馬程式執行、埠反向連線(木馬代理在目標系統主動連線外部網的遠端木馬控制端以逃避防火牆的限制)
7)防範技術
- 基於檢視開放埠檢測特洛伊木馬技術
- 基於重要系統檔案監測特洛伊木馬技術
- 基於系統登錄檔監測特洛伊木馬技術
- 監測具有隱藏能力的特洛伊木馬技術
- 基於網路監測特洛伊木馬技術
- 基於網路阻斷特洛伊木馬技術
- 清除特洛伊木馬技術
14.4 網路蠕蟲分析與防護
1)概念與特性
是一種具有自我複製和傳播能力、可獨立自動執行的惡意程式。透過利用系統中存在漏洞的節點主機,將蠕蟲自身從一個節點傳播到另外一個節點。
2)組成與執行機制
:探測模組、傳播模組、蠕蟲引擎模組和負載模組
- 探測模組:完成對特定主機的脆弱性檢測,決定採用何種攻擊滲透方式。該模組利用獲得的安全漏洞建立傳播途徑,該模組在攻擊方法上是開放的、可擴充的。
- 傳播模組:該模組可以採用各種形式生成各種形態的蠕蟲副本,在不同主機間完成蠕蟲副本傳遞。
- 蠕蟲引擎模組:該模組決定採用何種搜尋演算法對本地或者目標網路進行資訊蒐集,內容包括本機系統資訊、使用者資訊、郵件列表、對本機的信任或授權的主機、本機所處網路的拓撲結構、邊界路由資訊等。這些資訊可以單獨使用或被其他個體共享。
- 負載模組
執行機制:
第一階段,已經感染蠕蟲的主機在網路上搜尋易感染目標主機,這些易感機器具有蠕蟲程式碼執行條件,例如易感染機器有蠕蟲可利用的漏洞。其中,網路蠕蟲發現易感染目標取決於所選擇的傳播方法,好的傳播方法使網路蠕蟲以最少的資源找到網上易傳染的主機,進而能在短時間內擴大傳播區域。
第二階段,已經感染蠕蟲的主機把蠕蟲程式碼傳送到易感染目標主機上。傳輸方式有多種形式,如電子郵件、共享檔案、網頁瀏覽、緩衝區溢位程式、遠端命令複製、檔案傳輸(ftp或 tftp)等
第三階段,易感染目標主機執行蠕蟲程式碼,感染目標主機系統。目標主機感染後,又開始第一階段的工作,尋找下一個易感目標主機,重複第二、第三階段的工作,直至蠕蟲從主機系統被清除掉。
3)常用技術
掃描技術:
1)隨機掃描
2)順序掃描
3)選擇性掃描
漏洞利用技術:
- 主機之間的信任關係漏洞
- 目標主機的程式漏洞
- 目標主機的預設使用者和口令漏洞
- 目標主機的使用者安全意識薄弱漏洞
- 目標主機的客戶端程式配置漏洞
4)防範技術
- 檢測和預警技術
- 本地網路通訊連線數
- ICMP 協議的路由錯誤包
- 網路當前通訊流量
- 網路服務分部
- 埠活動
- CPU利用率
- 記憶體利用率
- 抑制技術
- 蜜罐技術:在網路系統設定虛擬機器和虛假的漏洞,這些虛假的機器和漏洞能夠欺騙網路蠕蟲,導致網路蠕蟲的傳播能力下降
- 檢測和系統加固技術
- 漏洞掃描、修補、預防
- 免疫技術:在易感染的主機系統上事先設定一個蠕蟲感染標記,欺騙真實的網路蠕蟲,從而保護易感主機免受蠕蟲攻擊。
- 阻斷和隔離技術:防火牆、路由器
- 清除技術:基本方法是根據特定的網路蠕蟲感染系統後所留下的痕跡,如檔案、程序、登錄檔等資訊,分析網路蠕蟲的執行機制,然後有針對性地刪除有關網路蠕蟲的檔案或程序。
14.5 殭屍網路分析與防護
1)概念與特性
:指攻擊者利用入侵手段將殭屍程式植入目標計算機上,進而曹總受害機執行惡意活動的網路。
構建方式:遠端漏洞攻擊、弱口令掃描入侵、郵件附件、惡意文件、檔案共享等。
2)執行機制與技術
殭屍網路的執行機制主要由三個基本環節構成。
第一步,殭屍程式的傳播。透過利用計算機網路系統的漏洞、社會工程學、犯罪工具包等方式,傳播殭屍程式到目標網路的計算機上。
第二步,對殭屍程式進行遠端命令操作和控制,將受害目標機組成一個網路。殭屍網路可分為集中式和分散式,殭屍程式和控制端的通訊協議方式有IRC、HTTP。
第三步,攻擊者透過殭屍網路的控制伺服器,給殭屍程式傳送攻擊指令,執行攻擊活動,如傳送垃圾電子郵件、DDoS攻擊等。
3)防範技術
殭屍網路威脅監測
通常利用蜜罐技術獲取殭屍網路威脅資訊,部署多個蜜罐捕獲傳播中的殭屍程式(Bot),記錄該 Bot的網路行為,然後透過人工分析網路日誌並結合樣本分析結果,可以掌握該 Bot的屬性,包括它連線的伺服器(DNS/IP)、埠、頻道、密碼、控制口令等資訊,從而獲得該殭屍網路的基本資訊甚至控制權。
殭屍網路網路檢測
根據殭屍網路的通訊內容和行為特徵,檢測網路中的異常網路流量,以發現殭屍網路。
殭屍網路主動遏制
透過路由和 DNS 黑名單等方式遮蔽惡意的IP地址或域名。
殭屍程式查殺
在受害的目標機上,安裝專用安全工具,清除殭屍程式。
14.6 其他惡意程式碼分析與防護
1)邏輯炸彈
邏輯炸彈是一段依附在其他軟體中,並具有觸發執行破壞能力的程式程式碼。邏輯炸彈的觸發條件具有多種方式,包括計數器觸發方式、時間觸發方式、檔案觸發方式、特定使用者訪問觸發方式等。邏輯炸彈只在觸發條件滿足後,才開始執行邏輯炸彈的破壞功能,邏輯炸彈一旦觸發,有可能造成檔案刪除、服務停止、軟體中斷執行等破壞。邏輯炸彈不能複製自身,不能感染其他程式。
2)陷門
陷門是軟體系統裡的一段程式碼,允許使用者避開系統安全機制而訪問系統。陷門由專門的命令啟用,一般不容易發現。陷門通常是軟體開發商為除錯程式、維護系統而設定的功能。陷門不具有自動傳播和自我複製功能。
3)細菌
細菌是指具有自我複製功能的獨立程式。雖然細菌不會直接攻擊任何軟體,但是它透過複製本身來消耗系統資源。例如,某個細菌先建立兩個檔案,然後以兩個檔案為基礎進行自我複製,那麼細菌以指數級的速度增長,很快就會消耗掉系統資源,包括CPU、記憶體、磁碟空間。
4)間諜軟體
間諜軟體通常指那些在使用者不知情的情況下被安裝在計算機中的各種軟體,執行使用者非期望的功能。這些軟體可以產生彈出廣告,重定向使用者瀏覽器到陌生的網站。同時,間諜軟體還具有收集資訊的能力,可記錄使用者的擊鍵情況、瀏覽習慣,甚至會竊取使用者的個人資訊(如使用者賬號和口令、信用卡號),然後經因特網傳送給攻擊者。一般來說,間諜軟體不具備自我複製功能。
14.7 產品與技術指標
1)產品
終端防護、安全閘道器、惡意程式碼監測、惡意程式碼防護&補丁管理系統、惡意程式碼應急響應
2)技術指標
- 惡意程式碼檢測能力
- 惡意程式碼檢測準確性
- 惡意程式碼阻斷能力
14.8 應用
終端防護
APT防護