Windows ACL简析

简介:

Windows ACL Model 基本概述

基本概念
  • SID:Secure Identifier(安全标识符),每个用户和账户组都有一个唯一的SID(通常情况下唯一)。它是标识用户、用户组和计算机账户唯一的号码,
  • Access Token:与特定的windows账户关联,账户环境下启动的所有进程都会获得该令牌的副本,进程中的线程默认获得这个令牌。由关联账户的SID、当前登录账户所属组的SID列表、受限制的SID列表、当前登录账户与所属组的Privilege列表组成。

    • Account SID

      • Group SID
      • logon SID
      • privileges administrator 授权给user的特权,
  • Security Descriptor:安全描述符,与被访问对象关联。由对象所有者的SID、group SID、DACL、SACL组成。DACL描述允许或拒绝特定用户或组的某些访问权限,它包含零个或多个访问控制实体(ACE,Access Control Entry)
  • owner SID
  • primary group SID
  • DACL
    discretionary access control list.
  • SACL

    • system ACL (SACL). SACL 主要包括为访问尝试生成系统监控报告的权限。每个SACE都包括一个trustee,一个权限集合, 以及一个flag结合来表示访问成功和访问失事件,哪些需要被记录,或者全部记录。所有的监听消息最终都写入event-log

The system writes audit messages to the security event log. For information about accessing the records in a security event log, see Event Logging.

  • ACE 访问控制实体,用于指定特定用户/组的访问权限

    • user or group SID
    • Access Mask object 访问权限
    • ACE Flag 是否让子目录继承
    • ACE Type Allow or Deny
      1

windows 访问控制的基本流程

2

  • 当用户登录系统成功后, 系统会为用户生成一个accessToken。该用户调用的每一个进程都会有一个AccessToken copy。当进程要访问某个securable object 时,系统会比对accessToken拥有的权限(previlages 是否能访问securable object)
  • 如果安全描述符中不存在DACL,则系统会允许线程进行访问。如果存在DACL,系统会顺序遍历DACL中的每个ACE,检查ACE中的SID在线程的AccessTkoen中是否存在。以访问者中的User SID或Group SID作为关键字查询被访问对象中的DACL。顺序:先查询类型为DENY的ACE,若命中且权限符合则访问拒绝;未命中再在ALLOWED类型的ACE中查询,若命中且类型符合则可以访问;以上两步后还没命中那么访问拒绝
    3

ACE

order of ACE

The following steps describe the preferred order:

  • 显式ACE在继承ACE之前
  • 对于显式ACE denyACE 在 allowACE 之前
  • 继承的ACE按照继承树的倒序排列。先父节点ACE,再祖先节点ACE。
  • 对于同一层的ACE,denyACE在AllowACE 之前
Automatic Propagation of Inheritable ACEs

The system uses the following rules when propagating inherited ACEs to child objects:

  • 如果子对象没有DACL,子对象直接继承ACE
  • 如果子对象有空DACL, 子对象直接继承ACE
  • 如果从父对象删除可继承ACE, 删除自对象继承的该ACE副本
  • 如果自动删除造成自对象的DACL为空, 保留空DACL

空DACL和没有DACL的区别在于,空DACL没有任何权限, 没有DACL表示允许任何操作。

ACE inheritance flag(待分析)
父 ACE flag 对子ACL 的影响
OBJECT_INHERIT_ACE 只有子文件继承
CONTAINER_INHERIT_ACE 只有子目录继承
CONTAINER_INHERIT_ACE and OBJECT_INHERIT_ACE 子目录和自文件都继承
No inheritance flags 不继承 .
Access mask
  • access mask 和权限的对应关系
    4
  • Generic Access Rights, 所有securable object 通用权限
Constant Generic meaning
GENERIC_ALL All possible access rights
GENERIC_EXECUTE Execute access
GENERIC_READ Read access
GENERIC_WRITE Write access
  • Standard Access right,大多数securable object 通用权限
Constant Meaning
DELETE The right to delete the object.
READ_CONTROL The right to read the information in the object's security descriptor, not including the information in the system access control list (SACL).
SYNCHRONIZE The right to use the object for synchronization. This enables a thread to wait until the object is in the signaled state. Some object types do not support this access right.
WRITE_DAC The right to modify the discretionary access control list (DACL) in the object's security descriptor.
WRITE_OWNER The right to change the owner in the object's security descriptor.
目录
相关文章
|
SQL 安全 关系型数据库
|
11天前
|
安全 关系型数据库 MySQL
Windows Server 安装 MySQL 8.0 详细指南
安装 MySQL 需要谨慎,特别注意安全配置和权限管理。根据实际业务需求调整配置,确保数据库的性能和安全。
63 9
|
2月前
|
网络安全 Windows
Windows server 2012R2系统安装远程桌面服务后无法多用户同时登录是什么原因?
【11月更文挑战第15天】本文介绍了在Windows Server 2012 R2中遇到的多用户无法同时登录远程桌面的问题及其解决方法,包括许可模式限制、组策略配置问题、远程桌面服务配置错误以及网络和防火墙问题四个方面的原因分析及对应的解决方案。
|
2月前
|
监控 安全 网络安全
使用EventLog Analyzer日志分析工具监测 Windows Server 安全威胁
Windows服务器面临多重威胁,包括勒索软件、DoS攻击、内部威胁、恶意软件感染、网络钓鱼、暴力破解、漏洞利用、Web应用攻击及配置错误等。这些威胁严重威胁服务器安全与业务连续性。EventLog Analyzer通过日志管理和威胁分析,有效检测并应对上述威胁,提升服务器安全性,确保服务稳定运行。
|
2月前
|
监控 安全 网络安全
Windows Server管理:配置与管理技巧
Windows Server管理:配置与管理技巧
108 3
|
2月前
|
存储 安全 网络安全
Windows Server 本地安全策略
由于广泛使用及历史上存在的漏洞,Windows服务器成为黑客和恶意行为者的主要攻击目标。这些系统通常存储敏感数据并支持关键服务,因此组织需优先缓解风险,保障业务的完整性和连续性。常见的威胁包括勒索软件、拒绝服务攻击、内部威胁、恶意软件感染等。本地安全策略是Windows操作系统中用于管理计算机本地安全性设置的工具,主要包括用户账户策略、安全选项、安全设置等。实施强大的安全措施,如定期补丁更新、网络分段、入侵检测系统、数据加密等,对于加固Windows服务器至关重要。
|
3月前
|
边缘计算 安全 网络安全
|
3月前
|
数据安全/隐私保护 Windows
安装 Windows Server 2019
安装 Windows Server 2019

相关课程

更多