虛擬機進程監控的方法、裝置及系統的制作方法
【技術領域】
[0001]本發明涉及計算機安全領域,具體而言,涉及一種虛擬機進程監控的方法、裝置及系統。
【背景技術】
[0002]隨著近年多核系統、集群、網格甚至云計算的廣泛部署,虛擬化技術在商業上的優勢日益體現,不僅降低了 IT成本,而且還增強了系統的安全性、可靠性和可維護性,從而顯著提升企業整體業務的競爭力。
[0003]目前,虛擬化技術不斷深入,采用虛擬化技術的企業數量正以越來越快的速度增長,越來越多的企業依靠虛擬化架構運行關鍵的日常功能。虛擬化技術在解決傳統計算機系統存在的成本、安全性和可靠性等問題的同時,又引入了虛擬化架構下的新的安全問題。如何保護虛擬化架構的安全也成為企業亟待解決的問題之一。
[0004]所謂虛擬化安全就是基于虛擬化技術架構與原理,在虛擬化平臺實現一個邏輯安全層,以解決虛擬化架構下的,諸如虛擬機跳躍攻擊、虛擬機逃逸攻擊、虛擬機Rootkit攻擊、虛擬機迀移攻擊、虛擬機拒絕服務攻擊和遠程管理漏洞等安全問題。
[0005]針對現已普遍存在的虛擬機感知式惡意軟件(如RedPill)以及虛擬機Rootkit (如BluePill)等虛擬平臺攻擊軟件,目前的監控手段是在虛擬機內部安裝防病毒軟件或其它監控軟件。這種在虛擬機內部對系統進行監控的方式,很容易被同處在虛擬機內部的惡意軟件繞開。
[0006]由此可見,針對相關技術中如何提高虛擬機安全的問題,目前尚未提出有效的解決方案。
【發明內容】
[0007]針對如何提高虛擬機安全的問題,本發明提供了一種虛擬機進程監控的方法、裝置及系統,以至少解決上述問題。
[0008]根據本發明的一個方面,提供了一種虛擬機進程監控的方法,包括:
[0009]獲取虛擬化平臺中各虛擬機內部進程的列表;向監控設備發送所述各虛擬機內部進程的列表,其中,所述監控設備用于監控所述各虛擬機的內部進程。
[0010]可選地,所述獲取虛擬化平臺中各虛擬機內部進程的列表,包括:獲取虛擬化平臺中各虛擬機內部進程的內存信息;根據所述進程的內存信息解析得到所述各虛擬機內部進程的列表。
[0011]可選地,所述獲取虛擬化平臺中各虛擬機內部進程的內存信息包括:基于虛擬化平臺的內存自省技術,獲取所述虛擬機內部進行的內存信息。
[0012]可選地,所述向監控設備發送所述各虛擬機內部進程的列表,包括:判斷所述各虛擬機內部進程的列表是否發生變化;在所述各虛擬機內部進程的列表發生變化時,向監控設備發送所述各虛擬機內部進程的列表。
[0013]可選地,所述向監控設備發送所述各虛擬機內部進程的列表,包括:接收監控設備的命令,其中,所述命令用于請求獲取所述各虛擬機內部進程的列表;響應所述命令,向監控設備發送所述各虛擬機內部進程的列表。
[0014]根據本發明的另一個方面,提供了一種虛擬機進程監控的裝置,所述裝置包括:獲取模塊,用于獲取虛擬化平臺中各虛擬機內部進程的列表;發送模塊,用于向監控設備發送所述各虛擬機內部進程的列表,其中,所述監控設備用于監控所述各虛擬機的內部進程。
[0015]可選地,所述獲取模塊,包括:獲取單元,用于獲取虛擬化平臺中各虛擬機內部進程的內存信息;解析單元,用于根據所述進程的內存信息解析得到所述各虛擬機內部進程的列表。
[0016]可選地,所述發送模塊,包括:判斷單元,用于判斷所述各虛擬機內部進程的列表是否發生變化;發送單元,用于在所述各虛擬機內部進程的列表發生變化時,監控設備發送所述虛擬機內部進程的列表。
[0017]可選地,所述發送模塊,包括:接收單元,用于接收監控設備的命令,其中,所述命令用于請求獲取所述各虛擬機內部進程的列表;發送單元,用于響應所述命令,向監控設備發送所述各虛擬機內部進程的列表。
[0018]根據本發明的再一個方面,提供了一種虛擬機進程監控的系統,包括:進程獲取裝置和進程監控裝置,其中,所述進程獲取裝置,用于獲取所述虛擬化平臺中運行的各虛擬機的內部進程的列表,并向所述進程監控裝置發送所述各虛擬機的內部進程的列表;所述進程監控裝置,位于監控設備中,用于接收所述各虛擬機的內部進程的列表,并顯示所述各虛擬機的內部進程的列表。
[0019]通過本發明,獲取虛擬化平臺中各個虛擬機內部進程的列表,并將虛擬機內部進程的列表發送給監控設備,從而從虛擬機外部實現了的對虛擬機的監控,避免了在虛擬機內部對虛擬機進行監控而導致虛擬機內部惡意軟件避開監控的問題,提高了虛擬機的安全性。
【附圖說明】
[0020]此處所說明的附圖用來提供對本發明的進一步理解,構成本申請的一部分,本發明的示意性實施例及其說明用于解釋本發明,并不構成對本發明的不當限定。在附圖中:
[0021]圖1是根據本發明實施例的虛擬機進程監控的方法的流程圖;
[0022]圖2是根據本發明實施例的虛擬機進程監控的裝置的結構框圖;
[0023]圖3是根據本發明實施例的虛擬機進程監控的系統的示意圖;
[0024]圖4是根據本發明實施例的一個實例的虛擬機進程的監控系統的示意圖;以及
[0025]圖5是根據本發明實施例的一個實例的監控方法的流程圖。
【具體實施方式】
[0026]下文中將參考附圖并結合實施例來詳細說明本發明。需要說明的是,在不沖突的情況下,本申請中的實施例及實施例中的特征可以相互組合。
[0027]圖1是根據本發明實施例的虛擬機進程監控的方法的流程圖,如圖1所示,該方法包括步驟101至步驟102。
[0028]步驟101,獲取虛擬化平臺中各虛擬機內部進程的列表。
[0029]上述步驟101中,可以按照周期性或者事件觸發的方式獲取虛擬機內部進程的列表。虛擬化平臺中可以運行一個或多個虛擬機。
[0030]步驟102,向監控設備發送所述各虛擬機內部進程的列表,其中,所述監控設備用于監控所述虛擬機的內部進程。
[0031]在上述步驟102中,在存在多個虛擬機的情況下,可以按照虛擬機對虛擬機內部進程的列表進行分類。
[0032]通過本發明實施例,獲取虛擬化平臺中各虛擬機內部進程的列表,并將虛擬機內部進程的列表發送給監控設備,從而從虛擬機外部實現了的對虛擬機的監控,避免了在虛擬機內部對虛擬機進行監控而導致虛擬機內部惡意軟件避開監控的問題,提高了虛擬機的安全性。
[0033]在本發明實施例的一個實施方式中,上述步驟101中,可以獲取虛擬機內部進程的內存信息,根據所述進程的內存信息解析得到所述虛擬機內部進程的列表。
[0034]進一步地,可以基于虛擬化平臺的內存自省技術,獲取所述虛擬機內部進行的內存信息。
[0035]在本發明實施例的一個實施方式中,上所述步驟102中,可以判斷所述虛擬機內部進程的列表是否發生變化,在所述虛擬機內部進程的列表發生變化時,向監控設備發送所述虛擬機內部進程的列表。通過該實施方式,在虛擬機的列表發生變化時向監控設備發送虛擬機內部進程的列表,有利于降低消息發送數量,同時還能夠保證可靠性。
[0036]在本發明實施例的一個實施方式中,上述步驟102中,可以接收監控設備的命令,其中,所述命令用于請求獲取所述虛擬機內部進程的列表;響應所述命令,向監控設備發送所述虛擬機內部進程的列表。通過該實施方式,可以在監控設備的請求下向監控設備發送虛擬機內部進程的列表。
[0037]圖2是根據本發明實施例的虛擬機進程監控的裝置的結構框圖,如圖2所示,所述裝置包括:
[0038]獲取模塊10,用于獲取虛擬化平臺中各虛擬機內部進程的列表;
[0039]發送模塊20,與獲取模塊10相連接,用于向監控設備發送所述各虛擬機內部進程的列表,其中,所述監控設備用于監控所述虛擬機的內部進程。
[0040]在本發明實施例的一個實施方式中,獲取模塊10可以包括:獲取單元,用于獲取虛擬機內部進程的內存信息;解析單元,用于根據所述進程的內存信息解析得到所述虛擬機內部進程的列表。
[0041]進一步地,獲取單元可以基于虛擬化平臺的內存自省技術,獲取所述虛擬機內部進行的內存信息。
[0042]在本發明實施例的一個實施方式中,發送模塊20可以包括:判斷單元,用于判斷所述虛擬機內部進程的列表是否發生變化;發送單元,用于在所述虛擬機內部進程的列表發生變化時,監控設備發送所述虛擬機內部進程的列表。
[0043]在本發明實施例的一個實施方式中,發送模塊20可以包括:接收單元,用于接收監控設備的命令,其中,所述命令用于請求獲取所述虛擬機內部進程的列表;發送單元,用于響應所述命令,向監控設備發送所述虛擬機內部進程的列表。
[0044]圖3是根據本發明實施例的虛擬機進程監控的系統的示意圖,如圖3所示,該系統包括:進程獲取裝置I和進程監控裝置2,其中:
[0045]進程獲取裝置I,位于虛擬化平臺底層,用于獲取所述虛擬化平臺中運行的各虛擬機的內部進程的列表,并向所述進程監控裝置發送所述各虛擬機的內部進程的列表。
[0046]進程監控裝置2,位于監控設備中,用于接