禁用USB總集

 在註冊表HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\StorageDevicePolicies

下新建一個WriteProtect並設置其值爲dword 1

完整代碼如下:

Windows Registry Editor Version 5.00

[HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\StorageDevicePolicies]

"WriteProtect"=dword:00000001

我將其從註冊表中導出,見後面的附件,雙擊導入即可。

設置爲0表示不禁用。接到一個任務,禁止集團內所有電腦的USB接口進行文件拷貝,但不能妨礙打印機、鼠標鍵盤、掃描儀、加密狗等等一切需要USB接口工作的外部設備。

糾結了,這不擺明了讓我蛋疼嗎?

不過,疼歸疼,辦法總是要想滴,世界上沒有辦不到的事,只是你願不願意想辦法。

不羅嗦,開工,首先了解任務的詳細內容:

任務目的:

1、要管制USB存儲設備,一般用戶不能寫不能讀;部分用戶能讀不能寫入USB存儲設備;還有一部分大人們(公司高管)平時不讀不寫,在需要用的時候要能讀能寫!

2、無論使用什麼方式進行管制,不能影響到現在USB打印機、掃描儀、加密狗、鼠標鍵盤等等外部設備的使用。 真會折磨人。

任務範圍:集團內1900臺電腦

任務時間:3周

接下來,就得找實施方案了!

1、方案一:BIOS裏全部關閉USB端口

2、方案二:Client端安裝USB管理軟件,用軟件進行管制,安裝一臺服務器,監控所有電腦的USB動態

3、方案三:從操作系統註冊表下手,批處理執行管理

先說說這三個方案:恕本人愚昧,或許還有很多又好又快捷的方法,但偶當時確實只想到這些,

方案一:最操蛋的方法,端口全關了,什麼USB設備都用不了了,就別提這機那機了,PASS掉,

方案二:所有電腦安裝Client,工作量大,時間根本不夠,再說了,我很介意在用戶端安裝軟件,多一個進程多佔用一部分內存,到時候電腦速度慢了又會有人大呼小叫了。仍然PASS,

第三個,其實這也是俺最喜歡用的手段:批處理!哈哈,就它了。

各位觀衆,看清楚看明白啦,實施過程開始!

1、首先,關閉USB存儲設備的盤符自動分配,打開註冊表,找到HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\USBSTOR,將"Start"的值改爲4(禁止自動啓動),默認爲3是自動分配盤符

2、幹掉USB存儲設備的作用文件:進入WINDOWS系統目錄,找到X:\Windows\inf,這裏說明一下,USB存儲設備的作用文件有兩個,分別是usbstor.inf和usbstor.pnf,因爲後續可能需要重新打開USB功能,所以不要刪除它,建議拷貝到其他位置,當然你要暴力一點,刪除它也沒關係,但記得做好備份。

我用兩條批處理指令實現:

copy %Windir%\inf\usbstor.inf %Windir%\usbstor.inf /y >nul

copy %Windir%\inf\usbstor.pnf %Windir%\usbstor.pnf /y >nul

del %Windir%\inf\usbstor.pnf /q/f >nul

del %Windir%\inf\usbstor.inf /q/f >nul

哦不,準確的說是4行指令!

3、然後,禁止將電腦裏的資料拷貝到USB存儲設備,意思是把USB存儲設備設置只讀的,幹成殘廢。

打開註冊表:定位到HKEY_LOCAL_MACHINE\SYSTEM \CurrentControlSet\Control,在其下新建一個名爲“StorageDevicePolicies”的項,選中它,在右邊的窗格中新建一個名爲“WriteProtect”的DWORD值,並將其數值數據設置爲1

嘿嘿,有了這一條,你就是能用USB存儲設備,也只能單方面讀取數據了,也算是半個殘廢了。

到此,基本上第一個過程基本完成,實現的功能包括:禁止使用USB存儲設備,不影響其他USB外設,就算要用,也把USB存儲設備幹成殘廢(只讀)。

接下來說第二個部分:如何開啓?(部分用戶需要使用USB存儲設備)實際上,逆向操作以上步驟就可以完成開啓,但爲了表達的更完整一些,我還是把過程寫下來

1、找到HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\USBSTOR,將"Start"的值改爲3

2、恢復USB存儲設備作用文件,還是4行指令:

copy %Windir%\usbstor.inf %Windir%\inf\usbstor.inf /y >nul

copy %Windir%\usbstor.pnf %Windir%\inf\usbstor.pnf /y >nul

del %Windir%\usbstor.pnf /q/f >nul

del %Windir%\usbstor.inf /q/f >nul

完成後,用戶可使用USB存儲設備,但不能往裏面寫入任何內容!你信?不信就試試嘛,俗話說的好:實踐出真知!

不好意思,扯遠了!

