摘 要:主要研究自防御網(wǎng)絡(luò)計(jì)劃中的網(wǎng)絡(luò)準(zhǔn)入控制功能。介紹自防御網(wǎng)絡(luò)的概念、功能以及處于自防御網(wǎng)絡(luò)最前端的部分-客戶端Agent的功能;自防御網(wǎng)絡(luò)系統(tǒng)的設(shè)計(jì)方法。重點(diǎn)介紹客戶端Agent的設(shè)計(jì)以及其各個(gè)組成模塊的功能、設(shè)計(jì)方法。最后搭建測(cè)試環(huán)境并進(jìn)行測(cè)試,測(cè)試結(jié)果均達(dá)到預(yù)期的效果。
關(guān)鍵詞:自防御網(wǎng)絡(luò);網(wǎng)絡(luò)準(zhǔn)入控制;客戶端Agent;系統(tǒng)安全
中圖分類號(hào):TP393.08 文獻(xiàn)標(biāo)識(shí)碼:B
文章編號(hào):1004-373X(2008)06-099-03
Research and Implementation of Client Agent in the Self-defending Network
FU Cuijiao
(School of Computer Science and Engineering,Beihang University,Beijing,100083,China)
Abstract:This paper mainly studies the Network Admittance Control (NAC) function in the self-defending network plan.It firstly discusses the conception of Self-defending Network (SDN),its function and the function of client Agent is in the front of SDN.Then introduces design method of SDN,specially introduces the design of client Agent and the function of its module.At last builds the test circumstance and carries out the test,the results are all satisfying.
Keywords:self-defending network;network admittance control;client Agent;system security
1 引 言
在互聯(lián)網(wǎng)日益普及的今天,網(wǎng)絡(luò)安全問題越來越多的受到網(wǎng)絡(luò)工程師的重視。病毒、黑客以及各種系統(tǒng)漏洞的依然存在,使得安全任務(wù)在網(wǎng)絡(luò)時(shí)代變得無比艱巨。怎樣才能使網(wǎng)絡(luò)得到真正的安全保障廣泛關(guān)注的問題,主要是希望網(wǎng)絡(luò)自身具有抵抗力,對(duì)一些外來的侵蝕有一種自然的抵抗。2004年3月15日,思科以第三代安全解決方案為體系框架,創(chuàng)新地提出了“自防御網(wǎng)絡(luò)(Self Defending Network,SDN)”計(jì)劃。這是一個(gè)多側(cè)面、多階段的安全計(jì)劃,他能大大提高網(wǎng)絡(luò)發(fā)現(xiàn)、預(yù)防和對(duì)抗安全威脅的能力[1]。于是人們開始把目光投向具有自防御能力的網(wǎng)絡(luò)。
2 自防御網(wǎng)絡(luò)
具有自防御能力的網(wǎng)絡(luò)不但要具有保護(hù)網(wǎng)上主機(jī)系統(tǒng)、網(wǎng)上終端系統(tǒng)和網(wǎng)上應(yīng)用系統(tǒng)的能力,關(guān)鍵是網(wǎng)絡(luò)本身也具有自我保護(hù)能力、自我防御能力和自我愈合能力[2]。一旦受到網(wǎng)絡(luò)蠕蟲等病毒的侵?jǐn)_或網(wǎng)絡(luò)攻擊時(shí),能夠快速反應(yīng)。網(wǎng)絡(luò)能夠發(fā)現(xiàn)攻擊、發(fā)現(xiàn)病毒、消除病毒在保護(hù)網(wǎng)絡(luò)應(yīng)用的同時(shí),也保護(hù)了網(wǎng)絡(luò)自身。
2.1 自防御網(wǎng)絡(luò)系統(tǒng)的功能
本文主要研究自防御網(wǎng)絡(luò)計(jì)劃中的網(wǎng)絡(luò)準(zhǔn)入控制(Network Admittance Control,NAC)功能[3],他是自防御網(wǎng)絡(luò)計(jì)劃中的一部份。SDN的宗旨是防止病毒等新型黑客技術(shù)對(duì)局域網(wǎng)造成危害,設(shè)計(jì)目標(biāo)是客戶端只允許合法的、值得信任的端點(diǎn)設(shè)備(例如PC機(jī))接入網(wǎng)絡(luò)而不允許其他設(shè)備接入。當(dāng)端點(diǎn)設(shè)備進(jìn)入網(wǎng)絡(luò)時(shí),該系統(tǒng)可以根據(jù)所獲得的終端信息,例如設(shè)備的當(dāng)前防病毒狀況以及操作系統(tǒng)補(bǔ)丁等信息,來實(shí)現(xiàn)對(duì)網(wǎng)絡(luò)的準(zhǔn)入控制[4]。本系統(tǒng)是由3部分組成,分別是客戶端Agent邊緣路由器和策略服務(wù)器。最前端是客戶端Agent,負(fù)責(zé)搜集設(shè)備的當(dāng)前防病毒狀況以及操作系統(tǒng)補(bǔ)丁等信息,形成狀態(tài)證書后向邊緣路由器發(fā)送,邊緣路由器向策略服務(wù)器轉(zhuǎn)發(fā)該狀態(tài)證書,策略服務(wù)器根據(jù)狀態(tài)證書中的終端信息確定訪問策略,并向邊緣路由器轉(zhuǎn)發(fā)該策略,邊緣路由器執(zhí)行該策略,實(shí)現(xiàn)準(zhǔn)入控制。
2.1.1 客戶端Agent的功能
客戶端Agent處于該系統(tǒng)的最前端,發(fā)揮了非常重要的作用。Agent(代理)的意思就是代表其他設(shè)備執(zhí)行功能,客戶端Agent就是代表客戶端完成自身安全狀態(tài)的評(píng)估,并獲得與之相應(yīng)的接入網(wǎng)絡(luò)的權(quán)限。具體來說就是掃描終端系統(tǒng),獲得操作系統(tǒng)版本信息、系統(tǒng)漏洞、系統(tǒng)補(bǔ)丁、系統(tǒng)修復(fù)信息、端口開放狀態(tài)、系統(tǒng)是否安裝了殺毒軟件、殺毒軟件是否進(jìn)行了升級(jí),掃描系統(tǒng)文件、內(nèi)存RAM區(qū)、磁盤引導(dǎo)扇區(qū),判斷系統(tǒng)是否已經(jīng)感染了病毒等,并把獲得的系統(tǒng)信息形成狀態(tài)證書后,向邊緣路由器發(fā)送??偟膩碚f,客戶端Agent研究的焦點(diǎn)是:獲得終端的OS信息,包括補(bǔ)丁和修復(fù)信息;加固終端,加強(qiáng)對(duì)攻擊的抵抗力。
因此,客戶端Agent非常重要,如果搜集的信息不準(zhǔn)確,會(huì)導(dǎo)致策略服務(wù)器做出不正確的決策。過于保守的策略會(huì)導(dǎo)致不能訪問一些資源,給用戶帶來不便,但過于開放的策略會(huì)導(dǎo)致局域網(wǎng)內(nèi)多數(shù)機(jī)器感染病毒,從而失去自防御網(wǎng)絡(luò)的意義,所以搜集的終端信息的準(zhǔn)確性非常重要。同時(shí)客戶端Agent應(yīng)該能做到實(shí)時(shí)監(jiān)測(cè),在用戶使用網(wǎng)絡(luò)的過程中,終端本身的信息發(fā)生變化,隨時(shí)都有可能感染病毒,如果客戶端Agent沒有搜集到這些變化的信息,系統(tǒng)還執(zhí)行原來的策略,帶來后果可想而知。
2.1.2 客戶端Agent的設(shè)計(jì)思路
先對(duì)終端系統(tǒng)進(jìn)行安全策略方面的配置和安全檢測(cè),然后通過改進(jìn)的掃描算法,實(shí)現(xiàn)快速高效的掃描,對(duì)掃描的結(jié)果進(jìn)行必要的分析后,形成狀態(tài)證書,然后傳給邊緣路由器。在對(duì)系統(tǒng)是否感染病毒的掃描中,以蠕蟲病毒為例進(jìn)行研究,并且實(shí)現(xiàn)對(duì)某一種蠕蟲病毒的查找。
2.2 自防御網(wǎng)絡(luò)的設(shè)計(jì)
客戶端Agent首先向邊緣路由器發(fā)送認(rèn)證請(qǐng)求,認(rèn)證通過后,邊緣路由器請(qǐng)求該代理傳送終端信息;客戶端Agent把從終端系統(tǒng)中獲得的信息形成狀態(tài)證書,通過邊緣路由器轉(zhuǎn)發(fā)給策略服務(wù)器,讓策略服務(wù)器來決定終端接入網(wǎng)絡(luò)的權(quán)限,其過程如圖1所示。
其過程是:
(1) 客戶端Agent首先向邊緣路由器發(fā)送認(rèn)證請(qǐng)求;
(2) 邊緣路由器返回挑戰(zhàn)字(CID);
(3) 客戶端Agent把收到的CID和保存的密鑰MD5加密[4]后,返回給邊緣路由器;
(4) 邊緣路由器請(qǐng)求該代理傳送終端信息;
(5) 客戶端Agent向邊緣路由器發(fā)送終端信息;
(6) 邊緣路由器向策略服務(wù)器轉(zhuǎn)發(fā)該信息;
(7) 策略服務(wù)器檢查狀態(tài)證書中的終端信息,確定所授予的權(quán)限:正常、檢查或隔離,然后向邊緣路由器發(fā)送授權(quán)策略;
(8) 終端獲得訪問權(quán)限(被拒絕、被隔離、URL重定向)。
2.2.1 客戶端Agent的結(jié)構(gòu)設(shè)計(jì)
客戶端Agent的作用是獲得終端系統(tǒng)信息,形成狀態(tài)證書后,發(fā)送給邊緣路由器??蛻舳薃gent系統(tǒng)主要包括5個(gè)模塊:用戶登錄模塊、系統(tǒng)信息獲取模塊、系統(tǒng)掃描模塊、通信模塊和系統(tǒng)自啟動(dòng)模塊。因?yàn)橹饕δ苁谦@得客戶端的OS信息,所以系統(tǒng)信息獲取模塊、系統(tǒng)掃描模塊是其核心部分。通信模塊把用戶登錄模塊、系統(tǒng)信息獲取模塊和系統(tǒng)掃描模塊獲得的終端信息按特定的格式匯總后,傳給邊緣路由器,并接收來自邊緣路由器的授權(quán)通知信息,其流程如圖2所示。
在該結(jié)構(gòu)中,獲得OS信息的功能主要由系統(tǒng)信息獲取模塊和系統(tǒng)掃描模塊完成,這2個(gè)模塊可以并發(fā)執(zhí)行,沒有先后之分。這樣設(shè)計(jì)的目的是為了快速地獲得系統(tǒng)信息,并且各模塊之間相互獨(dú)立,便于系統(tǒng)功能的擴(kuò)展。
2.2.2 客戶端Agent中各模塊的功能
用戶登錄模塊 主要實(shí)現(xiàn)用戶通過輸入用戶名、密碼接入網(wǎng)絡(luò),此時(shí)啟動(dòng)客戶端Agent,用戶退出系統(tǒng)時(shí)要斷開連接。
系統(tǒng)信息獲取模塊 主要實(shí)現(xiàn)獲得終端操作系統(tǒng)版本信息、系統(tǒng)漏洞、修復(fù)信息、系統(tǒng)補(bǔ)丁信息以及系統(tǒng)是否安裝殺毒軟件的信息。
系統(tǒng)掃描模塊 主要包括系統(tǒng)掃描、端口掃描和加密掃描。
系統(tǒng)掃描 主要實(shí)現(xiàn)運(yùn)用改進(jìn)的特征碼掃描算法[5],通過對(duì)系統(tǒng)中的文件進(jìn)行查找和比較,獲得系統(tǒng)是否感染病毒的安全信息[6],用戶接入網(wǎng)絡(luò)時(shí)在進(jìn)行該掃描的同時(shí)也進(jìn)行實(shí)時(shí)監(jiān)測(cè)。
端口掃描主要采用TCP connect掃描[7]。通過進(jìn)行端口掃描,獲得端口的開放情況,從而在系統(tǒng)被攻擊前得到一些警告和預(yù)報(bào),并對(duì)相關(guān)的漏洞進(jìn)行檢測(cè)。
加密掃描 主要實(shí)現(xiàn)通過對(duì)客戶端系統(tǒng)中的軟件進(jìn)行特殊的掃描加密方法,使攻擊者不能通過“殺去”、“繞過”等修改程序的手段來繞過訪問控制,從而避免由訪問驗(yàn)證錯(cuò)誤引起的漏洞。該掃描加密的過程是讀取密碼,然后讀取密鑰,對(duì)密碼和密鑰做運(yùn)算,將運(yùn)算結(jié)果拆分整合成數(shù)值和字符賦值給變量;上述變量作為后續(xù)程序中的參數(shù)、變?cè)颉懊?,運(yùn)行后續(xù)程序;如果是合法密鑰,則正常運(yùn)行,產(chǎn)生正確的結(jié)果,如果是非法密鑰,則出現(xiàn)運(yùn)行錯(cuò)誤,產(chǎn)生錯(cuò)誤的或異常的結(jié)果[8]。通過防范漏洞從而加固終端,加強(qiáng)對(duì)攻擊的抵抗力[9]。
通信模塊 主要實(shí)現(xiàn)客戶端Agent首先向邊緣路由器發(fā)送認(rèn)證請(qǐng)求,認(rèn)證通過后,經(jīng)邊緣路由器的請(qǐng)求,客戶端Agent把從終端系統(tǒng)中獲得的信息進(jìn)行加密后,形成狀態(tài)證書,然后向邊緣路由器發(fā)送,并等待接收來自邊緣路由器轉(zhuǎn)發(fā)的策略服務(wù)器的授權(quán)信息。根據(jù)授權(quán)信息限制終端接入網(wǎng)絡(luò)的權(quán)限,并向用戶提示。與邊緣路由器的通信是通過EAP協(xié)議進(jìn)行的[10]。
自啟動(dòng)模塊 主要實(shí)現(xiàn)客戶端Agent的自啟動(dòng)和自保護(hù)。當(dāng)終端系統(tǒng)啟動(dòng)時(shí)自動(dòng)運(yùn)行客戶端Agent,并且負(fù)責(zé)維護(hù)客戶端Agent自身的安全,以免該代理自身遭到病毒的攻擊。
2.3 系統(tǒng)測(cè)試
測(cè)試環(huán)境是開發(fā)網(wǎng)絡(luò)環(huán)境基礎(chǔ)上進(jìn)行改進(jìn)的,以避免外界網(wǎng)絡(luò)數(shù)據(jù)和隨機(jī)數(shù)據(jù)對(duì)測(cè)試結(jié)果的影響。主要的網(wǎng)絡(luò)設(shè)備有:已經(jīng)安裝客戶端Agent的客戶端主機(jī)、專門開發(fā)的邊緣路由器以及策略服務(wù)器??蛻舳薃gent和邊緣路由器用EAP協(xié)議進(jìn)行認(rèn)證通信,邊緣路由器和策略服務(wù)器用RADIUS協(xié)議實(shí)現(xiàn)通信[11]。如圖3所示。
(1) 客戶端主機(jī)(運(yùn)行客戶端Agent):用戶A和用戶B, Windows XP平臺(tái)。
(2) 網(wǎng)絡(luò)接入設(shè)備(邊緣路由器):采用了雙網(wǎng)卡的一臺(tái)主機(jī),通過路由表的配置實(shí)現(xiàn)2個(gè)網(wǎng)段的互通訪問;并根據(jù)策略服務(wù)器返回的終端用戶訪問請(qǐng)求結(jié)果,執(zhí)行策略服務(wù)器制定的策略。IP地址采用192.168.0.1/202.112.138.30。
(3) 策略服務(wù)器:制定網(wǎng)絡(luò)準(zhǔn)入控制的策略,他主要完成對(duì)用戶身份認(rèn)證和訪問控制的功能。策略服務(wù)器同樣采用1臺(tái)運(yùn)行有相應(yīng)軟件的主機(jī)來實(shí)現(xiàn),屬于內(nèi)部網(wǎng)絡(luò)。IP地址采用192.168.0.254。
(4) Quidway S2016交換機(jī):用來連接內(nèi)部網(wǎng)絡(luò)中的2臺(tái)主機(jī)。在理論環(huán)境中,并不需要這一連接設(shè)備,但在實(shí)際的系統(tǒng)實(shí)現(xiàn)中,自防御網(wǎng)絡(luò)邊緣路由設(shè)備是一臺(tái)運(yùn)行有相應(yīng)軟件的計(jì)算機(jī),所以必須通過此交換機(jī)進(jìn)行多臺(tái)計(jì)算機(jī)的連接。
(5) 外網(wǎng)用戶C:在測(cè)試過程中充當(dāng)NAC的被訪問者和網(wǎng)絡(luò)攻擊的發(fā)起者角色。
(6) 更新服務(wù)器:為未通過接入認(rèn)證的主機(jī)提供相應(yīng)更新的設(shè)備。
分別對(duì)改進(jìn)的特征碼掃描技術(shù)、對(duì)系統(tǒng)的掃描效率、對(duì)客戶端端口的開放情況以及準(zhǔn)入控制功能進(jìn)行測(cè)試,并對(duì)測(cè)試結(jié)果和已有技術(shù)的所得結(jié)果進(jìn)行比較。結(jié)果表明整個(gè)自防御網(wǎng)絡(luò)的功能及其客戶端Agent的功能均達(dá)到預(yù)期的效果。一臺(tái)主機(jī)和多臺(tái)主機(jī)的認(rèn)證情況都得到了驗(yàn)證。
3 結(jié) 語
通過對(duì)自防御網(wǎng)絡(luò)中客戶端Agent的研究,探索自防御網(wǎng)絡(luò)的開發(fā)技術(shù),設(shè)計(jì)出可以提供客戶端安全狀態(tài)信息和操作系統(tǒng)狀態(tài)信息,進(jìn)而獲得相應(yīng)訪問權(quán)限的客戶端Agent,實(shí)現(xiàn)網(wǎng)絡(luò)準(zhǔn)入控制的功能。客戶端Agent無論在掃描操作系統(tǒng)信息的速度上,還是在查找病毒的準(zhǔn)確方面都達(dá)到同類軟件的性能,并且通過防范訪問驗(yàn)證錯(cuò)誤引起的漏洞,加固了終端。自防御網(wǎng)絡(luò)與其他網(wǎng)絡(luò)系統(tǒng)的不同之處在于他是一種集成化的系統(tǒng),可以從多個(gè)位置保護(hù)網(wǎng)絡(luò),是一種創(chuàng)新的、多點(diǎn)的、綜合的和主動(dòng)的網(wǎng)絡(luò)安全構(gòu)架[12]。
參考文獻(xiàn)
[1]浩男.思科SDN從理念邁向應(yīng)用 NAC產(chǎn)品正式面市[J].信息網(wǎng)絡(luò)安全,2004(8):59-60.
[2]唐衛(wèi).自防御網(wǎng)絡(luò)+SAFE解決方案[CD2]思科為電力客戶全力打造安全網(wǎng)絡(luò)[J].電力信息化,2006,4(9):33-34.
[3]Rhonda Heldman Raider.全新安全戰(zhàn)略[CD2]自防御網(wǎng)絡(luò)[J].計(jì)算機(jī)安全,2005(4):29-31.
[4]RFC1994,PPP Challenge Handshake Authentication Protocol(CHAP)[S].IETF,1996.
[5]《黑客防線》編輯部.黑客防線[CD2] 2005精華奉獻(xiàn)本(下)[M].北京:人民郵電出版社,2005.
[6]趙治國,譚敏生,李志敏,等.基于免疫原理的層次入侵檢測(cè)模型[J].計(jì)算機(jī)工程與設(shè)計(jì),2007,28(4):803-807.
[7]張玉清,戴祖鋒,謝崇斌.安全掃描技術(shù)[M].北京:清華大學(xué)出版社,2004.
[8]汪文虎.一種信息安全方法:中國,011321660.[P].2004-2-25.
[9]傅翠嬌,曹慶華.計(jì)算機(jī)網(wǎng)絡(luò)系統(tǒng)安全漏洞的研究[J].2006,29(1):65-68.
[10]RFC2284,PPP Extensible Authentication Protocol (EAP)[S].IETF,1998.
[11]RFC2865,Remote Authentication Dial In User Service (RADIUS)[S].IETF,2000.
[12]姚文琳,辛穎秀.自防御網(wǎng)絡(luò)安全架構(gòu)的研究與應(yīng)用[J].現(xiàn)代制造工程,2006,(6) :61-64.
作者簡(jiǎn)介 傅翠嬌 女,山東鄆城人,助教。主要從事計(jì)算機(jī)網(wǎng)絡(luò)安全方面的研究工作。