惡意軟體是如何繞過安全軟體的?
惡意軟體是指任何會對計算機系統造成損害的軟體。惡意軟體的形式多種多樣,例如蠕蟲、病毒、木馬、間諜軟體、廣告軟體和Rootkit等,它們可能竊取機密資訊、刪除文件或安裝未經使用者許可的軟體。
惡意軟體是如何繞過安全軟體的?
惡意軟體利用作業系統和應用程式設計中的安全漏洞(缺陷或弱點)(例如,Windows XP支援的舊版Microsoft Internet Explorer)以及易受攻擊的瀏覽器外掛版本。即使安裝了這些外掛的新版本,也不一定能刪除舊版本。
外掛供應商的安全公告會宣佈與安全相關的升級。美國的國家漏洞資料庫會為常見的漏洞分配CVE ID。像**Secunia PSI**這樣的免費軟體會檢查機器中是否存在易受攻擊的過期軟體並嘗試更新它。
惡意軟體編寫者尋找可以利用的漏洞或缺陷。一種常見的方法是使用**緩衝區溢位漏洞**,這種漏洞發生在軟體應該將資料儲存在特定記憶體區域,但卻未能阻止提供超過緩衝區容量的資料時。
惡意軟體可能會發送溢位緩衝區的資料,並在末尾包含有害的可執行程式碼或資料。當檢索到此有效負載時,它會執行攻擊者(而非合法軟體)想要執行的操作。反惡意軟體軟體正變得越來越難以檢測惡意軟體。
使用者錯誤或不安全的設計
軟盤曾用於啟動早期的個人電腦。當內建硬碟變得流行後,作業系統通常從硬碟啟動,但如果可用,也可以從軟盤、CD-ROM、DVD-ROM、USB快閃記憶體驅動器或網路啟動。當其中一個裝置可用時,將計算機設定為從中啟動是很常見的。通常情況下,沒有任何裝置可用;相反,使用者會故意將CD放入光碟機中,例如,以獨特的方式啟動計算機,例如安裝作業系統。即使沒有啟動,也可以對計算機進行程式設計,使其在特定介質可用時執行其上的軟體。
惡意軟體分發者會誘騙使用者從受感染的裝置或介質啟動或執行。例如,病毒可能會使插入受感染計算機的任何USB驅動器新增自動執行程式碼。然後將隨身碟連線到設定為從USB自動執行的計算機的任何人都將被感染,並以相同的方式傳播感染。
再次使用相同的作業系統
假設網路中的所有計算機都執行相同的作業系統。在這種情況下,一個蠕蟲可以利用它們。特別是,所有Microsoft Windows和Mac OS X都擁有如此大的市場份額,以至於針對任一作業系統的漏洞利用可能會危及大量系統。短期內,僅僅為了穩健性而引入多樣性,例如新增Linux系統,可能會增加培訓和維護成本。
簽名更改
更改其簽名的病毒可以避開基於簽名的病毒掃描程式。這被稱為**多型惡意軟體**,它的工作原理是在傳播過程中更改部分病毒程式碼。即使是不會影響病毒功能的微小程式碼更新,也足以改變簽名並阻止反病毒軟體識別它。惡意軟體有一個加密生成器,它生成各種加密技術。然後,各種加密操作對附加功能進行加密和解密——這些功能會破壞程式碼並有效地篡改它。
繞過防毒軟體的新方法
上述方法依賴於將檔案獲取到目標機器上,然後執行它。現在有一種在計算機上執行惡意軟體的新技術,它不需要在目標計算機上儲存任何內容。
這種惡意軟體完全在計算機記憶體中執行,從而無需擔心反病毒軟體。惡意軟體不是直接從受感染的網頁傳送。相反,它透過利用相關程式中先前已知的弱點,指導機器將惡意軟體下載到記憶體位置。然後執行記憶體區域,就像其他惡意軟體變體一樣。
資料結構
網路
關係資料庫管理系統 (RDBMS)
作業系統
Java
iOS
HTML
CSS
Android
Python
C語言程式設計
C++
C#
MongoDB
MySQL
Javascript
PHP