基于USB的存儲設(shè)備信息安全防護(hù)設(shè)計(jì)
2.3 區(qū)分硬盤和U盤驅(qū)動器本文引用地址:http://2s4d.com/article/202622.htm
作為磁盤驅(qū)動器的低層設(shè)備過濾器驅(qū)動程序。在區(qū)分硬盤和U盤驅(qū)動器時(shí),Device_Ob_iect->DeviceType的值并不能真正區(qū)分硬盤和U盤驅(qū)動器。這個(gè)值對于U盤而言,第一次插入時(shí)是0x2d,但是,一旦被虛擬化成磁盤分區(qū)后,它將變成07。這和本地硬盤沒有任何區(qū)別。因此,如果采用IoGetDeviceProperty來獲得當(dāng)前物理設(shè)備對象的總線類型的GUID,就往往會導(dǎo)致操作系統(tǒng)出現(xiàn)藍(lán)屏(系統(tǒng)死機(jī))。因?yàn)楹瘮?shù)調(diào)用要求在passive-level執(zhí)行。而不是dispatch―level。其代碼如下:
但是,由于符號鏈接的名稱和光盤驅(qū)動器的設(shè)備類型將保持不變。所以,可以通過修改設(shè)備擴(kuò)展的內(nèi)部結(jié)構(gòu),并增加DeviceType項(xiàng),然后根據(jù)符號鏈接的名稱和設(shè)備類型來設(shè)置:deviceExtension->DeviceType
該方法對光盤和硬盤以及USB都有很好的支持。其代碼如下:
3 結(jié)束語
本文在分析了磁盤讀寫技術(shù)的基礎(chǔ)上,采用對磁盤驅(qū)動器進(jìn)行過濾的方法,給出了基于過濾驅(qū)動的USB存儲設(shè)備的單向控制方法。這種技術(shù)的實(shí)現(xiàn)能有效解決涉密信息的外泄,是內(nèi)網(wǎng)安全的一種重要輔助手段。
評論