文件和文件夹权限
标准权限
- Read (读取):允许查看文件内容或查看文件夹中的文件和子文件夹。
- Write (写入):允许修改文件内容或创建新文件和文件夹。
- Read & Execute (读取和执行):允许读取文件内容和运行可执行文件。
- Modify (修改):允许读取、写入、删除和执行文件。
- Full Control (完全控制):允许执行所有可能的操作,包括更改权限和所有者。
特定对象权限
- Traverse Folder / Execute File (遍历文件夹/执行文件):允许通过文件夹导航到子文件夹或运行可执行文件。
- List Folder / Read Data (列出文件夹/读取数据):允许列出文件夹中的文件或读取文件内容。
- Read Attributes (读取属性):允许读取文件或文件夹的属性。
- Read Extended Attributes (读取扩展属性):允许读取文件或文件夹的扩展属性。
- Create Files / Write Data (创建文件/写入数据):允许在文件夹中创建新文件或修改文件内容。
- Create Folders / Append Data (创建文件夹/追加数据):允许在文件夹中创建新文件夹或在文件中追加数据。
- Write Attributes (写入属性):允许更改文件或文件夹的属性。
- Write Extended Attributes (写入扩展属性):允许更改文件或文件夹的扩展属性。
- Delete Subfolders and Files (删除子文件夹和文件):允许删除文件夹中的子文件夹和文件。
- Delete (删除):允许删除文件或文件夹。
- Read Permissions (读取权限):允许查看文件或文件夹的权限。
- Change Permissions (更改权限):允许更改文件或文件夹的权限。
- Take Ownership (取得所有权):允许取得文件或文件夹的所有权。
Active Directory 对象权限
标准权限
- Create All Child Objects (创建所有子对象):允许在容器中创建所有类型的子对象。
- Delete All Child Objects (删除所有子对象):允许删除容器中的所有子对象。
- List Contents (列出内容):允许查看容器中的对象列表。
- Read All Properties (读取所有属性):允许读取对象的所有属性。
- Write All Properties (写入所有属性):允许修改对象的所有属性。
- Delete (删除):允许删除对象。
- Read Permissions (读取权限):允许查看对象的权限。
- Modify Permissions (修改权限):允许更改对象的权限。
- Modify Owner (修改所有者):允许更改对象的所有者。
- Synchronize (同步):允许对象用于同步操作。
特殊权限
- List Object (列出对象):允许列出容器中的对象。
- Read Property (读取属性):允许读取对象的特定属性。
- Write Property (写入属性):允许修改对象的特定属性。
- Create Object (创建对象):允许创建特定类型的子对象。
- Delete Object (删除对象):允许删除特定类型的子对象。
- Control Access (控制访问):允许执行对象的控制访问操作。
注册表权限
- Query Value (查询值):允许查询注册表项的值。
- Set Value (设置值):允许设置注册表项的值。
- Create Subkey (创建子键):允许创建子键。
- Enumerate Subkeys (枚举子键):允许枚举子键。
- Notify (通知):允许接收注册表项更改的通知。
- Create Link (创建链接):允许创建符号链接。
- Delete (删除):允许删除注册表项。
- Read Control (读取控制):允许读取注册表项的安全描述符。
- Write DAC (写入 DAC):允许更改注册表项的 DACL(可访问控制列表)。
- Write Owner (写入所有者):允许更改注册表项的所有者。
- Full Control (完全控制):允许执行所有可能的操作。
服务权限
- Query Config (查询配置):允许查询服务配置。
- Change Config (更改配置):允许更改服务配置。
- Query Status (查询状态):允许查询服务状态。
- Enumerate Dependents (枚举依赖项):允许枚举服务依赖项。
- Start (启动):允许启动服务。
- Stop (停止):允许停止服务。
- Pause and Continue (暂停和继续):允许暂停和继续服务。
- Interrogate (询问):允许发送询问控制代码到服务。
- User-defined Control (用户定义控制):允许发送用户定义控制代码到服务。
这些权限构成了 Windows 操作系统安全模型的基础。
GenericAll /
GenericWrite /
Write on Computer/
User Holding /
计算机对象或用户帐户上的这些特权允许:
Kerberos基于资源的约束委托:允许接管计算机对象。
影子凭据:使用此技术通过利用特权创建影子凭据来模拟计算机或用户帐户
WriteOwnerWriteOwner
权限允许用户更改对象的所有者。以下是利用 WriteOwner
权限进行提权的方法:
1. 更改对象所有者
用户可以将对象的所有权更改为自己,从而获得对该对象的完全控制权
管理对象权限:虽然 WriteOwner
主要用于管理对象的所有者,但它通常也涵盖了管理对象的其他权限,因为对象所有者通常有权修改对象的访问控制列表 (ACL)。
Add-DomainObjectAcl
是 PowerShell 的一个命令,用于在 Active Directory 中添加访问控制列表 (ACL) 条目,通常是用于更改某个对象的权限
命令中没有明确指定要添加的权限类型,因此我们假设添加的权限为默认的 GenericAll
,这是最常见的情况。如果没有显式指定权限类型,PowerView 通常会添加一个 GenericAll
权限,它授予主体对目标对象的所有权限。
导入PowerView 模块 . .\PowerView.ps1
Add-DomainObjectAcl -Credential $cred -TargetIdentity “Core Staff” -PrincipalIdentity “streamio\JDgodd”
Add-DomainGroupMember -Credential $cred -Identity “Core Staff” -Members “StreamIO\JDgodd”
Add-DomainGroupMember:
- 这个命令用于将一个或多个成员(用户或组)添加到 Active Directory 组中
WriteProperty
修改用户权限属性
某些用户属性的修改可以间接导致权限提升。例如,修改用户账户的 adminCount
属性或 servicePrincipalName
属性可以影响用户的权限