病毒、防毒攻防史,自己來試作無害小病毒吧!

ADVERTISEMENT

防毒新策略:要小、要快、要雲端

病毒與時並進,防毒軟體也要跟著進步,才能夠讓人心甘情願地掏出小朋友買回家。從最開始的特徵碼比對,到後來的沙盒、行為模式監控,甚至進化出攔截未知惡意程式的功能。

病毒特徵碼瘦身

病毒不斷推陳出新,相對而言防毒軟體使用的病毒碼資料庫也就越來越肥大,甚至到了嚴重拖慢電腦效能的地步。之後廠商採取了幾項步驟,可以大幅漸少防毒軟體拖慢電腦效能的狀況發生。首先因為電腦軟硬體的演進,某些舊有的病毒已無法執行(可能因為硬體規格改變,或是軟體已修復漏洞),因此這些病毒碼就可以捨去。或者是將一些流行率非常低的病毒特徵碼除去,此舉也可減少對電腦效能的衝擊。

系統行為即時監控

砍掉病毒特徵碼!那萬一我的電腦真的中了那些極少數的病毒怎麼辦?因此還有另外一種防範方法,那就是監控程式的行為,或是注意電腦內的重要系統檔案是否被修改。舉個簡單的例子,Windows的登錄檔紀載了相當多的參數,不小心修改錯誤都會造成系統癱瘓,防毒軟體就可以監控登錄檔的重要區域,有哪個軟體想要變更,就可以判定誰是惡意軟體。這種方式也可以預防新品種的病毒,但遇到新入侵行為的病毒就沒轍了。

沙盒環境探虛實

遇到未知的程式,可以建立一個獨立的環境,讓可疑的程式在裡頭執行,藉以判斷程式是否有害,若是真的有害,也不會影響到正常的電腦作業,直接把沙盒環境砍掉即可。

病毒、防毒攻防史,自己來試作無害小病毒吧!

avast!網路安全7的沙盒模式,實際讓程式在一個安全隔離區執行,藉以判斷是否為有害程式。

程式飛上青天、上青天

這年頭什麼都要雲端化,彷彿沒有雲端就會彗星撞地球、雞蛋碰石頭般慘烈。如果防毒軟體無法在本機端判斷程式是否有害,便會將可疑程式上傳至廠商的伺服器中,接下來就會利用廠商的電腦資源分析程式,這也是一種減少防毒軟體占用本機資源的方法。

雲端運算相當依賴使用者所回傳的資料,藉由防毒軟體回傳電腦上的運作情形,從全世界眾多回傳的資料之中加以整理、分析、判斷,再把最終結果回饋到使用者電腦上。相較於之前,使用者上傳檔案>廠商分析>更新病毒特徵碼資料庫,這種較為被動的方式,主動收集世界上電腦的資料加以分析的方式更能夠快速反應。

當然這項功能在實作上來說相當於收集用戶的個人使用習慣,若是使用者對於這個功能有所疑慮,當然也可以關閉,而這功能通常在第一次安裝防毒軟體時會請使用者選擇。

應用程式分級

電影、電視要分級,漫畫要分級,遊戲要分級……別懷疑,現在連應用程式也要分級,不過並非分為18禁或老少皆宜,而是根據一些特性作為分級的標準,例如普及性,穩定性,資源消耗率,程式行為……等,每一家防毒軟體廠商的分級標準都不盡相同。這功能也可以減少防毒軟體的資源占用率,請試想,當使用者開啟了一個信譽等級非常高的程式,防毒軟體也就不必那麼戰戰兢兢的掃瞄,放手讓程式去執行。

零時防護

「XX軟體弱點,導致系統門戶大開」,近年來常常看到如此聳動的標題,代表著可能又有某個軟體出包了,導致在某些操作下,電腦相當容易感染惡意程式,通常以記憶體緩衝區溢位最為常見。

防毒軟體可在軟體商推出更新檔修正問題前,搶先封鎖這一類型的攻擊。網路通訊埠門戶大開?就利用防火牆阻擋。XX軟體緩衝區溢位?那就先禁止使用導致溢位的功能吧。

當然以上功能只是籠統的大方向介紹,不同的防毒軟體在實作上會有不同的變動,也有可能採用不同的折衷方式,例如在即時掃描時採用範圍較小、較常見的病毒特徵碼資料庫;而在全機完整掃描中,使用完整的病毒資料庫,這也是有可能的狀況。

動手試做惡意小程式

看了這麼多,就動手做個病毒來玩看看。原理很簡單,我們建立1個批次檔,然後故意重複執行1段程式碼,讓這個批次檔指令進入無窮迴圈中,直到電腦記憶體用盡當機為止。

請先開啟Windows內的記事本,然後輸入以下文字:

:virus
start iexplore.exe
start notepad.exe
start mspaint.exe
start

goto virus

在start之後的程式可以更改為其它內建在Windows的程式,或者是不加任何程式(start本身會呼叫cmd.exe出來執行),之後另存.bat新檔。這個批次檔並不會對電腦產生傷害,重新開機之後即可回復正常。

 

本文同步刊載於電腦王雜誌
 
病毒、防毒攻防史,自己來試作無害小病毒吧!
歡迎加入電腦王雜誌粉絲團
R.F.
作者

誤入叢林的小白兔,每天爬樓梯到七樓的白癡,幻想自己很瘦的豬,一放假就睡死的bed potato。

使用 Facebook 留言
發表回應
謹慎發言,尊重彼此。按此展開留言規則