各位好,小弟最近在學習windows 權限的領域(問題在最後面)
abc 一般用戶 (隸屬於Users組)
admin 管理者帳戶 (隸屬於administrators組)
C:\Windows\system32> icacls c:\
c:\ BUILTIN\Administrators:(F)
BUILTIN\Administrators:(OI)(CI)(IO)(F)
NT AUTHORITY\SYSTEM:(F)
NT AUTHORITY\SYSTEM:(OI)(CI)(IO)(F)
BUILTIN\Users:(OI)(CI)(RX)
NT AUTHORITY\Authenticated Users:(OI)(CI)(IO)(M)
NT AUTHORITY\Authenticated Users:(AD)
Mandatory Label\High Mandatory Level:(OI)(NP)(IO)(NW)
BUILTIN\Users:(OI)(CI)(RX)
NT AUTHORITY\Authenticated Users:(OI)(CI)(IO)(M)
NT AUTHORITY\Authenticated Users:(AD)
(RX)代表 讀跟執行
(AD)創建資料夾
(M)修改存取權
abc帳戶 我打開cmd 進入 C:\
echo 111111 > test.txt
存取被拒
abc帳戶 我打開cmd(右鍵以系統管理員身分執行)
echo 111111 > test.txt
存取也被拒
我從工作管理員看cmd 程式 的使用者一樣是abc
runas /user:admin cmd
他會用admin 使用者來打開新的cmd
echo 111111 > test.txt
寫入成功
從工作管理員看cmd 程式 的使用者是admin
右鍵(以系統管理員身分執行)到底有啥用?似乎沒有真正提權 聽說是UAC 策略
但對我來說,就只是把 目錄
C:\Users\abc\
切換到
C:\Windows\system32\
由於一般使用者沒有環境變數,所以切到 system32 而已(好讓一些工具可以被找到),根本不是系統管理員身分執行
文章有點長希望有人能解答我的問題
樓主應該先去google或chatgpt去把以系統管理員身分執行的意義搞清楚
以系統管理員身分執行不是這樣用的
如果隨便一個user都可以用以系統管理員身分執行去取得資料夾或資料控制權
那根本就不需要去做權限控管了
你在第2步驟的情況有點奇怪,可能沒有正常運作,
在正常的情況下,當你右鍵使用系統管理者權限執行(CMD.exe)
1.系統接收到提權需求
2.嘗試提權執行=>UAC審核
3.UAC檢查提權的使用者的是否有管理員權限
4.有=>UAC產生安全視窗讓使用者確認是否提權,
無=>UAC產生安全視窗讓使用者輸入其他的帳戶來提權
基本上因為早期UAC剛出現的時候,使用者嫌煩會關閉UAC提示
所以一旦經過修改設定,UAC跳出的提示被設定為不出現的話,
微軟做了兩個設定路線可以走,
第1.強制Error錯誤,顯示存取被拒並拒絕執行CMD(因為規定太死後來不常用)
第2.提權失敗,但是還是嘗試執行CMD(無管理者權限)
需要注意的是,一旦你在安全視窗輸入有權限提權的帳戶,
你在CMD的使用者環境變數並不是你現在登入中的環境變數
而是你剛剛額外輸入有權限提權的帳戶,請使用whoami
來檢查這個cmd shell使用者是誰