• <tr id="yyy80"></tr>
  • <sup id="yyy80"></sup>
  • <tfoot id="yyy80"><noscript id="yyy80"></noscript></tfoot>
  • 99热精品在线国产_美女午夜性视频免费_国产精品国产高清国产av_av欧美777_自拍偷自拍亚洲精品老妇_亚洲熟女精品中文字幕_www日本黄色视频网_国产精品野战在线观看 ?

    基于操作系統(tǒng)容器虛擬化技術的JBS模型的研究

    2010-08-07 08:20:42吳革李健賴英旭
    網(wǎng)絡安全技術與應用 2010年4期
    關鍵詞:文件夾調(diào)用宿主

    吳革 李健 賴英旭

    北京工業(yè)大學計算機學院 北京 100124

    0 引言

    隨著互聯(lián)網(wǎng)的發(fā)展,軟件網(wǎng)絡化、云計算等技術越來越普及。越來越多的私有軟件被放在公共計算平臺上運行,軟件之間的行為變得十分復雜,系統(tǒng)安全面臨前所未有的挑戰(zhàn)。

    1 JBS模型實現(xiàn)細節(jié)

    1.1 JBS虛擬機監(jiān)視器

    JBS模型是基于容器虛擬化技術(Container-based Operating System Virtualization),而不是完全虛擬化技術,不需要轉(zhuǎn)換敏感指令,提供接近本地操作系統(tǒng)的效率。Linux版本 JBS模型實現(xiàn)主要是基于 Linux內(nèi)核 2.6.22.19和Linux-VServer2.2.0.7。

    JBS模型資源劃分:CPU調(diào)度資源劃分是通過復寫標記桶(Token Bucket, TB)數(shù)據(jù)結(jié)構(gòu),提供硬件級別的CPU調(diào)度控制。在操作系統(tǒng)中,每更新一次時間票據(jù)(timer tick),都會減少進程所在的虛擬容器的TB的容量。I/O的資源共享通過使用分級標記桶(Hierarchical Token Bucket, HTB),每個HTB都有對應預定概率(reserved rate)和共享屬性(share)。每個數(shù)據(jù)包發(fā)送出去都有自己的內(nèi)核上下文Id屬性,JBS模型通過計算包上的預定概率和共享屬性,可以確定每個虛擬容器發(fā)送數(shù)據(jù)的次序和發(fā)送的數(shù)量,從而提供有效共享服務和預定服務。存儲限制功能,分為磁盤存儲限制和內(nèi)存存儲限制。對于內(nèi)存存儲限制,應用的技術如下:①最大可用的常駐內(nèi)存(maximum resident set size,RSS);②可用內(nèi)存頁(number of anonymous memory have, ANON);③已經(jīng)被應用的內(nèi)存頁,通過使用mlock方法和mlockall方法進行標記。對于磁盤存儲限制,通過使用虛擬容器標識(XID)對文件系統(tǒng)進行標識,讓運行于不同虛擬容器中的進程可以訪問同一個宿主系統(tǒng)分區(qū),而不能訪問不同容器中的文件。

    JBS模型安全隔離:JBS模型中的進程隔離主要是對宿主操作系統(tǒng)中的進程標識虛擬容器標識(XID),使每個進程的PID不再是全局名字空間,而是虛擬容器名字空間。JBS模型中的網(wǎng)絡隔離主要是根據(jù)虛擬容器動態(tài)創(chuàng)建出的 IP地址進行隔離的。chroot命令在Linux系統(tǒng)中,被用于改變系統(tǒng)根目錄位置,這會導致虛擬容器的根目錄的變動。在JBS系統(tǒng)中,引用了虛擬容器根目錄屏蔽技術(Chroot Barrier),使用一個特殊的文件屬性(special file attribute),阻止退出虛擬容器根目錄和修改它。現(xiàn)在的Linux兼容性系統(tǒng)中,并沒有完全實現(xiàn) POSIX兼容性標準。為了提供更安全的進程保護,JBS增強了Linux兼容性,通過使用虛擬容器上下文的掩碼(mask)技術,來限制進程執(zhí)行權(quán)限。

    1.2 虛擬容器的應用

    近來的大量研究主要貢獻是通過檢測虛擬環(huán)境中應用程序行為,來保護虛擬環(huán)境。相反,JBS模型更關注于虛擬容器間的交互,或者虛擬容器與遠程主機之間交互。每初始化一個虛擬容器,就需要創(chuàng)建所對應的虛擬容器的根目錄(root file system),每個虛擬容器都會被分配在某個統(tǒng)一分支文件名稱空間下。

    基于對已有的 UnionFS文件系統(tǒng)的研究,改進了現(xiàn)有Linux-VServer虛擬容器創(chuàng)建方法,應用統(tǒng)一名稱空間的文件系統(tǒng)。例如,修改后的JBS模型內(nèi)核的Debian操作系統(tǒng)中安裝通用應用程序/bin/Apache和/bin/Firefox,這兩個可執(zhí)行文件和配置文件直接保存在宿主操作系統(tǒng)中。通過使用JBS遠程虛擬容器管理工具,創(chuàng)建兩個虛擬容器/JBS/vs1和/JBS/vs2,分別用來承載/bin/Apache和/bin/Firefox。Apache和Firefox應用程序在運行時都會產(chǎn)生臨時文件(例如歷史記錄),并需要將臨時文件或者程序結(jié)束產(chǎn)生的持久數(shù)據(jù),保存在文件系統(tǒng)中。因此應用程序在虛擬容器環(huán)境下,會把數(shù)據(jù)分別保存到自己新創(chuàng)建出的文件夾下/JBS/vs1/.apache,/JBS/vs2/.Mozilla,/JBS/vs2/download中。Firefox臨時文(例如密碼,瀏覽歷史)都保存在/JBS/vs2/.Mozilla文件夾中,下載的文件保存到/JBS/vs2/download文件夾中。Apache的logging日志保存在/JBS/vs1/.apache文件夾下。

    從圖1可以看出,F(xiàn)irefox和Apache應用程序都是保存在宿主主機中。當Firefox運行時,它會根據(jù)配置策略運行在虛擬容器 VS2中,容器中的虛擬操作系統(tǒng)的根節(jié)點是/JBS/VS2,/bin/Firefox是只讀應用程序,不可以被修改,而根目錄/JBS/VS2是可讀可寫的,因此Firefox應用程序會動態(tài)的創(chuàng)建兩個文件夾JBS/VS2/.mozilla和/JBS/VS2/download),用來保存臨時數(shù)據(jù)和持久數(shù)據(jù)。但是在虛擬容器 VS2中的Firefox并不能訪問虛擬容器VS1中的數(shù)據(jù),也就是不能訪問/JBS/VS2文件夾。

    圖1 名字空間

    如果運行Firefox時,因為程序中的bug,導致下載了木馬程序(Trojan horse)kill,將被保存到/JBS/VS2/bin文件夾下。當Apache運行時,運行在/JBS/VS1虛擬容器中,并不會觸發(fā)/JBS/VS2/bin目錄下的kill木馬程序。當應用程序運行完成之后,JBS模型會應用文件對比技術,發(fā)現(xiàn)/JBS/VS2/bin的文件變動,從而檢測出木馬入侵。

    JBS模型不僅僅提供入侵檢測,木馬查殺,系統(tǒng)安全等功能,而且為操作系統(tǒng)更新程序也提高很大便利。通過使用Linux系統(tǒng)的自動更新程序(例如:Debian操作系統(tǒng)的apt-get和Red hat的yum),更新宿主操作系統(tǒng)的應用程序。當虛擬容器運行時,會調(diào)用宿主操作系統(tǒng)最新版本的應用程序程序。

    2 JBS系統(tǒng)測試

    本文為了測試JBS模型的性能,選擇4個比較常用應用軟件進行測試:HTTP服務器Apache,桌面文本編輯器gedit,瀏覽器Firefox,還有版本管理工具SVN。通過測量系統(tǒng)調(diào)用的數(shù)量,來分析JBS模型對性能的改進。

    2.1 系統(tǒng)調(diào)用對比測試

    本文選擇使用Kprobes作為內(nèi)核檢測工具,用于檢測和記錄系統(tǒng)調(diào)用。對比宿主操作系統(tǒng),虛擬容器中的應用程序,所做操作相同。測試包括四個環(huán)節(jié):①使用 gedit編輯一個文件,讀取500個字節(jié),寫入600個字節(jié),將一文章拷貝粘貼到另一篇文章中,總共操作花費了1分鐘。②使用Firefox去訪問北京工業(yè)大學網(wǎng)站(http://www.bjut.edu.cn),點擊所有導航,最后回到首頁。③使用 Apache服務,提供靜態(tài)網(wǎng)站服務,將 bjut.edu.cn網(wǎng)站抓取下來,放在本地,使用 wget請求頁面,5秒鐘一次,一共1分鐘;④最后測試SVN版本管理工具,使用SVN客戶端應用程序,上傳總共20個文件,總共10Mbit。每個應用程序都是單獨運行在虛擬容器中或者主機中的,所有其他非必要服務和程序,在測試的時候都是關閉的。測試結(jié)果如圖2所示,從圖2中可以明顯看出虛擬容器需要記錄的系統(tǒng)調(diào)用的數(shù)量有了明顯的下降。這是因為虛擬容器可以看成一個特殊的應用程序,它包括所有屬于它的進程和線程。而實際操作系統(tǒng),它在同一個時間會處理多個系統(tǒng)事件,遠遠超過了虛擬容器需要處理的事件。

    2.2 啟動對比測試

    測試應用程序啟動時需要記錄的系統(tǒng)調(diào)用和必須記錄的系統(tǒng)調(diào)用。當應用程序啟動時,會加載必須的他所需的靜態(tài)庫和其他資源文件。為了提高測試的真實性,在運行這些測試程序之前,修改它們的默認配置:Firefox默認首頁為空白頁,gedit直接打開,Apache和SVN的配置最小化啟動。測試結(jié)果如圖3所示。

    從圖3可以看出,Apache和SVN必須記錄的系統(tǒng)事件很少,接近于零。通過使用只讀應用程序運行方式,減少系統(tǒng)調(diào)用的記錄數(shù)量。

    圖3與圖2是不能相互比較的,圖2是多個軟件交互之后得出的測量結(jié)果。如果打開Firefox 10次的話,JBS模型需要記錄系統(tǒng)調(diào)用是 5000次,而本地操作系統(tǒng)需要記錄的次數(shù)就是44000次,比例超過1比8。

    3 結(jié)束語

    本文提出一個通用的軟件交互檢測模型 JBS,基于Linux-VServer]進行擴展,增加對統(tǒng)一名字空間文件系統(tǒng)的支持,實現(xiàn)了操作系統(tǒng)容器虛擬監(jiān)測環(huán)境COSVME。解決虛擬容器中的軟件交互檢測和系統(tǒng)資源隔離的問題。

    通過應用JBS模型,讓系統(tǒng)調(diào)用記錄降低到原來的1/8。對比通用系統(tǒng)調(diào)用記錄系統(tǒng),證明本文提出的通用JBS模型,明顯減少了記錄應用程序的系統(tǒng)調(diào)用的數(shù)量,并提高了監(jiān)測性能。因為基于Linux操作系統(tǒng),JBS模型也具有了支持不同硬件平臺的特性。

    JBS模型作為一種通用性軟件交互檢測模型,可以被應用于多種硬件平臺,檢測不同類型的應用程序。它可以被應用于軟件審查,入侵檢測,系統(tǒng)分析和系統(tǒng)恢復等系統(tǒng)安全方面研究。

    [1] Linux-VServer: http://linux-vserver.org/Paper.

    [2] Soltesz,S., P?tzl, H.,Fiuczynski,M. E.,Bavier,A.,and Peterson,L.Container-based operating system virtualization: a scalable,high-performance alternative to hypervisors[C]. In Proceedings of the ACM Sigops/Eurosys European Conference on Computer Systems (EuroSys '07),Lisbon, Portugal,March 2007.

    猜你喜歡
    文件夾調(diào)用宿主
    磁力文件夾
    病原體與自然宿主和人的生態(tài)關系
    科學(2020年3期)2020-11-26 08:18:22
    龜鱉類不可能是新冠病毒的中間宿主
    核電項目物項調(diào)用管理的應用研究
    LabWindows/CVI下基于ActiveX技術的Excel調(diào)用
    測控技術(2018年5期)2018-12-09 09:04:46
    調(diào)動右鍵 解決文件夾管理三大難題
    基于系統(tǒng)調(diào)用的惡意軟件檢測技術研究
    表現(xiàn)為扁平苔蘚樣的慢性移植物抗宿主病一例
    人乳頭瘤病毒感染與宿主免疫機制
    TC一鍵直達常用文件夾
    電腦迷(2015年1期)2015-04-29 21:24:13
    乐清市| 科技| 平遥县| 筠连县| 阿图什市| 靖江市| 浮梁县| 观塘区| 临沂市| 宾川县| 奉节县| 兰坪| 安龙县| 安阳市| 灵璧县| 锡林浩特市| 白河县| 上饶县| 富民县| 舒城县| 万全县| 荆门市| 外汇| 嘉义市| 清新县| 呼和浩特市| 阿城市| 禹城市| 大埔区| 陈巴尔虎旗| 江川县| 溆浦县| 东乡| 西城区| 云龙县| 宣恩县| 岚皋县| 宿迁市| 平定县| 大方县| 晴隆县|