摘要:近年來隨著計(jì)算機(jī)系統(tǒng)漏洞的發(fā)現(xiàn)速度加快,大規(guī)模蠕蟲攻擊不斷爆發(fā),計(jì)算機(jī)網(wǎng)絡(luò)安全狀況不容樂觀。目前的計(jì)算機(jī)網(wǎng)絡(luò)攻擊具有攻擊源相對集中,攻擊手段更加靈活,攻擊對象的范圍擴(kuò)大等新特點(diǎn)。雖然現(xiàn)在的網(wǎng)絡(luò)安全技術(shù)較過去有了很大進(jìn)步,但計(jì)算機(jī)網(wǎng)絡(luò)安全整體狀況不容樂觀。本文即針對計(jì)算機(jī)網(wǎng)絡(luò)攻擊,主要是蠕蟲攻擊,展開討論探究,為實(shí)現(xiàn)有效防范網(wǎng)絡(luò)攻擊提供依據(jù),全文具有十分現(xiàn)實(shí)的可操作意義。
關(guān)鍵詞:計(jì)算機(jī);網(wǎng)絡(luò);安全;病毒;蠕蟲
中圖分類號:TP393文獻(xiàn)標(biāo)識碼:A文章編號:1009-3044(2008)09-11619-03
The Calculator Network is Safe and Guards Against A Technique Preliminary Study
CAO Yong
(The Consociation Agency Science and Technology Center of Province Village Reputation Agency in Shandong,Jinan 250001,China)
Abrstract: discover the speed speeds along with the calculator system loophole in recent years, the large-scale worm attack breaks out continuously, the safe condition of the calculator network allows of no optimism.The current calculator network attack has the attack source opposite concentration, attackstoning means more vivid, attack object of the scope extension wait a new characteristics. Although the network safe technique of now progressed very greatly in the past more, the safe and whole condition of the calculator network allowed of no optimism. This text aims at a calculator network attack namely, mainly is a worm to attackstoned, launch a discussion investigation, guard against a network attack to provide effectively for the realization basis, the full text has very realistic of can operate meaning.
Key words: the calculator;network;security;virus;worm
1 引言
隨著Internet的迅速發(fā)展,網(wǎng)絡(luò)安全性已成為迫切需要解決的問題。計(jì)算機(jī)系統(tǒng)的安全性日益突出和復(fù)雜。一方面計(jì)算機(jī)網(wǎng)絡(luò)分布范圍廣,具有開放的體系,提高了資源的共享性;但另一方面也帶來了網(wǎng)絡(luò)的脆弱性和復(fù)雜性,容易受到入侵者的攻擊,這就給網(wǎng)絡(luò)的安全防護(hù)提出了更高的要求。
2 計(jì)算機(jī)網(wǎng)絡(luò)安全與相關(guān)技術(shù)現(xiàn)狀評析
2.1 計(jì)算機(jī)網(wǎng)絡(luò)安全現(xiàn)狀
計(jì)算機(jī)網(wǎng)絡(luò)安全是指網(wǎng)絡(luò)系統(tǒng)的硬、軟件及系統(tǒng)中的數(shù)據(jù)受到保護(hù),不受偶然或惡意的原因而遭到破壞、更改、泄露,系統(tǒng)連續(xù)、可靠、正常地運(yùn)行,網(wǎng)絡(luò)服務(wù)不中斷。計(jì)算機(jī)和網(wǎng)絡(luò)技術(shù)具有的復(fù)雜性和多樣性,使得計(jì)算機(jī)和網(wǎng)絡(luò)安全成為一個(gè)需要持續(xù)更新和提高的領(lǐng)域。目前黑客的攻擊方法已超過了計(jì)算機(jī)病毒的種類,而且許多攻擊都是致命的。在Internet網(wǎng)絡(luò)上,因互聯(lián)網(wǎng)本身沒有時(shí)空和地域的限制,每當(dāng)有一種新的攻擊手段產(chǎn)生,就能在一周內(nèi)傳遍全世界,這些攻擊手段利用網(wǎng)絡(luò)和系統(tǒng)漏洞進(jìn)行攻擊從而造成計(jì)算機(jī)系統(tǒng)及網(wǎng)絡(luò)癱瘓。蠕蟲、后門(Back-doors)、Rootkits、DoS(Denial of Sercices)和Sniffer(網(wǎng)路監(jiān)聽)是大家熟悉的幾種黑客攻擊手段。但這些攻擊手段卻都體現(xiàn)了它們驚人的威力,時(shí)至今日,有愈演愈烈之勢。這幾類攻擊手段的新變種,與以前出現(xiàn)的攻擊方法相比,更加智能化,攻擊目標(biāo)直指互聯(lián)網(wǎng)基礎(chǔ)協(xié)議和操作系統(tǒng)層次。從Web程序的控制程序到內(nèi)核級Rootlits。黑客的攻擊手法不斷升級翻新,向用戶的信息安全防范能力不斷發(fā)起挑戰(zhàn)。
2.2 靜態(tài)安全防護(hù)技術(shù)——防火墻
靜態(tài)安全防護(hù)技術(shù)通過人工方法,采用外圍設(shè)備對來自外部系統(tǒng)的攻擊提供一定的防御能力。現(xiàn)今常用的是防火墻技術(shù)。防火墻是一種安全有效的防范技術(shù),是訪問控制機(jī)制、安全策略和防入侵措施。
2.2.1 防火墻的基本類型
防火墻技術(shù)可根據(jù)防范的方式和側(cè)重點(diǎn)的不同而分為很多種類型,但總的來講可分為包過濾、應(yīng)用級網(wǎng)關(guān)和代理服務(wù)器等幾大類型。
2.2.2 防火墻的缺點(diǎn)
①限制有用的網(wǎng)絡(luò)服務(wù)。防火墻為了提高被保護(hù)系統(tǒng)的安全性,限制或關(guān)閉了很多有用但存在安全缺陷的網(wǎng)絡(luò)服務(wù)。
②無法防止內(nèi)部用戶的攻擊。目前防火墻只提供對外部網(wǎng)絡(luò)用戶的防護(hù),對于來自內(nèi)部網(wǎng)絡(luò)用戶的攻擊只能依靠內(nèi)部網(wǎng)絡(luò)主機(jī)系統(tǒng)的安全性。
③防火墻不能完全防止傳送已感染病毒的軟件和文件。
④防火墻無法防范數(shù)據(jù)驅(qū)動型的攻擊,數(shù)據(jù)驅(qū)動型的攻擊從表面上看是無害的數(shù)據(jù)被郵寄或拷貝到主機(jī)上,但一旦執(zhí)行就開始攻擊。
⑤防火墻不能防備新的網(wǎng)絡(luò)安全問題。隨著網(wǎng)絡(luò)攻擊手段的不斷更新和一些新型網(wǎng)絡(luò)應(yīng)用的出現(xiàn),不可能靠一次性的防火墻設(shè)置來解決永遠(yuǎn)的網(wǎng)絡(luò)安全問題。
2.3 動態(tài)安全防護(hù)技術(shù)
靜態(tài)安全防護(hù)技術(shù)猶如守株待兔,對于危害網(wǎng)絡(luò)安全的行為只能被動防御,所以為了達(dá)到安全防護(hù)的目的,我們還必須研究動態(tài)安全防護(hù)技術(shù)。
2.3.1 漏洞掃描
在任何一個(gè)現(xiàn)有的平臺上都有幾百個(gè)公認(rèn)的安全脆弱點(diǎn),人工測試單臺主機(jī)的這些脆弱點(diǎn)要花幾天甚至更長的時(shí)間。在這段時(shí)間里,必須不斷進(jìn)行獲取、編譯或運(yùn)行代碼的工作。這個(gè)過程往往需要重復(fù)幾百次,既慢又費(fèi)力且容易出錯(cuò)。而漏洞掃描正是自動檢測遠(yuǎn)端或本地主機(jī)安全脆弱點(diǎn)的技術(shù),它可以在很短的時(shí)間內(nèi)就解決這些問題。漏洞掃描技術(shù)源于“攻擊者”在入侵網(wǎng)絡(luò)系統(tǒng)時(shí)采用的工具,它抓住系統(tǒng)漏洞是系統(tǒng)被攻擊的主要原因這一點(diǎn)。及時(shí)查找漏洞、拒絕攻擊者的外部或內(nèi)部攻擊。
2.3.2 安全內(nèi)核
安全內(nèi)核是在操作系統(tǒng)層次上進(jìn)行安全性增強(qiáng)技術(shù)的總稱。通過對操作系統(tǒng)內(nèi)核的裁減、加固和改造等,消除其中可能引起安全性問題的部分,從而大大加強(qiáng)系統(tǒng)內(nèi)核的安全性和抗攻擊能力。
2.3.3 防病毒技術(shù)
計(jì)算機(jī)病毒防范,是指通過建立合理的計(jì)算機(jī)病毒防范體系和制度,及時(shí)發(fā)現(xiàn)計(jì)算機(jī)病毒侵入,并采取有效的手段阻止計(jì)算機(jī)病毒的傳播和破壞,恢復(fù)受影響的計(jì)算機(jī)系統(tǒng)和數(shù)據(jù)。
2.3 蠕蟲攻擊
隨著網(wǎng)絡(luò)的普及與蠕蟲編寫要求的降低,蠕蟲爆發(fā)的頻率越來越高。尤其是近幾年來,越來越多的蠕蟲在互聯(lián)網(wǎng)上出現(xiàn),其傳播速度也在成幾何級增長,所造成的危害與以前的蠕蟲相比有過之而無不及。
蠕蟲的工作機(jī)制從功能實(shí)現(xiàn)方式看出,網(wǎng)絡(luò)蠕蟲的攻擊行為可以分為4個(gè)階段:信息收集、掃描探側(cè)、攻擊滲透和自我推進(jìn)。信息收集主要完成對本地和目標(biāo)節(jié)點(diǎn)主機(jī)的信息匯集;掃描探測主要完成對具體目標(biāo)主機(jī)服務(wù)漏洞的檢測;攻擊滲透利用已發(fā)現(xiàn)的服務(wù)漏洞實(shí)施攻擊;自我推進(jìn)完成對目標(biāo)節(jié)點(diǎn)的感染。
3 計(jì)算機(jī)網(wǎng)絡(luò)安全防范的有效實(shí)現(xiàn)
3.1 有效防范蠕蟲攻擊
3.1.1 Stack Guard
Stack Guard是一個(gè)CCC補(bǔ)丁,為其他的編譯器保護(hù)技術(shù)提供了基礎(chǔ),并且首先提出使用Stack canaries的方法來阻止對保存的控制值的覆蓋。對于棧溢出攻擊,棧中溢出的buffer和return address之間的值都被修改,在他們之間放一個(gè)canary valuc當(dāng)函數(shù)返回時(shí),若發(fā)現(xiàn)這個(gè)值被修改,那么就檢測到了溢出攻擊。一般cannary可以隨機(jī)產(chǎn)生。但如果利用指針直接修改return address的值,那么這個(gè)canary value仍沒有改變。

