1.前言
USB外部串行總線標準廣泛應用于規范電腦與外部設備的連接和通訊,可以連接打印機、掃描儀、移動硬盤、外置光軟驅等設備。在傳統的架構中,USB移動存儲設備可以通過操作系統內核進行管理。在虛擬化架構下,為了滿足不同用戶的計算需求,一個虛擬化平臺上可能同時運行多個虛擬機,這些虛擬機共享同一個硬件平臺,由虛擬機控制器進行統一管理。
虛擬化的本質是對物理設備的共享,平臺上的多個虛擬機共享一套物理資源。虛擬化架構下的物理外設接口是屬于整個平臺的資源,不屬于任何一個虛擬機。由于虛擬化平臺缺乏相關機制來辨別USB設備所屬虛擬機,因此當虛擬機用戶將USB存儲設備連接到平臺時,設備可能被沒有使用權限的用戶訪問。
當前,還沒有針對虛擬化平臺下多虛擬機共存的特點而設計的USB存儲設備訪問控制系統。本文的主要工作是分析USB接口驅動系統和虛擬化平臺的工作原理,研究基于身份認證的虛擬化USB接口訪問控制機制,通過屏蔽非授權用戶保護虛擬化平臺中USB數據的安全。
2.USB驅動系統
2.1 Linux系統USB驅動
USB通用串行總線是最復雜的外部設備接口標準之一,提供了串行I/O,動態設備配置和通用設備連接,USB具有傳輸速度快(USB1.1是12Mbps, USB2.0是480Mbps)、使用方便、支持熱插拔、連接靈活、獨立供電等特點,可以連接鼠標、打印機、掃描儀、移動硬盤、數碼相機等幾乎所有的外部設備。
Linux系統下的USB驅動系統由三個層次的驅動模塊構成:
(1)USB功能驅動是針對具體設備的驅動,根據不同USB設備的特點編寫的,如USB存儲介質驅動、USB人機交互設備驅動以及USB掃描驅動。當應用程序或者其他設備驅動向USB設備發出I/O請求時,USB功能驅動將這些I/O請求轉換成一系列的USB命令,然后將它們以USB請求塊URB(USB Request Block)的形式提交給USB核心驅動。
(2)USB核心驅動程序同時為上層的USB功能驅動和下層的USB主機控制器驅動提供了通用的接口,其主要功能是[第一論文網專業提供代寫論文和論文代寫服務,歡迎您的光臨lunwen.1kejiAN.com]動態地配置和管理USB設備,當一個新的USB設備連接到系統總線時,首先由核心驅動程序開始對設備進行枚舉,從而獲取特定設備信息,加載該設備相應的功能驅動。
(3)USB主機控制器驅動是用于控制USB主機控制器的驅動,當USB主機控制器驅動從USB核心驅動接收到URB后,會將它們分割成更小的請求片,連接到不同的幀列表中,然后交給主機控制器芯片完成具體的I/O事務。
2.2 虛擬化架構USB驅動
虛擬化架構下的USB驅動系統采用的是前后端分離的設備驅動模型。設備驅動分為前端和后端兩部分,前端驅動位于用戶虛擬機中,相當于虛擬的驅動程序,作為后端驅動的代理其主要功能是負責和后端驅動通信,不需要接觸具體硬件細節。后端位于特權管理域中,是某種類型的USB設備驅動,如USB存儲介質驅動、USB人機交互設備驅動以及USB掃描驅動等,主要負責操作物理主機控制器和設備。前后端驅動通過共享內存的方式進行通信。
前端驅動負責監聽用戶的USB請求,并在虛擬機操作系統中建立一個虛擬的USB設備樹。當收到用戶的USB請求后,前端驅動通過內存映射的方式將用戶的USB請求發送到后端驅動,后端驅動在接收到前端驅動的USB請求后,創建URB并將URB傳輸給物理設備。后端驅動完成物理主機控制器和設備操作,并將物理設備分配到客戶虛擬機的虛擬USB設備樹中。USB請求執行完成之后,后端驅動會將USB的執行的狀態通過共享內存返回給前端驅動。客戶虛擬機透明地操縱虛擬控制器,與操縱實際的主機控制器一樣。
3.USB訪問控制系統
基于虛擬化平臺USB驅動系統的特點,本文設計了一種適應于虛擬化架構的USB設備訪問控制系統,用以解決虛擬化平臺上USB存儲設備的數據安全問題,保障USB存儲設備在虛擬化平臺上安全使用。
3.1 系統組成
訪問控制系統的設計以虛擬化架構的USB驅動系統為基礎,以模塊的形式集成在虛擬化架構的USB驅動系統中。
訪問控制系統由訪問接口模塊、用戶及設備信息管理模塊、加密模塊和USB接口管理模塊四部分組成。
(1)訪問接口模塊是系統中其他模塊的數據輸入輸出的接口,負責接收客戶虛擬機設備連接程序發送的消息。
(2)用戶及設備信息管理模塊負責管理用戶與設備之間的映射關系,其記錄格式是:(虛擬機ID,設備ID,密鑰),虛擬機ID用于區分同一硬件平臺上運行的多個虛擬機,設備ID表示接入硬件平臺的USB外部設備,密鑰與設備ID綁定,作為虛擬機有權使用設備的唯一憑證。
(3)加密模塊中含有一個隨機密鑰生成器,對有新的設備加入時,加密模塊會設備生成一個隨機密鑰并與設備ID綁定,作為設備信息的唯一標識。該密鑰會返回給用戶及設備信息管理模塊存儲,由用戶及設備信息管理模塊分配給授權使用的客戶虛擬機,作為客戶虛擬機中使用USB設備的憑證。
(4)USB接口管理模塊的功能主要是控制各個虛擬機的虛擬USB接口,它提供了一組虛擬USB主機控制器和接口操作函數,包括查詢空閑接口,設備接入,設備斷開,接口遍歷,檢查USB主機控制器狀態等。
3.2 工作模式
訪問控制系統位于虛擬機管理域中,具有最高特權級,負責對各虛擬機的設備訪問權限進行管理。當有新的USB設備接入虛擬機平臺時,虛擬機控制器用隨機生成的密鑰,對設備進行加密,密鑰與設備ID綁定,作為客戶虛擬機有權使用設備的唯一憑證。被授權使用USB設備的客戶虛擬機,被管理域分配與該設備綁定的密鑰。
4.結束語
本文針對虛擬化平臺下USB接口的特點,提出了虛擬化平臺USB接口訪問控制系統,對試圖連接到客戶虛擬機的USB存儲設備的用戶進行身份認證,屏蔽非法的用戶使用USB存儲設備的請求,對保證USB設備中重要隱私數據的安全重要意義。但是對于控制系統本身的安全性分析不足,沒有考慮控制系統本身的安全防護問題,再下一步的工作中,針對虛擬機架構的特點,應提出對USB設備中數據的加解密機制,進一步提高隱私數據的安全性。
核心關注:拓步ERP系統平臺是覆蓋了眾多的業務領域、行業應用,蘊涵了豐富的ERP管理思想,集成了ERP軟件業務管理理念,功能涉及供應鏈、成本、制造、CRM、HR等眾多業務領域的管理,全面涵蓋了企業關注ERP管理系統的核心領域,是眾多中小企業信息化建設首選的ERP管理軟件信賴品牌。
轉載請注明出處:拓步ERP資訊網http://m.hanmeixuan.com/
本文標題:基于虛擬化架構的USB訪問控制的相關策略
本文網址:http://m.hanmeixuan.com/html/consultation/10839615339.html