網路城邦
上一篇 回創作列表 下一篇   字體:
資訊安全:Malicious Code
2009/11/03 20:56:30瀏覽4167|回應0|推薦0
Malicious Code
筆者在此就惡意程式的來源、散播的方法與攻擊的方式,做個扼要的介紹。

Sources
惡意程式的來源主要有三種,分別為:
  1. Hacker
  2. Cracker
  3. Script Kiddie
hacker 與 cracker 皆是深諳電腦軟硬體與技術的專家,並可自行開發用來入侵電腦系統的小型軟體,兩者的差別在於 hacker 的意圖是出自於「彰顯其非凡的能力而無惡意」,而 cracker 則是「意圖竊取或竄改機密資訊以牟取利益」、抑或「意圖毀損系統以行報復之實」。script kiddie 的意圖與 cracker 雷同,只是 script kiddie 的功力不若 cracker 來得那麼地深厚,無法自行開發入侵軟體,所以他/她們是使用 hacker 或 cracker 所開發出來的工具,去執行入侵電腦系統的工作。所以,hacker、cracker 與 script kiddie 的意義是有差別的,只是現今的大眾媒體,似乎已將上述三者混為一談,並以 hacker 一詞泛稱之。

Virus Propagation Techniques

Master Boot Record
master boot record 惡意程式的散播媒介物是 floppy disk、cd 或 dvd,其作法是去修改媒介物中 master boot record 的內容,並將自身儲存在媒介物的其它 sector 之中,當電腦系統開機去讀取 master boot record 時,該內容會指引電腦系統先將惡意程式載入記憶體中,之後再載入作業系統。

File Infection
file infection 惡意程式的作法則是將某個套裝軟體的執行檔 (.com 或 .exe) 或動態連結檔 (.dll) 代換成駭客的版本,例如作業系統的 command.com 檔案或某個套裝軟體的 license_control.dll 檔案。

Macro Infection
macro infection 惡意程式是緣起於套裝軟體的好意:「將若干重複性的工作自動化」。其自動化的方式是將一系列的動作包裝成一個 macro,藉著播放該 macro 的方式,軟體就會去執行它所定義的一系列動作。例如,我們可以使用 Visual Basic 來撰寫各式各樣的 macro,以供 Microsoft Office 播放使用,但此種作法也為駭客開啟了一扇大門,駭客可以撰寫一個可以幫助使用者省去許多重複性工作的 macro,並於其中埋伏若干惡意程式,以備竊取使用者的機密資料。

Virus Categories

Logic Bombs
logic bombs 有點類似於「定時炸彈」,只是其觸發條件不僅侷限於「某個時間定點」,「某個程式啟動之際」或是「簽入某個網站之際」等等亦可作為它的觸發條件。

在 1991 年所爆發的 Michelangelo virus,就是屬於 logic bombs 類型的惡意程式,它會蟄伏於電腦系統之中而不做任何的活動,直到每年的 3 月 6 日 (the birthday of Michelangelo Buonarroti) 才開始進行破壞工作,而其破壞的手段就是將系統的硬碟重新格式化。

Trojan Horses
Trojan Horses 是一個歷史典故 (真實性尚待證實),其大意是說:「某國的國王為了一位國色天香的女人,率大軍攻打一座城堡 (欲奪回佳人),久攻不下後想出了一帖妙計 ── 『建造一座大木馬,將士兵藏在木馬的肚子中,並舉行撤退祭拜儀式,讓城堡中的人誤認為這座木馬是要送給他/她們的禮物』;城堡中的王族誤信這座木馬真得是個戰利品,於是打開城堡大門將木馬拖回城裡,並開始飲酒狂歡以慶祝得來的勝利;酒酣耳熱之後,全城的人開始呼呼大睡,此時藏在木馬裡的士兵見機不可失,紛紛從木馬上溜了下來,把城堡的大門打開,並打信號召喚城外的大軍前來屠城」。

瞭解典故之後,就能理解什麼是 Trojan Horses 類型的惡意程式 ── 表面上看起來很慷慨仁慈、但骨子裡卻很陰險惡毒。例如,某個程式號稱它已經將 XBox 上最熱門的遊戲移植到 Windows XP 上,結果引來大批的網友前往下載,喜不自勝的網友在安裝之後發現,該軟體被啟動之後是什麼動靜也沒有 ── 既無畫面亦無音效,但實際上該軟體已在網友的電腦裡埋伏了惡意程式。

Worms
logic bombs 與 trojan horses 類別的惡意程式都需要人為的介入,例如下載或交換資料等等,它們才有辦法入侵其它的系統,但 worm 類別的惡意程式則不需要人為的介入即可入侵其它系統,正如其名所暗示的 ── WORM ── 它自己會爬。

worm 惡意程式的主要作法為:隨機式地選取一組 IP address,然後掃瞄該 ip address 之上是否有安裝具有瑕疵或弱點的 server process,例如 Microsoft Internet Information Server,找到後就藉由該瑕疵或弱點入侵該系統,並開始進行破壞的工作。在 2000 年夏天所爆發的 Code Red,就是屬於 worm 類型的惡意程式,當年它將許多網站的首頁毀容成下列文字:

Welcome to http://www.worm.com!
Hacked By Chinese!

Active Content
現今的許多網站都含有動態顯示的內容,而顯示動態內容當然比顯示靜態內容需要耗費更多 CPU 與 memory 等資源;當網站的上線人數很多時,負責顯示動態內容的程式將會耗用網站主機的大量資源,進而拉垮網站主機的 performance,造成 web server 對 client request 的回應速度大幅下滑,最後則有可能造成網站主機當機。為了解決這個問題,軟體廠商研發出 active content 的機制與應用工具,例如 Java applets 與 ActiveX 等,讓 client 可以下載 active content 的工具到 local host 上,讓 local host 上的 active content 工具去播放網站主機的動態內容,以避免佔用網站主機的系統資源。顯而易見的是,此舉固然降低了網站主機的負載與 client 的等待時間,但也為駭客開了一扇大門 ── 可把惡意程式埋寫在 active content 的工具之中。
 
( 創作其他 )
推薦文章 列印 加入我的文摘
上一篇 回創作列表 下一篇

引用
引用網址:https://classic-blog.udn.com/article/trackback.jsp?uid=chungchia&aid=3464197