不足之處在于只保護(hù)返回地址,沒有保護(hù)基指針、函數(shù)指針,并且改變了棧的布局,代碼必須被重新編譯。
3.1.2 Stack Shield
Stack Shield也是一個(gè)CCC補(bǔ)丁,采用不同的保護(hù)方式。它創(chuàng)建了單獨(dú)的Global Retum stack,作為一個(gè)特殊的堆棧用于存儲返回地址。在受保護(hù)的函數(shù)的開頭和結(jié)尾分別增加一段代碼,每次函數(shù)調(diào)用的時(shí)候,返回地址都被拷貝到Global Ret Stack.當(dāng)函數(shù)返回的時(shí)候,返回地址從Global Ret Stack拷貝至應(yīng)用程序的棧,因此即使返回地址被覆蓋,函數(shù)執(zhí)行流程也不會改變,將總是正確返回到調(diào)用函數(shù)中。但由于沒有比較堆棧中的返回地址與保存的是否相同,因此并不能得知是否發(fā)生了堆棧溢出。
Stack Shield也為函數(shù)指針提供保護(hù),它只允許函數(shù)指針指向代碼段,因?yàn)樽⑷氲拇a只能在數(shù)據(jù)段。這種方法完整的粉碎了試圖在不能覆蓋代碼段的情況下運(yùn)行惡意代碼的意圖。
不足之處在于代碼都要保存在text段,并且需要重新編譯代碼。
3.1.3 Windows 2003 Slack Protection
為了應(yīng)對逐漸增加的windows操作系統(tǒng)的漏洞,微軟實(shí)行了基于編譯器的保護(hù)方案以確保他們的產(chǎn)品的安全。
微軟的方案與Crispin Cowan 的Stack Guard非常類似。在新的NET編譯器中,微軟提供了/GS命令行開關(guān)。當(dāng)啟用這個(gè)命令行開關(guān)時(shí),一個(gè)安全cookie canary 被放置在返回地址的前面并且保存ebp的值。
默認(rèn)情況下,Windows 2003是在開啟堆棧保護(hù)的情況下進(jìn)行編譯的。
如果一個(gè)程序使用/GS開關(guān)編譯,函數(shù)調(diào)用返回時(shí)會進(jìn)行canaw隊(duì)證,將棧上的canaw裝載進(jìn)ecx,并且將它和最初的canary進(jìn)行比較,而這個(gè)初始的 xanary 是存儲在程序的數(shù)據(jù)段上的。如果canary校驗(yàn)通過,則程序繼續(xù)。如果不匹配,程序會去檢查這個(gè)程序的數(shù)據(jù)段是否指定了一個(gè)security handler,如果指定了,那么程序會凋用這個(gè)security handler否則,會調(diào)用0x00000000處的UnHandledExceptionFilter。而這個(gè)UnHandledExceptionFilter將會load faultrep.dll并會調(diào)用一個(gè)輸出函數(shù)ReportFault。
Windows 2003所提供的保護(hù)可以很輕易的繞過。如果一個(gè)local buffer被溢出,攻擊者很容易覆蓋exception handler。
為了避免這種隋況,微軟將所有己注冊的異常handlers都存儲在程序的Load Config Directory 里面。如果出現(xiàn)一個(gè)不在Load Config Directory的exceptionhandler,那么它就不是被該程序正常調(diào)用的。如果該handler指向堆棧,那么它也不是被正常調(diào)用的。然而,微軟允許指向模塊范圍之外的exception handler被調(diào)用,也允許指向堆的exception handlers被執(zhí)行。
3.2 加強(qiáng)用戶的安全意識
用戶作為計(jì)算機(jī)的使用者和最終的指揮者,是信息安全框架中的重要組成部分,這一點(diǎn)在過去卻往往被忽視,用戶們將信息安全的保障經(jīng)常寄希望于購置各種必須的安全產(chǎn)品,以為有了這些安全產(chǎn)品就可以高枕無憂,所以致使即使花大量費(fèi)用購置了安全產(chǎn)品的政府以及企業(yè)等仍然沒有擺脫遭受攻擊的煩惱。在2002年何德全院士就曾提到“提高網(wǎng)絡(luò)安全意識”的重要性,指出“人作為主體是網(wǎng)絡(luò)發(fā)展的基本動力和信息安全的最終防線”。
對安全要求比較高的單位只有通過培訓(xùn)等方式努力提高計(jì)算機(jī)用戶與管理者的網(wǎng)絡(luò)安全意識,使計(jì)算機(jī)的維護(hù)者與相應(yīng)的安全維護(hù)軟件達(dá)到較好的互動,才能真正發(fā)揮安全產(chǎn)品的最大性能,達(dá)到最大程度的安全保障。
參考文獻(xiàn):
[1] LeeT.K.Yusuf, S.Lrk, W,Sloman, A.lupu, E.Dulay. Development framework for firewall processors,F(xiàn)ield Programmable Technology,2002.(FPT),Proceedimgs.2002 IEEE International Conferenceon,Dec 2002
[2] 黃怡強(qiáng), 等. 淺談軟件開發(fā)需求分析階段的主要任務(wù). 中山大學(xué)學(xué)報(bào)論叢,2002,(01).
[3] 田忠, 錢樂秋. 需求工程綜述[J]. 計(jì)算機(jī)應(yīng)用與軟件.
[4] 王天蓉, 柳棟. 基于學(xué)習(xí)者視角的網(wǎng)絡(luò)教育信息資源組織[M]. 惟存教育實(shí)驗(yàn)室.