最近學校中了一個生成“pegefile.pif”的病毒,甚是讨厭,搞了幾台以後,決定找一個解決的辦法,去網上查了一下,有一種手動的方法,不過很麻煩,要手動修改N多系統資料庫鍵值。
于是乎,就想作一個BAT檔案,把全校的機器作個批處理,一并搞定。
修改系統資料庫的方法有很多,下面是我實驗過的方法。
主要是利用REG指令來進行添加、删除和修改等操作。
REG指令:
Windows 控制台系統資料庫工具 - 版本 3.0
版權所有 (C) Microsoft Corp. 1981-2001. 保留所有權利。
REG Operation [參數清單]
Operation [ QUERY | ADD | DELETE | COPY |
SAVE | LOAD | UNLOAD | RESTORE |
COMPARE | EXPORT | IMPORT ]
傳回代碼: (除了 REG COMPARE)
0 - 成功
1 - 失敗
要得到有關某個操作的幫助,請鍵入:
REG Operation /?
例如:
REG QUERY /?
REG ADD /?
REG DELETE /?
REG COPY /?
REG SAVE /?
REG RESTORE /?
REG LOAD /?
REG UNLOAD /?
REG COMPARE /?
REG EXPORT /?
REG IMPORT /?
例:
reg add \hklm\software\myco /v data /t reg_binary /d fe340ead
reg add "hkcu\software\microsoft\winmine" /v Name3 /t reg_sz /d Anonymous
reg add "hkcu\software\microsoft\winmine" /v Time3 /t reg_dword /d 5
reg delete "hkcu\software\microsoft\winmine" /v Name1
reg delete "hkcu\software\microsoft\winmine" /v Time1
OK,就象上邊一樣。
REG使用比較簡單。
在測試過程中,想起了以前在作機器中,每台機器都開着XP的防火牆,遠端對機器進行一些操作很不友善。
終于有辦法搞一下了!
先提取出開防火牆的系統資料庫鍵值!
[HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\SharedAccess\Parameters\FirewallPolicy\StandardProfile]
"EnableFirewall"=dword:00000000
然後 按照REG的用法,在CMD中 輸入:
reg add hklm\SYSTEM\CurrentControlSet\Services\SharedAccess\Parameters\FirewallPolicy\StandardProfile /v EnableFirewall /t reg_dword /d 00000000 /f
在本機測試成功将本地XP防火牆打開!(/f 是強制執行,不會出現提示對話框)
對192.168.0.51這台遠端主機進行測試:
reg add \\192.168.0.51\hklm\SYSTEM\CurrentControlSet\Services\SharedAccess\Parameters\FirewallPolicy\StandardProfile /v EnableFirewall /t reg_dword /d 00000000 /f
OK,成功打開遠端主機的XP防火牆!
寫入BAT檔案 ,執行,出錯。
提示“不是内部指令也不外部指令”等内容!
在technet群裡問了一下,有個兄弟說加個start就行了。
一試果然。
最後在BAT檔案中的内容如下:
start reg add \\192.168.0.51\hklm\SYSTEM\CurrentControlSet\Services\SharedAccess\Parameters\FirewallPolicy\StandardProfile /v EnableFirewall /t reg_dword /d 00000000 /f
可以依次加多條指令,把需要的主機的防火牆全部打開,再利用PSEXEC.EXE進行下一步操作。
回頭把整修操作再整理寫出來!
本文轉自 bannerpei 51CTO部落格,原文連結:http://blog.51cto.com/bannerpei/248360,如需轉載請自行聯系原作者