計(jì)算機(jī)科學(xué)與技術(shù)專業(yè)的開題報(bào)告
在人們素養(yǎng)不斷提高的今天,大家逐漸認(rèn)識到報(bào)告的重要性,我們在寫報(bào)告的時(shí)候要注意涵蓋報(bào)告的基本要素。那么你真正懂得怎么寫好報(bào)告嗎?下面是小編為大家收集的計(jì)算機(jī)科學(xué)與技術(shù)專業(yè)的開題報(bào)告,歡迎大家分享。
一、研究背景及意義
隨著信息技術(shù)的發(fā)展,人們越來越依賴于計(jì)算機(jī)來處理關(guān)鍵資料,并且逐步摒棄字紙?zhí)幚矸绞,因而整個(gè)社會(huì)中電子檔案信息的激增。如何去維護(hù)這些電子信息的安全,防止其泄漏和損壞也同時(shí)越發(fā)的引起關(guān)注。另外隨著移動(dòng)存儲設(shè)備尤其是USB設(shè)備的快速發(fā)展和便捷,這個(gè)問題越發(fā)的嚴(yán)重起來。本課題主要針對研究Windows下通過USB方式轉(zhuǎn)移資料的行為進(jìn)行監(jiān)控,確保電子資料通過USB傳播的有據(jù)可尋,以便于安全審計(jì)和統(tǒng)計(jì)。
由于USB總線較高的接口速率和靈活方便的使用特性,使得越來越多的存儲設(shè)備使用USB接口來接入計(jì)算機(jī),如閃存盤、移動(dòng)硬盤等;赨SB接口的存儲設(shè)備已取代軟盤,成為一種重要的信息交換方式。但USB存儲設(shè)備的廣泛使用帶來了許多安全隱患:
。1)竊密者可以在合法用戶不在場的情況下,利用USB存儲設(shè)備快速地將個(gè)人隱私、國家機(jī)密或商業(yè)敏感信息取走,并且不會(huì)留下痕跡;
。2)合法用戶的違規(guī)操作和逾權(quán)動(dòng)作可以把USB存儲設(shè)備作為中轉(zhuǎn)媒;
(3)USB存儲設(shè)備可作為病毒載體以及開機(jī)鑰匙等。上述安全隱患都對主機(jī)安全構(gòu)成了較大威脅。因此,對USB存儲設(shè)備的安全實(shí)施監(jiān)控具有重要意義。目前很多保密單位在物理上禁用USB端口,這會(huì)給用戶帶來很多不便。而一些基于用戶態(tài)的USB存儲設(shè)備監(jiān)控軟件很容易被病毒、木馬等惡意程序繞過,無法完成有效、實(shí)時(shí)的監(jiān)控。本文采用基于驅(qū)動(dòng)層的技術(shù)實(shí)現(xiàn)其主要的監(jiān)控功能,相對應(yīng)用層,更加安全和穩(wěn)定。
二、國內(nèi)外研究情況
1、Linux操作系統(tǒng):
因其具有源碼開放,穩(wěn)定,可靠。安全等顯著優(yōu)點(diǎn)。在電子政務(wù)中得到了廣泛應(yīng)用。此類應(yīng)用的安全性要求較高,特別是內(nèi)部網(wǎng)。據(jù)統(tǒng)計(jì),80%的安全事件來自內(nèi)部網(wǎng)。其中USB接口是內(nèi)部網(wǎng)絡(luò)信息泄密的一個(gè)重要途徑由于USB設(shè)備種類眾多且使用廣泛。僅僅簡單地禁用USB接口會(huì)使其他的USB設(shè)備(如USB鼠標(biāo)、USB鍵盤、ikey等)無法正常使用,給用戶帶來很多不便。文中在Linux環(huán)境下實(shí)現(xiàn)了一個(gè)分布式USB設(shè)備監(jiān)控系統(tǒng)?梢愿鶕(jù)管理員制定的安全策略分類禁用USB設(shè)備。以便管理員對網(wǎng)絡(luò)中各主機(jī)的USB設(shè)備進(jìn)行細(xì)粒度的管理。該系統(tǒng)的主要功能是以內(nèi)核模塊的形式實(shí)現(xiàn)的相對于應(yīng)用層程序而言。其可靠性高并且很難被用戶破解。
2、USB監(jiān)控基本情況:
Linux的USB子系統(tǒng)分為USB客戶軟件、USB核心層和主控制器驅(qū)動(dòng)程序3個(gè)層次。
USB客戶軟件是特定設(shè)備驅(qū)動(dòng)程序的主機(jī)部分。主要完成設(shè)備功能驅(qū)動(dòng),為了和設(shè)備正常通信,它通過10請求包(IRP。I/ORequestPacket)向USB內(nèi)核發(fā)出數(shù)據(jù)接收或發(fā)送請求。USB內(nèi)核則為客戶端驅(qū)動(dòng)程序?qū)雍椭鳈C(jī)控制器驅(qū)動(dòng)函數(shù)提供了一套函數(shù)集。HCD(HostControllerDriver)與主機(jī)控制器合作完成USB各種事務(wù)處理[”對于USB設(shè)備的所有操作都是通過向USB設(shè)備發(fā)送相應(yīng)的IRP完成的。本系統(tǒng)將攔截所有發(fā)給USB設(shè)備的IRP并對其中的內(nèi)容進(jìn)行分析。得到USB設(shè)備的設(shè)備類型,如存儲類設(shè)備、USB集線器類設(shè)備或者廠商自定義設(shè)備等。然后根據(jù)安全策略文件來決定是否允許這個(gè)設(shè)備使用。USB設(shè)備監(jiān)控系統(tǒng)中的關(guān)鍵問題是IRP攔截。判斷設(shè)備類型以及對廠商自定義類設(shè)備的管理。
3、IRP攔截技術(shù):
為了實(shí)現(xiàn)數(shù)據(jù)傳輸。USB內(nèi)核提供了一個(gè)數(shù)據(jù)結(jié)構(gòu)稱為URB(USBRequestBlock)。一個(gè)URB由執(zhí)行任何一個(gè)USB事務(wù)信息、分發(fā)數(shù)據(jù)信息和回傳的狀態(tài)信息組成。URB中具有USB數(shù)據(jù)傳輸?shù)乃行畔,包括傳輸類型、傳輸方向、?shù)據(jù)緩存區(qū)、數(shù)據(jù)傳輸?shù)脑O(shè)備、端點(diǎn)、返回信息及指向傳輸完成的處理函數(shù)的指針。從圖l中可以看出。所有的USB設(shè)備I/O請求最終都由總線提交函數(shù)usbmit_ttrb(structurb*urb)發(fā)送到USB總線上。因此可以通過攔截usb_submiturb函數(shù)。對所有的URB數(shù)據(jù)包進(jìn)行分析的方法來實(shí)現(xiàn)對USB設(shè)備的控制。目前。Linux(所支持的主控制器主要有OHC(OpenHostController)和UHC(UniversalHostController)種控制器的驅(qū)動(dòng)程序分別是ohci。0和uhci。o。usbsubruiturb函數(shù)就是由這兩個(gè)模塊提供的一般情況下。一臺計(jì)算機(jī)只有一種控制器。Linux考慮了有多種控制器的可能性并為將來擴(kuò)展更多的控制器提供了方便。
因此,攔截usbsubmiturb函數(shù)就是要攔截內(nèi)核模塊的導(dǎo)出函數(shù)。Linux采用整體式內(nèi)核結(jié)構(gòu)。如果要對內(nèi)核功能進(jìn)行修改或充。必須重新編譯整個(gè)內(nèi)核。這給擴(kuò)展內(nèi)核功能帶來諸多不便。因此。Linux提供了一種新的機(jī)制:動(dòng)態(tài)可加載內(nèi)核模塊內(nèi)核模塊將一些需要擴(kuò)展的功能先單獨(dú)編譯成一組目標(biāo)代碼。該代碼是核心的一分。但并沒有編譯到內(nèi)核里面去。可以根據(jù)需要在系統(tǒng)啟動(dòng)后動(dòng)態(tài)地加載到系統(tǒng)核心中。當(dāng)模塊不再需要時(shí),可以動(dòng)態(tài)地從系統(tǒng)核心卸載。核心符號表中維護(hù)著一個(gè)核心資源鏈表。在加載模塊時(shí)。它能夠解析出模塊中對核心資源的引用某個(gè)模塊對其他模塊的服務(wù)或資源的需求類似于模塊對核心本身資源或服務(wù)的請求。不過此時(shí)所請求的服務(wù)是來自另外一個(gè)已加載的模塊每當(dāng)加載模塊時(shí)核心將把該加載模塊輸出的所有資源和符號添加到核心符號表中21核心符號表中包含模塊導(dǎo)出函數(shù)名、變量的名字和其相應(yīng)的地址通過更改函數(shù)地址值的方法可以對函數(shù)調(diào)用進(jìn)行攔截。
但這種方法在攔截模塊導(dǎo)出函數(shù)的時(shí)并不適用。如前所述,模塊在加載的過程中會(huì)使用核心符號表中的信息對引用的函數(shù)和變量進(jìn)行重定向。這種訪問是一次性的。系統(tǒng)在內(nèi)核級中執(zhí)行時(shí),訪問了大量的寄存器,而很多寄存器值是由上層調(diào)用者提供的。如果改變這些寄存器值。系統(tǒng)會(huì)變得不穩(wěn)定。很可能出現(xiàn)不可預(yù)料的后果。
因此使用hook函數(shù)的最佳原則是:在hook函數(shù)中調(diào)用原函數(shù)時(shí)。所有寄存器的值與被hook前的信息一樣普通的C函數(shù)調(diào)用都提供了函數(shù)堆棧切換操作。而在funl和fun2中要使用原函數(shù)的堆棧來獲取傳人的參數(shù)地址。因此這兩個(gè)函數(shù)必須用匯編語言編寫這里分析一下攔截代碼的穩(wěn)定性在整個(gè)操作系統(tǒng)運(yùn)行期間。系統(tǒng)服務(wù)會(huì)經(jīng)常被調(diào)用。當(dāng)一個(gè)進(jìn)程調(diào)用了被hook的系統(tǒng)服務(wù)。這時(shí)如果發(fā)生了進(jìn)程切換,則另一個(gè)進(jìn)程再次調(diào)用相同的系統(tǒng)服務(wù)時(shí)。就會(huì)出現(xiàn)此次調(diào)用沒有被hook的情況雖然可以通過關(guān)閉中斷方法加以避免。但對系統(tǒng)性能影響比較大USB子系統(tǒng)的數(shù)據(jù)傳輸通常不是提交一次URB就能完成的。
偶爾漏掉了一個(gè)URB并不會(huì)影響對數(shù)據(jù)傳輸?shù)慕眯Ч。所以這里完全可以忽略這種情況在實(shí)際的測試和使用中沒有出現(xiàn)禁用失效的情況。
三、監(jiān)控系統(tǒng)應(yīng)用價(jià)值與基本方法
監(jiān)控系統(tǒng)在已有研究成果的基礎(chǔ)之上,對誤差控制、大塊數(shù)據(jù)處理、地形簡化等算法和實(shí)現(xiàn)技術(shù)進(jìn)行了改進(jìn)。包圍盒進(jìn)行LOD誤差處理,大大地提高了算法的效率,該算法已經(jīng)應(yīng)用到研制的某衛(wèi)星網(wǎng)管仿真測試系統(tǒng)中,取得了良好的效果。算法使用的是存儲在本地的地形數(shù)據(jù),未來有可能通過網(wǎng)絡(luò)使用實(shí)時(shí)的真實(shí)地形數(shù)據(jù),此時(shí)內(nèi)存映射文件將失效,因此需要進(jìn)一步考慮如何有效地加載和傳輸來自網(wǎng)絡(luò)的數(shù)據(jù),從而實(shí)時(shí)顯示真實(shí)的地形。另外,使用C++語言實(shí)現(xiàn)算法和地形顯示,可以進(jìn)一步提高軟件的效率;赨SB的CAN總線系統(tǒng)監(jiān)控平臺的開發(fā)成功,為CAN總線控制系統(tǒng)的開發(fā)、調(diào)試和診斷提供了得力工具。無論在實(shí)驗(yàn)室還是在工業(yè)現(xiàn)場,開發(fā)人員都可方便地將CAN網(wǎng)絡(luò)與計(jì)算機(jī)互聯(lián),實(shí)時(shí)監(jiān)控系統(tǒng)的總線狀態(tài)。以此為基礎(chǔ),今后還將進(jìn)一步完善其上位機(jī)應(yīng)用程序,豐富其監(jiān)控的現(xiàn)場總線種類,使其成為基于CAN的多種現(xiàn)場總線的監(jiān)控平臺。
USB(universalserialbus)通用串行總線,是由Intel、康柏、微軟和NEC等公司共同推出的串行接口。它支持即插即用和帶電熱插拔,占用的系統(tǒng)資源少,不會(huì)出現(xiàn)與其它外設(shè)資源沖突的情況,軟件安裝也很方便;其通信速度為1。5、12和480Mb/s,突破了傳統(tǒng)計(jì)算機(jī)串行通信接口(如RS一232)與高速外設(shè)進(jìn)行數(shù)據(jù)傳輸時(shí)的速度“瓶頸”;接口還可以提供最大5V/500mA的總線電源,小型USB設(shè)備無需外擴(kuò)電源,簡化電路設(shè)計(jì)。USB接口已經(jīng)成為PC的標(biāo)準(zhǔn)接口。為了便于攜帶使用,在下位橋接器設(shè)計(jì)中均采用體積小、功耗低的平面封裝器件,這可以減小體積、充分利用USB總線供電。另外,在下位橋接器設(shè)計(jì)中還設(shè)計(jì)了數(shù)據(jù)緩沖和CAN總線通信錯(cuò)誤識別功能,這樣可以進(jìn)一步避免系統(tǒng)監(jiān)控?cái)?shù)據(jù)的丟失,并且能在CAN總線通信出錯(cuò)時(shí)提供詳細(xì)的狀態(tài)記錄信息,提高平臺的監(jiān)控性能。
一個(gè)USB設(shè)備插入到計(jì)算機(jī)USB端口上時(shí),操作系統(tǒng)硬件管理程序?qū)?huì)發(fā)現(xiàn)設(shè)備,然后查找該設(shè)備的驅(qū)動(dòng)程序是否存在,如果存在,系統(tǒng)加載驅(qū)動(dòng)程序,然后給USB設(shè)備分配盤符等。
從上面的分析中可以知道,如果要阻止USB設(shè)備在計(jì)算機(jī)上使用,至少有兩個(gè)方法可以使用:
第一種方法是修改設(shè)備驅(qū)動(dòng)程序,在設(shè)備驅(qū)動(dòng)程序里面加入對設(shè)備進(jìn)行判斷的代碼,從而阻止非授權(quán)USB設(shè)備在系統(tǒng)上的識別;第二種方法是不修改驅(qū)動(dòng)程序,而在USB設(shè)備枚舉完成后,立即把設(shè)備卸載,從而在系統(tǒng)中無法使用該設(shè)備。
上面兩種方法中,第一種需要熟悉驅(qū)動(dòng)程序開發(fā)技術(shù),難度比較大;第二種原理比較簡單,實(shí)現(xiàn)起來也相對容易。本文將采用第二種方法。第二種方法的原理是:當(dāng)插入U(xiǎn)SB存儲設(shè)備時(shí),應(yīng)該立即獲取該USB設(shè)備的信息,然后判斷這些信息是否是經(jīng)過授權(quán)的,如果非法,立即調(diào)用卸載函數(shù)卸載該USB設(shè)備。系統(tǒng)可以分為三部分:USB存儲設(shè)備的檢測、USB設(shè)備信息的讀取判斷、設(shè)備的卸載。
四、小結(jié)
總之,面向端系統(tǒng)的行為安全監(jiān)控系統(tǒng)是針對Windows平臺的。隨著Windows平臺在電子政務(wù)中的日益廣泛應(yīng)用。面向Windows平臺的行為安全監(jiān)控系統(tǒng)將具有廣泛的應(yīng)用前景,課題設(shè)計(jì)提出的USB設(shè)備監(jiān)控技術(shù)不僅可以對USB設(shè)備行為進(jìn)行有效監(jiān)控。還同樣適用于對并口設(shè)備及光驅(qū)類設(shè)備進(jìn)行監(jiān)控。具有普遍的指導(dǎo)意義。此課題具有可以成功解決保密要求較高的個(gè)人和單位只能在物理上禁用USB端口、使用不靈活的問題。軟件關(guān)鍵功能的實(shí)現(xiàn),可優(yōu)先監(jiān)控到USB儲存設(shè)備,不易被惡意程序繞過,軟件資源的占有率低等優(yōu)點(diǎn)。
【計(jì)算機(jī)科學(xué)與技術(shù)專業(yè)的開題報(bào)告】相關(guān)文章:
計(jì)算機(jī)科學(xué)與技術(shù)專業(yè)畢業(yè)論文開題報(bào)告范文03-13
計(jì)算機(jī)科學(xué)技術(shù)畢業(yè)論文開題報(bào)告03-26
關(guān)于計(jì)算機(jī)專業(yè)的開題報(bào)告例文03-26
計(jì)算機(jī)專業(yè)論文開題報(bào)告格式03-24
計(jì)算機(jī)應(yīng)用技術(shù)開題報(bào)告03-21
2015計(jì)算機(jī)專業(yè)網(wǎng)站設(shè)計(jì)開題報(bào)告03-10
計(jì)算機(jī)專業(yè)設(shè)計(jì)開題報(bào)告格式范文03-23
電子科學(xué)與技術(shù)畢業(yè)論文開題報(bào)告03-28