Network Service 是 Windows 中的内置帐户,主要运行一些服务,权限与Users相同。它的完整名字是:NT AUTHORITY\NETWORK SERVICE。
NETWORK SERVICE账户概述
NETWORK SERVICE属于Windows诸多安全主体中的一个,用于作为服务用户登录系统,可以访问网络。用户无法通过登录界面正常登录,也无法以此权限正常创建交互式服务来让用户直接操作。以这个账户运行的服务会根据实际环境把访问凭据提交给远程的计算机。此账户默认没有密码。一般情况下,需要访问网络而不需要管理员权限的服务都是以这个权限运行的 [1] 。它拥有本机部分权限并以计算机的名义访问网络资源。
这个账户主要负责一些网络相关的服务,例如DNS客户端服务、Internet 协议安全策略向导服务等。
以NETWORK SERVICE权限运行的程序无法访问内核驱动程序,无法访问除“系统中断”、“System”和“系统空闲处理器百分比”之外的所有进程。该账户可以访问Active Directory,如果是在网络上运行服务,则日志会存在服务器,否则存在本地。这个账户也可以用于启动一些 SQL Server的服务。 [3]
NETWORK SERVICE账户默认情况下的权限
文件及文件夹权限
完全控制(C:\Windows\ServiceProfiles\NetworkService文件夹及其所有子文件与子文件夹)
拒绝访问(所有“System Volume Information”文件夹及其子文件和子文件夹和所有其他用户配置文件夹)
读取和执行(其他所有文件或文件夹) [1]
用户特权
Network Service默认拥有特权<br>
特权名
|
描述
|
特权状态
|
SeAssignPrimaryTokenPrivilege
|
替换一个进程级令牌
|
已禁用
|
SeIncreaseQuotaPrivilege
|
为进程调整内存配额
|
已禁用
|
SeShutdownPrivilege
|
关闭系统
|
已禁用
|
SeAuditPrivilege
|
生成安全审核
|
已禁用
|
SeChangeNotifyPrivilege
|
绕过遍历检查
|
已启用
|
SeUndockPrivilege
|
从扩展坞上取下计算机
|
已禁用
|
SeImpersonatePrivilege
|
身份验证后模拟客户端
|
已启用
|
SeCreateGlobalPrivilege
|
创建全局对象
|
已启用
|
SeIncreaseWorkingSetPrivilege
|
增加进程工作集
|
已禁用
|
SeTimeZonePrivilege
|
更改时区
|
已禁用
|
注:特权分配可以在本地安全策略中更改
注册表权限
完全控制(HKEY_USERS\S-1-5-20项及其子项与值)
没有指定(其他所有位置)
进程权限
拒绝访问(所有进程,除“系统中断”、“System”和“系统空闲处理器百分比”)
服务权限
拒绝访问(所有服务)
其他权限
与普通用户相同 [1]
NETWORK SERVICE的应用与实例
Network Service 帐户是特别设计的,专用于为应用程序提供访问网络的足够权限,而且在IIS6 中,无需提升权限即可运行 Web 应用程序。这对于 IIS 安全性来说,是一个特大的消息,因为不存在缓冲溢出,怀有恶意的应用程序无法破译进程标识,或是对应用程序的攻击不能进入 System 用户环境。更为重要的一点是,再也不能形成针对System帐户的“后门”,例如,再也无法通过 InProcessIsapiApps 元数据库项利用加载到 Inetinfo 的应用程序。 [2]
Network Service 帐户在创建时不仅仅考虑了在 IIS 6 中的应用。它还具有进程标识 W3WP.exe 的绝大部分(并不是全部)权限。如同 ASPNET 用户为了运行 ASP.net 应用程序,需要具有 IIS 5 服务器上某些位置的访问权限,进程标识 W3WP.exe 也需要具有类似位置的访问权限,而且还需要一些默认情况下没有指派给内置组的权限。