Security
帶有虛擬帳戶的任務計劃程序,可能嗎?
目前我正在
LOCAL SERVICE
用作各種正常任務的使用者帳戶,並且想知道是否可以使用虛擬帳戶來代替。任務計劃程序似乎拒絕
NT SERVICE\
樣式帳戶名稱。
您不能將其作為虛擬使用者帳戶執行。但是您可以使用虛擬組帳戶執行它。(但由於該*“組”*與任務具有 1:1 的關係,因此它實際上是一個使用者)。
假設您以本地服務使用者身份執行計劃任務。該組的令牌中有一系列 SID:
本地服務:
- 每個人 (
S-1-1-0
)- 本地 (
S-1-2-0
)- NT AUTHORITY\Authenticated Users (
S-1-5-11
)- 內置\使用者 (
S-1-5-32-535
)任務計劃程序使用根據任務名稱計算的附加 SID 執行任務。
- SID 將是權威的孩子
S-1-5-87
- 並且會有一個表格的名字
NT TASK\[Task Name]
相對 id
87
來自於定義的常量winnt.h
:SECURITY_TASK_ID_BASE_RID (0x00000057L)
您可以通過執行以下命令手動將任務名稱*“散列”*到 SID 中:
>schtasks /showsid /TN "The quick brown fox jumped over the lazy dog" SUCCESS: The SID "S-1-5-87-2312335432-65297056-3549082870-2589977271-250352331" for the user name "The quick brown fox jumped over the lazy dog" has been computed successfully.
任務不必存在;它向您顯示執行具有該名稱的任務時將使用的 SID。
- 任務名稱:
The quick brown fox jumped over the lazy dog
- 關聯的 SID:
S-1-5-87-2312335432-65297056-3549082870-2589977271-250352331
- 組名:
NT TASK\The quick brown fox jumped over the lazy dog
這意味著當您的計劃任務執行時,它的安全令牌中將有一個新的 SID:
本地服務:
- 每個人 (
S-1-1-0
)- 本地 (
S-1-2-0
)- NT AUTHORITY\Authenticated Users (
S-1-5-11
)- 內置\使用者 (
S-1-5-32-535
)- NT TASK\迅捷棕狐跳過懶狗(
S-1-5-87-2312335432-65297056-3549082870-2589977271-250352331
)使用令牌中這個新組 SID 的標記,您可以編輯文件和文件夾的權限,以便只有計劃任務可以訪問它們:
>icacls icacls yellow.png /grant "*S-1-5-87-2312335432-65297056-3549082870-2589977271-250352331:(M)"
獎金喋喋不休
感謝您將任務執行為
Local Service
- 這是正確的選擇。這是一個特殊的行權限帳戶,沒有人可以登錄,並且在網路上沒有任何權限(除了*“匿名”使用者獲得的相同權限)。許多“安全專家”*認為任務需要使用他們在 Active Directory 中創建的具有復雜隨機密碼的特殊帳戶執行。這讓我很抓狂,以至於這些人不了解安全的基礎知識。獎金閱讀