![]() |
|
|||||||
| Petri.co.il is happy to award L4ndy the title of Most Valuable Member !!! |
| Register | Calendar |
Search |
Today's Posts | Mark Forums Read |
| Notices |
|
How to disable USB Drives (jump/flash/external/etc.)this thread has 33 replies and has been viewed 97508 times
|
![]() |
|
|
Thread Tools | Search this Thread | Display Modes |
|
#1
|
||||||||
|
||||||||
|
This explains how to disable ONLY USB storage devices(flash/Jump/external HD's) completely without disabling keyboards, mice, etc.
I decided to go this route after trying every other option I could find on the internet. So far this is the only way I have found to completely kill USB drives without ways to get around restrictions. edit: WITHOUT PURCHASING THIRD PARTY SOFTWARE First thing to do is this: 1.Run regedit and navigate to HKLM\system\currentcontrolset\services\USBstor. 2.Change the value of the dword "Start" from 3 to 4. If the dword "Start" doesnt exist, create it. This will prevent a previously installed USB device from loading when the device is plugged into the machine. ((As most of you know this a Microsoft suggestion, which does work perfectly at disabling previously installed devices, however, this alone will not disable USB storage completely. If a user plugs a new USB storage device into the machine the device will install and the dword value will be reset to 3. Now if you incorporate adding this into a script it alone will disable USB drives, but only after a user plugs a device in, removes it without uninstalling it, logs off then logs back on, thereby running the script. This means that there is a window of opportunity for users to have access to new devices, this may be acceptable for some, but not for others.)) 3. The next thing to do is to change the permisions on the USBSTOR key. You need to DENY full control on the "system" group. ((What this does is denies everyone the ability to access the USBStor key, effectively killing the ability for any user (including admins) to install USB storage devices. Now the reason you deny the "system" group is because windows will use this account if no one is logged onto the machine yet. What I mean by this is if say you want to deny a group of users called "staff", you would need to deny them using GP or a logon script. This will work great, but, if a "staff" group user plugs a USB drive in before logging in to Windows the device will be installed using in the backgroud using the "system" group, then when the user logs in the "staff" group policy is applied dening the user access to the USBstor key, but by this point it makes no difference because the devices is already installed and accessible and once a device is installed the usbstor key is no longer used.)) 3. So now that these two steps are are done, *NO ONE* will be able to install USB drives. If a user tries to use a previously installed drive the device will be blocked and nothing will happen, no prompts, nothing. This is accomplished through step 1, the dword value. What happens if a user plugs in a "New" device that was not previously installed, the hardware wizard will run, asking for the location of drivers. Regardless of whether a user selects the "automatically" search and install or if they attempt to manually install 3rd party drivers, the HW wizard will prompt the user that "access is denied" once the drivers are selected. This is the result of step 2, denying "system". Now that we know how to disable USB storage devices we need to find an efficient way to do this without driving through the registry on each and every machine. |
|
#2
|
||||||||
|
||||||||
|
continued...
This is what I did to accomplish this method of killing USB drives quickly and easily. I created 2 batch files, 1 batch to disable and another for administrators(tech support, ie.) that will re-enable USB drives if the need arises. 1: First thing is to get a copy of the tool "subinacl.exe". This tool is included with MS Server 2003 RK. ((What subinacl allows you to due is set specific permissions on the exact group or user, etc.. that you need to, this includes permissions on registry Keys which is what we will be doing.)) 2: Once you have a copy of "subinacl.exe" set up a folder for your batch files. In my particular case I wanted these batch files available on the network so I created a shared folder named "DisableUSB" on a server. Next I created a subfolder within "DisableUSB" called "subinacl". Put a copy of "subinacl.exe" in this folder. 3. Next thing to do is create 2 “reg” files in the subfolder “subinacl”. I named the 2 files “dword3.reg” and “dword4.reg”. These files are going to be used to change the value of the dword “start” in the registry key Usbstor. I assume most probably know how do create reg files, this is what should be in the files: For “dword3.reg” ****** Windows Registry Editor Version 5.00 [HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Servic es\USBSTOR] "Start"=dword:00000003 *change the 3 to a 4 for “dword4.reg”* 4. Now put these 2 files in the “subinacl” folder if they weren’t created there. OK, all the pieces should now be in place. For this example we have a shared folder (on no particular server) called “disableUSB”. Within this folder is a subfolder “subinacl” that has subinacl.exe, dword3.reg, and dword4.reg within it. 5 . Now to create the 2 batch files. I created these 2 files under the main share folder (disableUSB). One is called “disableUSBdrives.bat” which, you guessed it, disables drives, and the other for re-enabling drives, “enableUSBdrives.bat”. Wow… This is how disableUSBdrives.bat is set up: @echo off cls regedit /s \\servername\disableUSB\Subinacl\dword4.reg \\servername\DisableUSB\Subinacl\subinacl.exe /keyreg \system\currentcontrolset\services\usbstor /deny=system pause cls echo. echo **USB drives disabled** echo. Pause *the path will differ of course. \\servername is just an example. for “enableUSBdrives.bat” simply change change “dword4.reg” to “dword3.reg” AND “deny=system” to “grant=system” Notice that the only real meat to these batch’s is running regedit and running subinacl. Everything else (cls,pause,echo) is optional, for my particular situation it was needed. 6. Go the machines that you want to disable USB drives on and run the disableUSBdrives batch from the network share. And that’s it. USB drives gone. Now of course running a batch from each machine is still time consuming, but In my particular situation it had to be done this way, and is obviously much faster than driving through the registry. The most efficient way to incorporate this would be with logon scripting. Unlike with just using the dword start=4 trick, after this script is run, there is no way for joe blow user to use any of his nifty little Jumpdrives or his hot new hard drives. Also note that folder names and locations can be set up in any way and anywhere as long as the batch files point to the right place. Anyway. hope this helps someone. |
|
#3
|
||||||||||
|
||||||||||
|
NICE!! Thanks for that.
__________________
Capitalisation is the difference between helping your Uncle Jack off a horse and helping your uncle jack off a horse. ************************************************** ********************** ** Remember to give credit where credit is due and leave reputation points where appropriate ** ************************************************** ********************** |
|
#4
|
|||||||||||
|
|||||||||||
|
FYI: there is a new KB about the subject:
http://support.microsoft.com/default...b;en-us;555324
__________________
Guy Teverovsky Windowmaker's blog "Smith & Wesson - the original point and click interface" |
|
#5
|
||||||||
|
||||||||
|
I have tried the method in this post to no avail. I am having trouble with the subinacl command. Nothing I try seems to work with this utility, I have downloaded the subinacl.exe file from the Server 2003 resource kit.
In the batch file one of the commands I am typing is: ------------------ SUBINACL /KEYREG \\W20863 \HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Servi c es\USBSTOR /DENY=system=R ------------------ I have tried various syntax of this command. ie without the R on the end of the line, with or without the the computername "W20863". When I run the above command, this is the output I get: ------------------------ +KEYREG \\W20863\HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlS et\Services\USBSTOR /GRANT=users=R Elapsed Time: 00 00:00:00 Done: 0, Modified 0, Failed 0, Syntax errors 0 ------------------------- I don't understand what is happening. I don't get any sucess messages or failures by the look of it, so am finding it hard to know whats going wrong. BTW my PC is Windows XP SP2. Can someone also confirm if Subinacl works on all versions of Windows 2000 and XP? |
|
#6
|
||||||||||
|
||||||||||
|
kev147,
Why not just follow the link provided by Guy, copy the text and import the group policy template? Once you do that remove the check to only show fully managed settings. View->Filtering Use gpedit.msc if you're not on a domain.
__________________
Andrew Hinson http://www.clinlabinc.com ** Remember to give credit where credit is due and leave reputation points |
|
#7
|
||||||||||
|
||||||||||
|
I've created a few pages that'll help you configure these tettings. More will come later.
Disable USB Disks Disable USB Disks with GPO Disable Writing to USB Disks in XP SP2 Disable Writing to USB Disks with GPO See the front page of www.petri.co.il for links to the above articles.
__________________
Cheers, Daniel Petri MCSA/E, MCTS, MCT, Exchange Server MVP VP Technologies - ObserveIT |
|
#8
|
||||||||
|
||||||||
|
Daniel,
In the article Disable Writing to USB Disks in XP SP2.. You state to find the key: HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Contro l\StorageDevicePolicies I do not have a StorageDevicePolicies under Control.. Has something changed since your articles were posted? Thanks David Quote:
|
|
#9
|
||||||||||
|
||||||||||
|
__________________
Capitalisation is the difference between helping your Uncle Jack off a horse and helping your uncle jack off a horse. ************************************************** ********************** ** Remember to give credit where credit is due and leave reputation points where appropriate ** ************************************************** ********************** |
|
#10
|
|||||||||
|
|||||||||
|
Greetings. This is my first post even though I have been a reader for several years. I just haven't had to ask anything because everything seems to be answered.
Has anyone attempted to try this as a user policy instead of a computer policy yet? I implemented the computer policy with the custom .adm method and it worked like a charm. Now, I have need for this to be on a per-user assignment instead of micromanaging several OU's. I had a thought as I was posting this and I will report the results of my testing. |
![]() |
| Bookmarks |
| Thread Tools | Search this Thread |
| Display Modes | |
|
|
Similar Threads
|
||||
| Thread | Thread Starter | Forum | Replies | Last Post |
| How to disable any USB storage device | jwmac | Scripting | 12 | 5th January 2008 13:24 |
| RIS and USB drives | ariel-s | Windows 2000 Server, Windows Server 2003 | 3 | 3rd January 2006 18:27 |
| How to disable USB port,soundcard and modem | chiragpatel | Misc | 1 | 1st October 2005 18:48 |
| Need to disable USB thumbdrives but still allow USB keybaord | ashley.smith | Scripting | 4 | 17th May 2005 21:43 |