AlertSec AlertSec 2023-11-16 14:31 发表于北京
内网渗透基础知识内网渗透是指通过获取目标服务器控制权后,通过内网信息搜集、隧道搭建、权限驻扎、横向渗透等等,对其所在的内网进行渗透,并且最终获取内网其他服务器权限的过程。 内网工作环境工作组组是账户用户的集合,通过给组用户分配权限,就不用给每个用户分配权限了,按照用途分类,域组分为通讯组和安全组。 域域与工作组概念类似,但是域的计算机集合更大,适用于计算机数量众多的大型网络环境。域管理员用户是域中最强大的用户。 1、单域 单域是指网络环境中只有一个域,在一个计算机较少,地理位置固定的组织中,建立一个单独的域足以。
2、父域和子域 某些情况下,为了满足管理需求,需要在一个域中划分出多个域,被划分的域为父域,划分出来的域为子域。 从域名看,子域就是整个域名中的一个段,各子域之间用“.”来分割,一个“.”就代表域名的一个层级。
3、域树 域树中的命名空间具有连续性,并且域名层次越深,级别越低。
在域树中,域管理员只能管理本域,不能访问其他和管理其他域。如果两域之间需要相互访问,就需要建立信任关系。 4、域林 域林是指一个或多个没有形成连续名字空间的域树组成的域树集合。
域控制器域控制器(Domain Controller,DC)又称“域控”,是域环境核心的服务器计算器,用于安全身份认证。 域控制器包含一个活动目录数据库,存储着整个域的账户密码计算机等等信息。 活动目录活动目录(Active Directory,AD)是指安装在域控制器上,为整个域控制器提供集中式目录管理服务的组件。活动目录存储了有关域控制器中各种对象的信息,如域、用户、用户组、计算机、组织单位、共享资源、安全策略等。目录数据库存储在域控制器的Ntds.dit文件中。 Ntds.dit文件Ntds.dit文件是域环境的域控制器上保存的一个二进制文件,是主要的活动目录数据库,其中文件路径为域控的“%SystemRoot%\ntds\ntds.dit”。Ntds.dit文件中包括但不限于有关域用户、用户密码的哈希散列值、用户组、组成员身份、和组策略信息等。 目录服务与LDAP活动目录 活动目录是一种目录服务数据库,区别于常见的关系型数据库,目录数据库将所有数据组成一个有层次的树状结构,其中的每个节点是一个对象。 LDAP LDAP(轻量目录访问协议)是用来访问目录服务数据库的一个协议。 目录服务数据库基本概念
1、目录树:在一个目录数据库中,所有的信息就可以看作一个目录树,树中每个节点是一个条目。 2、条目:每个条目就是一条记录,每个条目都有自己的唯一绝对可辨识名称(DN)。如上图,每个方框都是一条记录。 3、DN(Distinguished Name,绝对可辨识名称)指向一个LDAP对象的完整路径。CN代表通用名(Common Name),OU代表组织单位(Organizational Unit),DC代表域组件(Domain Component)。如上图,CN=DC1的DN绝对可辨识名称为:
- CN=DC1,OU=Domain Controllers,DC=test,DC=sec
复制代码
其含义是对象在test.com域的Domain Controllers组织单元中,类似文件系统目录中的绝对路径。其中,CN=DC1代表这个主机的一个对象,OU=DomainControllers代表一个Domain Controllers组织单位。 4、RDN(RelativeDistinguished Name,相对可辨识名称)指向一个LDAP对象的相对路径。比如,CN=DC1条目的RDN就是CN=DC1. 5、属性:用于描述数据库中每个条目的具体信息。 活动目录访问这里使用微软官方提供的AD Explorer工具连接域控制器来访问活动目录,在域中任意一台主机上,以域用户身份连接域控制器,成功后,可以查看域中的各种信息。
活动目录分区活动目录预定义了域分区、配置分区和架构分区三个分区。 域分区 域分区(Domain NC)用于储存与该域有关的对象信息,每个域的域控制器都各自拥有一份属于自己的域分区。
如上图,箭头指的DC=adsec,DC=com就是adsec.com域的域分区。 配置分区 配置分区(Configuration NC)存储整个域林的主要配置信息。 下图中CN=Configuration,DC=adsec,DC=com就是配置分区。
架构分区 架构分区(Schema NC)存储整个域林的架构信息。
活动目录的所有类(类可以看作是一组属性的集合)都存储在架构分区中,在LDAP中,类是存在继承关系的,子类继承父类所有属性,top类是所有类的父类,并且,活动目录中的每个条目都有objectClass属性,该属性指向示例对象所继承的所有类。
域用户和机器用户域用户就是域环境中的用户,在域控制器中被创建。域用户位于域的全局组DomainUsers中,而计算机本地用户账户位于本地User组中。当计算机加入域时,全局组Domain Users会被添加到计算机本地的User组中。因此,域用户可以在域中的任何一台计算机上登录。 查看域中所有的域用户:
机器用户机器用户其实是一种特色的域用户。查询活动目录时随便选中DomainComputer组的一台机器账户,查看objectClass属性,可以发现该对象是computer类的示例,并且computer类是user类的子类。说明域用户有的的属性,机器用户都有。
本地System用户对应的机器用户,一般就是"机器名+$"这种格式。 查看域中所有的机器用户:
- net group "Domain Computers" /domain
复制代码
与用户组的分类和权限组的用途用户账号的集合称为组。 通讯组:给通信组发信息时,组内的用户都能收到。 安全组:对一个组赋予权限,则组内都是那个权限。 安全组的权限根据组的作用范围,可以分为如下: 域本地组 查询域内的所有域本地组:
- Adfind.exe -b dc=adsec,dc=com -bit -f "(&(objectClass=group)(grouptype:AND:=4))" cn -dn
复制代码
常见的系统内置的域本地组及其组权限: Administrators:管理员组,该组的成员可以不受限制地访问域中资源。是域林中强大的服务管理组。 RemoteDesktop Users:远程登录组,处于远程登录组中的用户才有权限使用远程登录服务。 PrintOperators:打印机操作员组,该组成员可以管理网络中的打印机,还可以在本地登录和关闭域控制器。 AccountOperators:账号操作员组,该组的成员可以创建和管理该域中的用户和组并为其设置权限,也可以在本地登录域控制器,但是,不能更改属于 Administrators 或 Domain Admins 组的账户,也不能修改这些组。在默认情况下,该组中没有成员。 ServerOperators:服务器操作员组,该组的成员可以管理域服务器,其权限包括建立/管理/删除任意服务器的共享目录、管理网络打印机、备份任何服务器的文件、格式化服务器硬盘、锁定服务器、变更服务器的系统时间、关闭域控制器等。在默认情况下,该组中没有成员。 BackupOperators,备份操作员组,该组的成员可以在域控制器中执行备份和还原操作,并可以在本地登录和关闭域控制器。在默认情况下,该组中没有成员。 通用组 查询域内所有的通用组:
- Adfind.exe -b dc=adsec,dc=com -bit -f "(&(objectClass=group)(grouptype:AND:=8))" cn -dn
复制代码
常见的系统内置的通用组及其组权限: EnterpriseAdmins:组织系统管理员组,该组是域森林根域中的一个组。该组的成员在域林的每个域中都是 Administrators 组的成员,因此对所有域控制器都有完全访问控制权。 SchemaAdmins:架构管理员组,是域森林根域中的一个组,可以修改活动目录和域森林的模式。 全局组 查询域内所有的全局组:
- Adfind.exe -b dc=adsec,dc=com -bit -f "(&(objectClass=group)(grouptype:AND:=2))" cn -dn
复制代码
常见的系统内置的全局组及其组权限: DomainAdmins,管理员组,该组的成员在所有加入域的服务器、域控制器和活动目录中均默认拥有完整的管理员权限。因为该组会被添加到自己所在域的 Administrators 组中,因此可以继承 Administrators 组的所有权限。同时,该组默认会被添加到每台域成员计算机的本地 Administrators 组中,这样,Domain Admins 组就获得了域中所有计算机的所有权。如果希望某用户成为域系统管理员,建议将该用户添加到 Domain Admins 组中,而不要直接将该用户添加到 Administrators 组中。 Domain Users,域用户组,该组的成员中是所有的域用户。在默认情况下,任何由我们建立的用户账号都属于 Domain Users 组。 DomainComputers,域成员主机组,该组的成员是域内所有的域成员主机,任何由我们建立的计算机账号都属于 Domain Computers 组。 DomainControllers,域控制器组,该组成员包含了域内所有的域控制器。 DomainGuests,域访客用户组,该组内的成员默认为域访客用户,域成员计算机会自动将此组加到本地的 Guests 组中。 GroupPolicy Creator Owners:此组成员可以修改域的组策略。 组织单位对用户设置权限时,可以先拉入一个组,然后对这个组赋予权限,再把用户拉入该组,这个组一般称之为组织单位。 访问控制windows访问控制模型Windows访问控制模型主要由访问令牌(Access Token)和安全描述符(Security Descriptor)两部分组成,分别由访问者和被访问者持有。 通过比较两者,windows可以对访问者是否拥有访问资源对象的能力进行判定。 访问令牌 当用户登陆时,windows会对用户进行身份验证,如果验证通过,就会为用户创建一个访问令牌,包括登录过程返回的SID,由本地安全策略分配给用户和用户所属的安全组的特权列表。
安全描述符 安全描述符(Security Descriptor)是一种与每个安全对象相关联的数据结构,当安全对象被创建时,操作系统会为其创建一个安全描述符,安全描述符主要由SID和ACL(Access Control List,访问控制列表)组成。SID用来标识用户账户和该用户所属的组,ACL分为DACL和SACL两种。 访问控制列表访问控制列表(ACL)是访问控制项(ACE)的列表。 DACL DACL是安全对象的访问控制策略,其中定义了该安全对象的访问控制策略。如下图。
DACL是由一条条ACE条目构成的,每条 ACE定义了哪些用户或组对该对象有哪些权限。 ACE里面有一个SID,SID标识了允许或拒绝访问该安全对象的安全主体。 ACE有如下4个方面: 谁对这个安全对象拥有权限 拥有什么权限 这个权限是允许还是拒绝 这个权限能不能被继承 SACL SACL也是一条一条ACE条目构成,每条ACE定义了哪些安全主体的哪些访问行为进行日志记录。 查看与修改访问控制列表 Icals是一种命令行工具,可以访问和修改控制列表(ACL) 执行以下命令,查看指定文件的ACL
- icacls C:\Users\win10×64en\Desktop\test.txt
复制代码
简单权限序列 (基本权限) : F - 完全访问权限 M- 修改访问权限 RX - 读取和执行访问权限 R - 只读访问权限 W - 仅写访问权限 特定权限的括号中的逗号分隔列表 (高级权限) : D - 删除 RC - 读取控制 (读取权限) WDAC - 写入 DAC (更改权限) WO - 写入所有者 (获取所有权) S - 同步 AS - 访问系统安全性 MA - 允许的最大数量 GR - 泛型读取 GW - 泛型写入 GE - 泛型执行 GA - 全部通用 RD - 读取数据/列表目录 WD - 写入数据/添加文件 AD - 追加数据/添加子目录 REA - 读取扩展属性 WEA - 编写扩展属性 X - 执行/遍历 DC - 删除子级 RA - 读取属性 WA - 写入属性 继承权可能位于任一 形式之前:(我) - 继承。ACE 继承自父容器。 (OI) - 对象继承。此容器中的对象将继承此 ACE。仅适用于目录。 (CI) - 容器继承。此父容器中的容器将继承此 ACE。仅适用于目录。 (IO) - 仅继承。ACE 继承自父容器,但不适用于对象本身。仅适用于目录。 (NP) - 不传播继承。ACE 由容器和对象从父容器继承,但不传播到嵌套容器。仅适用于目录。 组策略组策略是Windows环境下管理账户的一种手段,可以控制用户账户和计算机账户的工作环境。 以下功能: 账户策略的配置:如密码长度,复杂程度 脚本的配置:应用程序的安装与删除:用户登录或计算机启动时,自动为用户安装应用,自动修复应用的错误 文件夹重定向 限制访问可移动存储设备 用户工作环境的配置 其他系统设置等 组策略对象组策略对象(GPO)由组策略容器(GPC)和组策略模板(GPT)组成,其中,组策略容器存储在活动目录的域分区,组策略模板放在:%SYSTEMROOT%\SYSVOL\sysvol\域名\Polices 可以用组策略管理来查看和编辑每个GPO的设置,如下图可以看到有两个默认的组策略对象。
Defualt Domain Policy默认组策略对象,应用到其所在域的所有用户和计算器。
Default Domain Controllers Policy默认组策略对象,应用到Domain Controllers中所有的用户和计算机。
1、组策略容器 组策略容器中记录着该组策略对象的策略名称、标识组策略的GUID,组策略链接到的作用域等等元数据。
GUID标识的两个默认组策略对象。选中它就可以在右侧看到信息。 displayName属性为组策略的名称,该组策略名为Default DomainPolicy。 gPCFileSysPath属性为组策略模板存放的路径,该组策略模板存放路径如下。
- \\adsec.com\sysvol\adsec.com\Policies\{31B2F340-016D-11D2-945F-00C04FB984F9}
复制代码
当域中的某对象应用某组策略时,该对象的gPLink属性就会指向这条组策略的完整DN, 如下,会发现这个值和上面的DN记录一样。
2、组策略模板 一般是放在这个GUID命名的文件夹中。
组策略的创建
手动链接到域中的指定站点,先建一个组织单位。
接着在新建的sec右键,链接到现有的GPO
编辑这条组策略,例如将用户名密码长度最小值设置为7,生效后,修改密码长度低于7,则提示密码不满足密码策略的要求。
配置完后不会立即生效,执行下面的命令生效。
测试成功。
总结愿大家健康开心。
|