這樣,關閉也寫了,開啓也寫了,接下來的事情,你知道的。

批處理代碼,哈哈!

關閉過程:

@echo off

reg add "HKEY_LOCAL_ MACHINESYSTEMCurrentControlSet ControlStorageDevicePolicies“ /v WriteProtect /t reg_dword /d 1 /f

reg add "HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\USBSTOR" /v Start /t reg_dword /d 4 /f

copy %Windir%\inf\usbstor.inf %Windir%\usbstor.inf /y >nul

copy %Windir%\inf\usbstor.pnf %Windir%\usbstor.pnf /y >nul

del %Windir%\inf\usbstor.pnf /q/f >nul

del %Windir%\inf\usbstor.inf /q/f >nul

@echo on

開啓過程:

@echo off reg add "HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\USBSTOR" /v Start /t reg_dword /d 3 /f

copy %Windir%\usbstor.inf %Windir%\inf\usbstor.inf /y >nul

copy %Windir%\usbstor.pnf %Windir%\inf\usbstor.pnf /y >nul

del %Windir%\usbstor.pnf /q/f >nul

del %Windir%\usbstor.inf /q/f >nul

@echo on

將以上代碼保存爲兩個BAT文檔,然後放進x:\Windows\system32\目錄下,比如DisableUSB.bat和EnableUSB.bat

然後直接在運行裏面輸入指令:DisableUSB (關閉)EnableUSB(開啓)

打完收工!


==============================================================================

有朋友問了,你方案是有了,但如何在網內實施?難道需要在每一臺電腦上運行這兩個指令嗎,恐怕也不太現實吧?!

具體實施的過程可以使用以下批處理來完成!

將以下代碼保存爲Scan.Bat,將DisableUSB.bat放到與批處理同一文件夾執行即可。

代碼解釋:掃描局域網中的計算機,掃描範圍包括:192.168.1.1~192.168.8.254,掃描數量共計2032個,掃描到存活的主機後將DisableUSB.bat拷貝到對方機器的C$系統共享目錄(這個得保證是開啓狀態),然後執行。

代碼:


@echo off

echo 操作成功的電腦IP包括:>E:\Success.txt

for /l %%a in (1,1,8) do (

for /l %%b in (1,1,254) do (

ping -n 1 -w 50 192.168.%%a.%%b && net use \\192.168.%%a.%%b "password" /user:administrator && copy DisableUSB.bat \\192.168.%%a.%%b\C$\ Windows\System32\DisableUSB.bat && Start DisableUSB.bat>>E:\Success.txt

)

)

另:經過查詢微軟的知識庫得知,在Windows XP下禁用USB端口有兩方案:

1.如果計算機上尚未安裝 USB 存儲設備,向用戶或組分配對%SystemRoot%\Inf\Usbstor.pnf 和%SystemRoot%\Inf\Usbstor.inf兩個文件的“拒絕”權限,這樣,用戶將無法在計算機上安裝 USB 存儲設備。

2.如果計算機上已經安裝過 USB 存儲設備,(本次就是,要求使用USB鍵盤和鼠標)請將HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\UsbStor註冊表項中的“Start”值設置爲 4

這樣,當用戶將 USB 存儲設備連接到計算機時,該設備將無法運行

禁止修改註冊表

既然修改註冊表可以禁用USB端口,那麼爲防止用戶自行將註冊表重新改回,可以考慮通過組策略來限制用戶使用註冊表編輯器。點擊“開始→運行”,輸入gpedit.msc 並確定,即可運行程序。在組策略控制檯中,選擇“本地計算機”策略→用戶配置→系統,啓用“禁用註冊表編輯工具”項,該策略是禁止用戶使用 Windows 註冊表編輯器 Regedt32.exe 及 Regedit.exe,管理員用戶也不例外。

啓用該策略後,運行regedit命令時,將出現“註冊表被禁用”的提示

但是禁用註冊表並不能高枕無憂,因爲用註冊表導入的方法仍然可以直接修改註冊表。

新建一個名爲usb.reg的文本文件,輸入以下內容:

Windows Registry Editor Version 5.00

[HKEY_LOCAL_MACHINE\SYSTEM\ CurrentControlSet\Services\USBSTOR]

"Start"=dword:00000003

雙擊該文件,將信息添加至註冊表中,即可恢復使用USB設備。

要想連這種方法都禁掉,只有通過用戶權限來實現了。將GUS隸屬於USER組,User用戶是沒有權利修改註冊表的,這樣,以GUS用戶登錄後,即便有以上的usb.reg文件,添加至註冊表時也將被拒絕。但是這個還是解決不了操作工利用USB來給手機及相關設備充電,而且也不知道是否能防得住病毒。只有要求工藝和儀表車間進行加強管理。

 
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章