封USB移动存储的程序
来源:互联网 发布:线刷宝软件下载 编辑:程序博客网 时间:2024/05/08 11:14
现在USB存储越来越多,给商业信息的安全带来很大威胁。虽然在BIOS里面可以禁用USB,可是鼠标键盘都是使用USB的接口。如何既能防止使用U盘又能使键盘鼠标正常运行?
经过了解,在xp里面封锁USB存储的不外乎两种方法,第一种,修改注册表,将USBSTOR的star值改为4;2、将XP自带的U盘驱动程序inf文件改为不可读。为了保险起见,还要将注册表限制住,不让人随便使用regedit来修改注册表。
下面分步说明如何来做:
经过了解,在xp里面封锁USB存储的不外乎两种方法,第一种,修改注册表,将USBSTOR的star值改为4;2、将XP自带的U盘驱动程序inf文件改为不可读。为了保险起见,还要将注册表限制住,不让人随便使用regedit来修改注册表。
下面分步说明如何来做:
- 为了修改注册表,需要引用1个库,Microsoft.win32 。
- 为了修改移动存储的驱动程序,需要引用 System.io 。
- 注册表里面“Local_MACHINE/SYSTEM/CurrentControlSet/Services”会有一个USBSTOR的键值。请注意,这个键只有在曾经插入过移动存储器后才可以建立。如果是新机器,以前没有插过U盘或者其他的存储设备,则不会有这个键值,需要重新建立。
- 我们下一段程序如下:
- '将注册表修改,使其无法使用U盘存储
- Dim rk As RegistryKey = Registry.LocalMachine
- Dim rkServices As RegistryKey = rk.OpenSubKey("SYSTEM/CurrentControlSet/Services", True)
- Dim rkUsbStor As RegistryKey
- Dim UsbStors() As String = rkServices.GetSubKeyNames
- Dim haveUsbStor As Boolean
- '判断USBSTOR是否存在
- For Each str As String In UsbStors
- If str = "USBSTOR" Then
- haveUsbStor = True
- End If
- Next
- If haveUsbStor Then
- rkUsbStor = rkServices.OpenSubKey("USBSTOR", True)
- Else
- rkUsbStor = rkServices.CreateSubKey("USBSTOR", RegistryKeyPermissionCheck.ReadWriteSubTree)
- End If
- rkUsbStor.SetValue("Start", "4", RegistryValueKind.DWord)
- 以上代码将 USBSTOR子项的STAR键值改为 4 。(默认是3)
- 下面将一定存储的驱动程序改名。曾经尝试过将相应文件的权限修改点,不过真的是很麻烦。。。
- 代码如下:System.IO.File.Move("c:/windows/inf/usbstor.pnf", "c:/windows/inf/usbstor.pnf.old")
System.IO.File.Move("c:/windows/inf/usbstor.inf", "c:/windows/inf/usbstor.inf.old") - 以上代码将驱动文件后面添加了一个old后缀,这样插入U盘以后就找不到驱动程序了。就算找到其他的驱动程序,由于第一条已经限制,所以也不会显示移动盘符。
- 下面的操作是可选的,就是将注册表编辑器锁定:
- '将注册表锁定
- Dim rk As RegistryKey = Registry.CurrentUser
- Dim rkDisable As RegistryKey = rk.OpenSubKey("Software/Microsoft/Windows/CurrentVersion/Policies", True)
- Dim rkSystem As RegistryKey
- Dim subKeyName() As String = rkDisable.GetSubKeyNames
- Dim Bl As Boolean
- For Each name As String In subKeyName
- If name = "System" Then
- Bl = True
- End If
- Next
- If Bl Then
- rkSystem = rkDisable.OpenSubKey("System", True)
- Else
- rkSystem = rkDisable.CreateSubKey("System", RegistryKeyPermissionCheck.ReadWriteSubTree)
- End If
- '值是零,就代表允许编辑
- rkSystem.SetValue("DisableRegistryTools", 1, RegistryValueKind.DWord)
- 经过以上操作就可以将移动存储进行了锁定。
- 有几点是必须的:1、安装Framework2.0;2、修改驱动文件名的时候需要注意,一定要添加try catch。这样可以防止读写文件时候的异常。
- 做了一个界面,大家看看:
- 相应程序的下载地址:http://download.csdn.net/source/569966
- 封USB移动存储的程序
- 封usb存储设备
- 封usb接口的方法
- USB移动存储设备的检测、写入及弹出
- USB移动存储设备的检测、写入及弹出
- 如何封掉USB存储设备,而不封鼠标键盘打印机
- 封禁USB、禁止USB、封掉USB、停用USB端口的方法
- windows2003自动默认usb移动存储设备
- Fedora Core 4.0 HAL配置即插即用移动存储(USB及1394)的实践
- 把libcsdbg封进自己的程序
- 来自于微信小程序的一封简讯
- Device Lock 封USB 解决办法
- USBViewer(USB移动存储设备使用记录查看器)
- 树莓派自动挂载usb移动存储设备
- 一个可以禁用USB存储设备的程序(SetupAPI的使用方法)
- 一个可以禁用USB存储设备的程序(SetupAPI的使用方法)
- 【阿笨狗】U盘、闪盘独门使用、保养经验大放送,有USB移动存储设备的进来看看
- 目前调试移动设备程序只能通过USB线缆
- 屏蔽功能类 ?
- 字符串的距离问题
- thoughtswork公司的面试题目
- window.close()及 window.open()
- 第一日 搜神
- 封USB移动存储的程序
- ant访问cvs目录
- location.reload()方法简介
- asp.net 获得客户端ip
- 进程-线程-区别
- sql server中查询分析器和设计器性能真的差别很大吗?
- IIS5、IIS6、IIS7的ASP.net 请求处理过程比较
- 各类排序算法java的实现
- 一个记录集,如何得到该记录集中某一字段所有是重复记录的记录集