Windows基础知识
1. 用户与组
用户角色层级
Windows 系统中的用户角色按权限高低排序如下:
TrustedInstaller > SYSTEM > Administrator > User(普通用户) > Guest
用户组
Windows 用户通常被归为以下用户组:
- Administrators:管理员组,默认 RID 为 500,即 SID 的最后一段为 500。
- Users:普通用户组,用户默认加入该组。
- Guests:访客组,权限最低,适用于临时用户。
- Remote Desktop Users:远程桌面用户组,允许成员通过远程桌面登录。
2. SID(安全标识符)
什么是 SID?
安全标识符(SID)是标识用户或组的唯一值,具有以下特点:
- 唯一性:每个账户的 SID 是由权威机构(如域控制器)颁发并存储于安全数据库中,无法重复。
- 作用:系统通过 SID 在安全交互中标识用户或组,例如在访问控制中。
SID 的用途
- 标识用户或组的唯一身份
- 安全描述符中标识对象的所有者
- 访问控制项(ACE)中指定受托者权限
- 访问令牌中关联用户的身份和组信息
查询 SID
- 查询当前用户的 SID:
whoami /user
- 查询其他用户的 SID:
wmic useraccount where name="%username%" get sid
常见 SID 示例
S-1-5-18
:LocalSystemS-1-5-19
:LocalServiceS-1-5-20
:NetworkServiceS-1-5-32-544
:AdministratorsS-1-5-32-545
:UsersS-1-5-32-550
:PrintOperators
3. ACL(访问控制列表)
ACL 的组成
访问控制列表由两部分组成:
- DACL(自主访问控制列表)
- 定义允许或拒绝特定账户对某个对象的操作权限。
- SACL(系统访问控制列表)
- 用于审计,当特定账户对对象执行操作时,记录到系统日志中。
DACL 的工作原理
- 无 DACL 对象:默认授予所有人完全访问权限。
- DACL 中无 ACE:系统拒绝任何访问。
- 按顺序检查 ACE:
- 如果找到允许所有请求的 ACE,则授予访问权限。
- 如果找到拒绝请求的 ACE,则拒绝访问权限。
示例操作
DACL 和 SACL 的应用主要体现在以下安全操作中:
- 标识对象所有者及其主要组
- 在 ACE 中允许、拒绝或审核访问
- 在访问令牌(Access Token)中存储用户和组的安全信息
4. 总结
Windows 安全的核心是以用户、组、SID 和 ACL 为基础构建的权限管理体系。
- SID 用于唯一标识用户和组,是访问控制的基础。
- ACL(包括 DACL 和 SACL)用于定义和审计对象的访问权限。