版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進行舉報或認領(lǐng)
文檔簡介
虛擬機檢測與蜜罐檢測對于虛擬機與蜜罐的檢測,首先我們要了解什么是虛擬機,什么是蜜罐。首先虛擬機是指通過軟件模擬的具有完整硬件系統(tǒng)功能的、運行在一個完全隔離環(huán)境中的完整計算機系統(tǒng)。而蜜罐好比是情報收集系統(tǒng)。蜜罐好像是故意讓人攻擊的目標,引誘黑客前來攻擊。所以攻擊者入侵后,你就可以知道他是如何得逞的,隨時了解針對公司服務(wù)器發(fā)動的最新的攻擊和漏洞。還可以通過竊聽黑客之間的聯(lián)系,收集黑客所用的種種工具,并且掌握他們的社交網(wǎng)絡(luò)。作為信息安全方向的學(xué)員,了解虛擬機與蜜罐的檢測技術(shù),對于網(wǎng)絡(luò)安全的研究有著重要的意義。一、對于虛擬機的檢測對虛擬機主要有以下四種方向的檢測方法:利用內(nèi)存差異的檢測方法;利用相對性能的檢測方法;利用虛擬處理器的異常行為的檢測方法;其他檢測方法;利用內(nèi)存的差異性檢測,主要有IDT(InterruptDescriptorTable)或LDT(LocalDescriptorTable)的檢測方法。該方法利用了虛擬機和真實主機中重要的操作系統(tǒng)的某些關(guān)鍵數(shù)據(jù)結(jié)構(gòu)的不同位置來判斷執(zhí)行環(huán)境是否是虛擬機。這類方法對VMware、VirtualPC都比較有效。x86的ISA中存在17條敏感非特權(quán)指令,其中包括SIDT、SLDT和SGDT,它們可以在用戶態(tài)使用。使用它們可以獲取IDT、LDT和GDT(GlobalDescriptorTable)的信息。因為只有一個IDTR寄存器、一個GDTR寄存器和一個LDTR寄存器,但是有兩類操作系統(tǒng)在運行:虛擬機系統(tǒng)和真實主機系統(tǒng)。為了能夠正確地虛擬化,每個虛擬機都應(yīng)該維持這幾個描述表的“影子”拷貝,虛擬機監(jiān)控器必須改變虛擬機中描述表的位置。這樣就會使虛擬機和真實主機產(chǎn)生一個不一致,使用這個不一致可以用來判斷虛擬機的存在。其中利用IDT基址檢測虛擬機的具體實現(xiàn)如下:中斷描述符表IDT(InterruptDescriptorTable)用于查找處理中斷時所用的軟件函數(shù),它是一個由256項組成的數(shù)據(jù),其中每一中斷對應(yīng)一項函數(shù)。為了讀取IDT基址,我們需要通過SIDT指令來讀取IDTR(中斷描述符表寄存器,用于IDT在內(nèi)存中的基址),SIDT指令是以如下格式來存儲IDTR的內(nèi)容:typedefstruct{WORDIDTLimit;//IDT的大小WORDLowIDTbase;//IDT的低位地址WORDHiIDTbase;//IDT的高位地址}IDTINFO;由于只存在一個IDTR,但又存在兩個操作系統(tǒng),即虛擬機系統(tǒng)和真主機系統(tǒng)。為了防止發(fā)生沖突,VMM(虛擬機監(jiān)控器)必須更改虛擬機中的IDT地址,利用真主機與虛擬機環(huán)境中執(zhí)行sidt指令的差異即可用于檢測虛擬機是否存在。#include<stdio.h>intmain(){unsignedcharm[2+4],rpill[]="\x0f\x01\x0d\x00\x00\x00\x00\xc3";//相當于SIDT[adrr],其中addr用于保存IDT地址*((unsigned*)&rpill[3])=(unsigned)m;〃將sidt[addr]中的addr設(shè)為m的地址((void(*)())&rpill)();//執(zhí)行SIDT指令,并將讀取后IDT地址保存在數(shù)組m中printf("idtbase:%#x\n",*((unsigned*)&m[2]));〃由于前2字節(jié)為IDT大小,因此從m[2]開始即為IDT地址if(m[5]>0xd0)printf("InsideMatrix!\n”,m[5]);//當IDT基址大于0xd0xxxxxx時則說明程序處于VMware中elseprintf("NotinMatrix.\n");return0;}但是,IDT檢測方法有一個缺點,它在有多個CPU的機器上誤警率太高。因為多個CPU的機器上,每個處理器有不同的IDT,IDT的基地址在不同時刻所取得的值并不相同。為此,DannyQuist和ValSmith提出了使用LDT的檢測方法。LDT檢測方法和IDT的方法類似但是它在具有多個CPU的環(huán)境時檢測的表現(xiàn)非常好??偟膩碚f,這類方法簡單有效,通用性強,虛擬機實現(xiàn)不能避免此類差異。其次是利用相對性能的檢測方法。主要介紹基于時間差的檢測方式。通過選擇一段經(jīng)過精心設(shè)計的代碼,通過比較該代碼在真實物理主機和目標主機上運行的相對時間來判斷是否存在虛擬機。這類方法是一種通用的方法,不依賴于具體的軟件虛擬機的實現(xiàn)方法。這種方法的缺點是需要知道目標主機的硬件配置信息。但是,這個前提通常很容易得到滿足。如在進行惡意軟件分析時,惡意軟件很容易探測出目標主機的配置信息。JasonFranklin等人就使用了這種思想,他們提出的方法不需要獲得目標主機的精確配置,因此,JasonFranklin稱他們所使用的方法為FuzzyBenchmake方法。實驗證明,該方法能夠檢測出VMware、VirtualPC、Xen等的存在。2.L杓:州U怵工戡圖2FuzzyBenchmarking檢測框架第三是利用虛擬處理器的異常行為的檢測方法。該方法主要通過利用虛擬處理器的異常行為來判斷虛擬機是否存在。為了處理如客戶機和宿主機進行通信等有關(guān)問題,一些虛擬機引入了一些“額外”的非標準x86指令集的指令。主要有以下三種:通過執(zhí)行特權(quán)指令來檢測虛擬機。Vmware為真主機與虛擬機之間提供了相互溝通的通訊機制,它使用“IN”指令來讀取特定端口的數(shù)據(jù)以進行兩機通訊,但由于IN指令屬于特權(quán)指令,在處于保護模式下的真機上執(zhí)行此指令時,除非權(quán)限允許,否則將會觸發(fā)類型為“EXCEPTION_PRIV_INSTRUCTION”的異常,而在虛擬機中并不會發(fā)生異常,在指定功能號0A(獲取VMware版本)的情況下,它會在EBX中返回其版本號“VMXH”;而當功能號為0x14時,可用于獲取VMware內(nèi)存大小,當大于0時則說明處于虛擬機中?;赟TR的檢測方法。在保護模式下運行的所有程序在切換任務(wù)時,對于當前任務(wù)中指向TSS的段選擇器將會被存儲在任務(wù)寄存器中,TSS中包含有當前任務(wù)的可執(zhí)行環(huán)境狀態(tài),包括通用寄存器狀態(tài),段寄存器狀態(tài),標志寄存器狀態(tài),EIP寄存器狀態(tài)等等,當此項任務(wù)再次被執(zhí)行時,處理器就會其原先保存的任務(wù)狀態(tài)。每項任務(wù)均有其自己的TSS,而我們可
以通過STR指令來獲取指向當前任務(wù)中TSS的段選擇器。這里STR(Storetaskregister)指令是用于將任務(wù)寄存器(TR)中的段選擇器存儲到目標操作數(shù),目標操作數(shù)可以是通用寄存器或內(nèi)存位置,使用此指令存儲的段選擇器指向當前正在運行的任務(wù)的任務(wù)狀態(tài)段(TSS)。在虛擬機和真實主機之中,通過STR讀取的地址是不同的,當?shù)刂返扔?x0040xxxx時,說明處于虛擬機中,否則為真實主機?;谧员頇z測虛擬機。在windows虛擬機中常常安裝有VMwareTools以及其它的虛擬硬件(如網(wǎng)絡(luò)適配器、虛擬打印機,USB集線器……),它們都會創(chuàng)建任何程序都可以讀取的windows注冊表項,因此我們可以通過檢測注冊表中的一些關(guān)鍵字符來判斷程序是否處于虛擬機之中。最后是其他檢測方法。主要是利用虛擬硬件指紋檢測虛擬機。利用虛擬硬件指紋也可用于檢測虛擬機的存在,比如VMware默認的網(wǎng)卡MAC地址前綴為“00-05-69,00-0C-29或者00-50-56”,這前3節(jié)是由VMware分配的唯一標識符OUI,以供它的虛擬化適配器使用。但由于這些可經(jīng)過修改配置文件來繞過檢測。另外,還可通過檢測特定的硬件控制器,BIOS,USB控制器,顯卡,網(wǎng)卡等特征字符串進行檢測。由于目前虛擬機技術(shù)的發(fā)展,經(jīng)過測試,目前這些技術(shù)許多已經(jīng)失效,無法進行具體演示,新的虛擬機檢測技術(shù)有待我們?nèi)ヌ剿靼l(fā)現(xiàn)。W[R-unning]-Ora-deVMVirtual&o>cM-achineDevi-cesHelp?jc-Microsoft?jc-MicrosoftVisualC++-[jc,cpp]團文件(E犒舊查看①?Adi工程凹蛆建四工具口窗口也幫助凹'E:\MicrosoftVisualStudio-\MyPr0jects\jc\IDebu]g^c.exe 曾|洛口尋|將電電|二『以~|匝同舀輛|FindFileData^'E:\MicrosoftVisualStudio-\MyPr0jects\jc\IDebu]g^c.exe +尊+尊Ijccla請按任意鍵繼續(xù)???
雖然無法檢測,但我們?nèi)阅芸闯鎏摂M機與真機的差別,也為我們今后的探索提供了一些思路。二、蜜罐的檢測技術(shù)目前,蜜罐技術(shù)已由單一的蜜罐發(fā)展到現(xiàn)在的第三代蜜網(wǎng),還出現(xiàn)了動態(tài)蜜罐(ActivateHoneypots)、蜜場(Honeyfarm)、Honeytoken、應(yīng)用層蜜罐(Honeyapp)、同步/異步交互蜜罐(Active/PassiveHoneyclient)等新概念、新技術(shù)。但是其核心技術(shù)如數(shù)據(jù)控制、數(shù)據(jù)捕獲、數(shù)據(jù)分析、重定向等是不會變的。在計算機應(yīng)用領(lǐng)域,無論蜜罐作為一個系統(tǒng)還是一個軟件甚至是網(wǎng)絡(luò),都會存在這樣那樣的弱點,而蜜罐識別技術(shù)就是利用這些弱點來對蜜罐進行識別。首先是基于蜜罐個性特征的識別技術(shù)。在實際的應(yīng)用中,由于Honeypot產(chǎn)品和技術(shù)的不同,針對特定的Honeypot進行識別的技術(shù)也是多種多樣。主要方法有虛擬機檢測和Uml檢測。虛擬機檢測上面已近有了較詳細的介紹,這里主要講uml檢測。UML(User—modeLinux)允許在一個Linux系統(tǒng)(主機)上運行另外一個Linux系統(tǒng)(客戶機),客戶機可以作為蜜罐使用,和VMware類似,它同樣是虛擬的系統(tǒng),并沒有使用實際的硬盤,而是使用一個叫UDB的虛擬IDE設(shè)備。通過查看關(guān)于UML的系統(tǒng)配置文件,例如檢查一下/etc/fstab和目錄/dev/ubd,或者運行mount你就會發(fā)現(xiàn)運行在一個,UMLsystem內(nèi),當然這些信息可以被偽裝。其次是基于蜜罐共性特征的識別技術(shù),主要分為基于TCP/IP協(xié)議棧的識別和基于網(wǎng)絡(luò)特征的識別。基于TCP/IP協(xié)議棧的操作系統(tǒng)識別是比較成熟的技術(shù),這方面的常用工具有Nmap,Queso等。在比較簡單的低交互度的一些Honeypot中,僅僅在應(yīng)用程序級別模擬操作系統(tǒng),并沒有對協(xié)議棧進行模擬,如Specter假如模擬的操作系統(tǒng)和本機的操作系統(tǒng)不相同,攻擊者利用協(xié)議棧的指紋識別可以發(fā)現(xiàn)正在攻擊的操作系統(tǒng)和識別出的操作系統(tǒng)類型不符,從而判斷蜜罐的存在?;诰W(wǎng)絡(luò)特征的識別,網(wǎng)絡(luò)特征主要包括連接數(shù)目、網(wǎng)絡(luò)流量、數(shù)據(jù)包內(nèi)容、TCP/IP值、網(wǎng)絡(luò)延遲和路由以及重定向等。利用網(wǎng)絡(luò)連接識別,例如對Honeywall的檢測就用到了該方法。Honeywall作為一個蜜網(wǎng)網(wǎng)關(guān),是第二代蜜網(wǎng)方案整體架構(gòu)中最重要的核心部件之一。作為蜜網(wǎng)與其他網(wǎng)絡(luò)的惟一連接點,所有流入、流出蜜網(wǎng)的網(wǎng)絡(luò)流量都將通過Honeywall,并受其控制和審計。同時由于其是一個工作在鏈路層的橋接設(shè)備,不會對網(wǎng)絡(luò)數(shù)據(jù)包進行TTL遞減和網(wǎng)絡(luò)路由,也不會提供本身的MAC地址,因此對黑客而言,Honeywall是完全不可見的。由于Honeywall的存在出境的通信將被嚴格限制,比如每天只允許15個出境TCP連接。只需要啟動大量的出境連接,然后觀察如果在一定數(shù)量的連接之后連接是否受到了阻止,即可判斷Honeywall的存在。第二種方法是利用Snortinline軟件,它檢測出從Honeypot向外發(fā)出的含有的攻擊特征的攻擊數(shù)據(jù)包,發(fā)出報警信息并對攻擊數(shù)據(jù)包加以拋棄或修改,使其不能對第三方網(wǎng)絡(luò)構(gòu)成危害。通過建立一些包含匹配Snortinline的數(shù)據(jù)庫的字串的網(wǎng)絡(luò)通信,然后檢查是否收到目的包或者檢查收到的通信是否是原來的格式,從而識別出Honeywall的存在口。對于蜜罐識
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負責。
- 6. 下載文件中如有侵權(quán)或不適當內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 2025年度離婚房產(chǎn)交易資金監(jiān)管與安全保障協(xié)議3篇
- 礦山工程合同范本安全
- 主題樂園景觀棧橋安裝合同
- 建筑裝飾勞務(wù)合同范本
- 藥品實驗室藥品研發(fā)
- 編輯出版人員工作手冊
- 2025版生態(tài)農(nóng)業(yè)用地房地產(chǎn)抵押典當合同范本3篇
- 大型機場設(shè)備安裝龍門吊租賃協(xié)議
- 知識產(chǎn)權(quán)服務(wù)授權(quán)書招投標
- 廣告公司創(chuàng)意人才聘用合同范例
- 公安學(xué)基礎(chǔ)智慧樹知到期末考試答案章節(jié)答案2024年山東警察學(xué)院
- 《受理賓客退房》教學(xué)設(shè)計
- 搪瓷制品的電磁屏蔽性能與應(yīng)用研究
- DB44-T 2480-2024 鋁及鋁合金深井鑄造安全技術(shù)規(guī)范
- GB/T 15115-2024壓鑄鋁合金
- 教科版小學(xué)二年級上冊科學(xué)期末測試卷附參考答案(滿分必刷)
- 中醫(yī)適宜技術(shù)發(fā)展現(xiàn)狀
- 【溫病學(xué)】葉天士《溫熱論》
- 部編人教版四年級數(shù)學(xué)上冊期末考試卷(可打印)
- 一例阿爾茨海默病患者的護理查房
- 公路工程有關(guān)費率
評論
0/150
提交評論