常用的 Windows 安全狀態查詢指令
進行 Windows 主機的安全檢查或稽核佐證蒐集時,以下指令可以快速查詢系統的安全狀態。指令分為四大類:系統與帳戶資訊、網路與防火牆設定、事件日誌與系統稽核、權限與安全設定。
1. 系統與帳戶資訊
檢查 Windows 版本與更新狀態
winver
systeminfo
wmic qfe list full /format:table
列出所有使用者帳戶
net user
檢查使用者群組與權限
net localgroup
net localgroup Administrators
net localgroup "Remote Desktop Users"
檢查特定使用者的詳細資訊
net user <帳戶名稱>
檢查最近登入的使用者
quser
查看遠端登入紀錄
query user
檢查帳戶鎖定原則
net accounts
檢查密碼策略
net accounts /domain
secedit /export /cfg C:\temp\secpol.cfg && type C:\temp\secpol.cfg
檢查 Active Directory 帳戶(PowerShell)
Get-ADUser -Filter * -Property Name,Enabled,LastLogonDate | Select-Object Name,Enabled,LastLogonDate
2. 網路與防火牆設定
檢查目前的連線與監聽埠
netstat -ano
netstat -an | findstr LISTENING
檢查網路組態
ipconfig /all
檢查網路共享資源
net share
檢查防火牆規則
netsh advfirewall firewall show rule name=all
檢查遠端桌面(RDP)是否啟用
reg query "HKLM\SYSTEM\CurrentControlSet\Control\Terminal Server" /v fDenyTSConnections
檢查 Telnet 服務狀態
sc query telnet
檢查 Windows Defender 服務狀態
sc query windefend
檢查 BitLocker 磁碟加密狀態
manage-bde -status
3. 事件日誌與系統稽核
檢查失敗的登入嘗試(Event ID 4625)
wevtutil qe Security "/q:*[System[Provider[@Name='Microsoft-Windows-Security-Auditing'] and (EventID=4625)]]" /c:10 /f:text /rd:true
檢查成功的登入紀錄(Event ID 4624)
wevtutil qe Security "/q:*[System[Provider[@Name='Microsoft-Windows-Security-Auditing'] and (EventID=4624)]]" /c:10 /f:text /rd:true
列出已安裝的應用程式
wmic product get name,version
列出系統開機時執行的程式
wmic startup get caption,command
檢查開機時載入的驅動程式
driverquery
檢查目前執行的程序
tasklist /v
檢查是否有不明的管理員帳戶
net localgroup Administrators
4. 權限與安全設定
檢查系統目錄的存取權限
icacls C:\Windows\System32
icacls "C:\Program Files"
檢查系統時間同步狀態
w32tm /query /status
檢查 LSA 保護(RunAsPPL)
reg query HKLM\SYSTEM\CurrentControlSet\Control\Lsa /v RunAsPPL
檢查 Credential Guard 設定(LsaCfgFlags)
reg query "HKLM\SYSTEM\CurrentControlSet\Control\Lsa" /v LsaCfgFlags
結語
這些指令可以協助進行 Windows 主機的安全狀態檢查,也可作為 ISO 27001 稽核時蒐集技術佐證的參考。若需要更深入或大規模的檢查,建議改用 PowerShell 撰寫腳本進行自動化深度掃描。