Windows XP Windows 7 Windows 2003 Windows Vista Windows 綜合教學 Linux 系統教學
Windows 10 Windows 8 Windows 2008 Windows NT Windows Server 電腦軟體教學

防禦駭客必學 CMD 指令大全:Netsh、IPsec、腳本自動化實戰

編輯:XP 系統應用技巧

Windows 內建大量網路指令,分為檢測(ping/tracert)、連線(telnet/ftp)、配置(netsh/route/ipsec)三類。本文聚焦 Netsh 與 IPsec 兩大配置利器,並提供 WMI 腳本自動化範例,打造純命令列的網路偵測與防護工具箱。

WMI 腳本速查:系統資訊自動化收集

原理:cscript //nologo script.vbs 執行內嵌 VBScript,無視窗干擾,自動清理暫存檔。

功能指令區塊(複製存為 .bat 即用)
顯示系統版本
@echo for each ps in getobject _ >ps.vbs
@echo ("winmgmts://./root/cimv2:win32_operatingsystem").instances_ >>ps.vbs
@echo wscript.echo ps.caption^&" "^&ps.version:next >>ps.vbs
cscript //nologo ps.vbs & del ps.vbs
列舉進程
@echo for each ps in getobject _ >ps.vbs
@echo ("winmgmts://./root/cimv2:win32_process").instances_ >>ps.vbs
@echo wscript.echo ps.handle^&vbtab^&ps.name^&vbtab^&ps.executablepath:next >>ps.vbs
cscript //nologo ps.vbs & del ps.vbs
終止進程 (PID)
@echo for each ps in getobject _ >pk.vbs
@echo ("winmgmts://./root/cimv2:win32_process").instances_ >>pk.vbs
@echo if ps.handle=wscript.arguments(0) then wscript.echo ps.terminate:end if:next >>pk.vbs
cscript pk.vbs 123 & del pk.vbs
重啟系統
@echo for each os in getobject _ >rb.vbs
@echo ("winmgmts:{(shutdown)}!//./root/cimv2:win32_operatingsystem").instances_ >>rb.vbs
@echo os.win32shutdown(2):next >>rb.vbs & cscript //nologo rb.vbs & del rb.vbs
列舉自啟動服務
@echo for each sc in getobject("winmgmts://./root/cimv2:win32_service").instances_ >sc.vbs
@echo if sc.startmode="Auto" then wscript.echo sc.name^&" - "^&sc.pathname >>sc.vbs
@echo next >>sc.vbs & cscript //nologo sc.vbs & del sc.vbs
列舉執行中服務
@echo for each sc in getobject("winmgmts://./root/cimv2:win32_service").instances_ >sc.vbs
@echo if sc.state="Running" then wscript.echo sc.name^&" - "^&sc.pathname >>sc.vbs
@echo next >>sc.vbs & cscript //nologo sc.vbs & del sc.vbs
最後開機時間
@echo for each os in getobject _ >bt.vbs
@echo ("winmgmts://./root/cimv2:win32_operatingsystem").instances_ >>bt.vbs
@echo wscript.echo os.lastbootuptime:next >>bt.vbs & cscript //nologo bt.vbs & del bt.vbs

Netsh:遠端 Shell 的網路配置瑞士刀

遠端 Shell 無法互動式輸入,Netsh 支援腳本模式 netsh -f script.txt 完美解決。

常用查詢腳本

查詢項目腳本內容 (存為 s.txt → netsh -f s.txt)
TCP/IP 完整配置
interface ip
show config
ARP 表(比 arp -a 更詳細)
interface ip
show ipnet
TCP/UDP 連線(等同 netstat -an)
interface ip
show tcpconn
show udpconn
網卡詳細資訊(無替代指令)
interface ip
show interface

IPsec:核心層防火牆,精準封鎖/允許流量

XP 用 ipseccmd(安裝碟 SUPPORT\TOOLS\SUPPORT.CAB),Win2000 用 ipsecpol(需 ipsecutil.dll, text2pol.dll)。語法幾乎相同,以 ipsecpol 為例:

實戰規則範例

# 1. 防禦 RPC/DCOM 攻擊:封鎖 135,137,138,139,445 (TCP/UDP)
ipsecpol -p myfirewall -r rpc-dcom -f *+0:135:tcp *+0:135:udp *+0:137:udp *+0:138:udp *+0:139:tcp *+0:445:tcp *+0:445:udp -n BLOCK -w reg -x

# 2. 防止被 Ping(同時也無法 Ping 別人)
ipsecpol -p myfirewall -r antiping -f *+0::icmp -n BLOCK -w reg -x

# 3. 後門連接埠 (6129) 僅允許特定 IP 存取
ipsecpol -p myfw -r dwmrc_block_all -f *+0:6129:tcp -n BLOCK -w reg
ipsecpol -p myfw -r dwmrc_pass_me -f 123.45.67.89+0:6129:tcp -n PASS -w reg -x
# 動態 IP 用網段:123.45.67.*+0:6129:tcp

參數解析: -p 策略名、-r 規則名、-f 篩選器(*=任何來源、0=本機、+=雙向)、-n BLOCK/PASS 動作、-w reg 寫入註冊表持久化、-x 立即啟用。

安全測試與回滾機制

# 建立 5 分鐘後自動停用策略的計劃任務(留後路)
net start schedule
at 12:39 ipsecpol -p myfw -y -w reg
# 5 分鐘內測試,失敗則自動回滾;成功則手動啟用
ipsecpol -p myfw -x -w reg

查看現有策略

  • XP: ipseccmd show filters
  • Win2000: netdiag /debug /test:ipsec(需啟動 RemoteRegistry 服務)

命令列軟體安裝:WinPcap 範例

原理:複製檔案 + 註冊表寫入服務。用 .inf + rundll32 setupapi,InstallHinfSection 實現驅動安裝,打包成自解壓執行檔。系統補丁則用 KBxxxxxx.exe -n -z -q 靜默安裝,批次腳本遍歷安裝。

掌握 Netsh、IPsec、WMI 腳本,你擁有的不只是指令,而是「無介面、可自動化、可遠端部署」的網路防護核武庫。

Copyright © Windows教程網 All Rights Reserved