NETWORK SERVICE賬戶概述
NETWORK SERVICE屬於Windows諸多安全主體中的一個,用於作為服務用戶登錄系統,可以訪問網路。用戶無法通過登錄界面正常登錄,也無法以此許可權正常創建互動式服務來讓用戶直接操作。以這個賬戶運行的服務會根據實際環境把訪問憑據提交給遠程的計算機。此賬戶默認沒有密碼。一般情況下,需要訪問網路而不需要管理員許可權的服務都是以這個許可權運行的 。它擁有本機部分許可權並以計算機的名義訪問網路資源。以NETWORK SERVICE許可權運行的程式無法訪問核心驅動程式,無法訪問除“系統中斷”、“System”和“系統空閒處理器百分比”之外的所有進程。該賬戶可以訪問Active Directory,如果是在網路上運行服務,則日誌會存在伺服器,否則存在本地。這個賬戶也可以用於啟動一些 SQL Server的服務。
NETWORK SERVICE賬戶默認情況下的許可權
檔案及資料夾許可權
完全控制(C:\Windows\ServiceProfiles\NetworkService資料夾及其所有子檔案與子資料夾)
拒絕訪問(所有“System Volume Information”資料夾及其子檔案和子資料夾和所有其他用戶配置資料夾)
讀取和執行(其他所有檔案或資料夾)
用戶特權
特權名 | 描述 | 特權狀態 |
SeAssignPrimaryTokenPrivilege | 替換一個進程級令牌 | 已禁用 |
SeIncreaseQuotaPrivilege | 為進程調整記憶體配額 | 已禁用 |
SeShutdownPrivilege | 關閉系統 | 已禁用 |
SeAuditPrivilege | 生成安全審核 | 已禁用 |
SeChangeNotifyPrivilege | 繞過遍歷檢查 | 已啟用 |
SeUndockPrivilege | 從擴展塢上取下計算機 | 已禁用 |
SeImpersonatePrivilege | 身份驗證後模擬客戶端 | 已啟用 |
SeCreateGlobalPrivilege | 創建全局對象 | 已啟用 |
SeIncreaseWorkingSetPrivilege | 增加進程工作集 | 已禁用 |
SeTimeZonePrivilege | 更改時區 | 已禁用 |
註:特權分配可以在本地安全策略中更改
註冊表許可權
完全控制(HKEY_USERS\S-1-5-20項及其子項與值)
讀取(其他所有位置,除HKEY_LOCAL_MACHINE\SECURITY和HKEY_LOCAL_MACHINE\SAM\SAM)
進程許可權
拒絕訪問(所有進程,除“系統中斷”、“System”和“系統空閒處理器百分比”)
服務許可權
拒絕訪問(所有服務)
其他許可權
與普通用戶相同
NETWORK SERVICE的套用與實例
Network Service 帳戶是特別設計的,專用於為應用程式提供訪問網路的足夠許可權,而且在IIS6 中,無需提升許可權即可運行 Web 應用程式。這對於 IIS 安全性來說,是一個特大的訊息,因為不存在緩衝溢出,懷有惡意的應用程式無法破譯進程標識,或是對應用程式的攻擊不能進入 System 用戶環境。更為重要的一點是,再也不能形成針對System帳戶的“後門”,例如,再也無法通過 InProcessIsapiApps 元資料庫項利用載入到 Inetinfo 的應用程式。
Network Service 帳戶在創建時不僅僅考慮了在 IIS 6 中的套用。它還具有進程標識 W3WP.exe 的絕大部分(並不是全部)許可權。如同 ASPNET 用戶為了運行 ASP.net 應用程式,需要具有 IIS 5 伺服器上某些位置的訪問許可權,進程標識 W3WP.exe 也需要具有類似位置的訪問許可權,而且還需要一些默認情況下沒有指派給內置組的許可權。
使用NETWORK SERVICE賬戶時的注意事項
如果服務不需要管理員許可權,但要訪問網路或域,就以此許可權運行
需要網路的服務可以以此許可權進行調試,防止破壞檔案
不要把這個賬戶放在管理員組下,這樣會嚴重破壞安全系統
1.如果服務不需要管理員許可權,但要訪問網路或域,就以此許可權運行
2.需要網路的服務可以以此許可權進行調試,防止破壞檔案
3.不要把這個賬戶放在管理員組下,這樣會嚴重破壞安全系統