内网安全之:域与域权限判断

内网安全之:域与域权限判断

目录1 域控基础1.1 活动目录1.2 域中的计算机分类1.3 域内权限解读2 收集当前域信息2.1 获取当前用户与域 SID2.2 查询指定用户的详细信息2.3 判断是否存在域2.4 查找域控制器2.4.1 判断域控制器和DNS 服务器是否在同一服务器上2.4.2 查看域控制器的机器名2.4.3 查看域控制的主机名2.4.4 查看域控制器组2.5 添加域用户3 定位域管理员3.1 PsLoggedon.exe4 利用 PowerShell 收集域信息

1 域控基础

1.1 活动目录

活动目录(Active Directory,AD)是指域环境中提供目录服务的组件。

目录用于存储有关网络对象(例如用户、组、计算机、共享资源、打印机和联系人等)的信息,目录服务是指帮助用户快速、准确地从目录中找到其所需要的的信息的服务。

如果把企业的内网看成一本字典,那么内网里的资源就是字典里的内容,活动目录就相当于字典的索引。

活动目录的主要功能

1、帐号集中管理:所有帐号均存储在服务器中,以便执行命令和重置密码等。

2、软件集中管理:统一推送软件、安装网络打印机等。利用软件发布策略分发软件,可以让用户自由选择需要安装的软件。

3、环境集中管理:统一客户端桌面、IE、TCP/IP协议等设置。

4、增强安全性:统一部署杀毒软件和病毒扫描任务、集中管理用户的计算机权限、统一制定用户密码策略等。可以监控网路,对资料进行统一管理。

5、更可靠,更短的宕机时间:例如,利用活动目录控制用户访问权限,利用集群、负载均衡等技术对文件服务器进行容灾设置。网络更可靠,宕机时间更短。

1.2 域中的计算机分类

域控制器:域控制器用于管理所有的网络访问,包括登录服务器、访问共享目录和资源。

成员服务器:成员服务器是指安装了服务器操作系统并加入了域、但是没装活动目录(AD)的计算机,其主要任务是提供网络资源。

客户机:域中的计算机可以是安装了其他操作系统的计算机。用户利用这些计算机和域中的账户就可以登录域。

独立服务器:独立服务器和域没有关系。独立服务器可以创建工作组、与网络中的其他计算机共享资源,但不能使用活动目录提供的任何服务。

1.3 域内权限解读

域本地组:多域用户访问单域资源,可以从任何域添加用户账号、通用组和全局组,但只能在其所在域内指派权限;

全局组:单域用户访问多域资源(必须是同一哥域中的用户),只能在创建该全局组的域中添加用户和全局组。

通用组:通用组成员来自域森林中任何域的用户账号、全局组合其他通用组,可以在该域森林的任何域中指派权限,可以嵌套在其他组中,非常适合在域森林内的跨域访问中使用。

A-G-DL-P策略:

A-G-DL-P策略是指将用户账号添加到全局组中,将全局组添加到域本地组中,然后为域本地组分配资源权限。

A表示用户账号(Account);

G表示全局组(Global Group);

U表示通用组(Universal Group);

DL表示域本地组(Domain Local Group);

P表示资源权限(Permission,许可);

在此策略形成后,当需要给一个用户添加某个权限时。只需要把这个用户添加到某个本地域组中就可以了

几个比较重要的域本地组权限:

管理员组( Administrator);

远程登录组 (Remote Desktop Users);

域管理员组( Domain Admins);

域用户组( Domain Usrs);

2 收集当前域信息

2.1 获取当前用户与域 SID

whoami /all

2.2 查询指定用户的详细信息

# 查询本地用户详细信息

net user 2008r2

# 查询域用户详细信息

net user test01 /domain

# 获取本地及域内用户的详细信息

wmic useraccount get /all

# 查看当前域的所有用户

net user /domain

# 获取域用户组信息

net group /domain

# 查看本地管理员组用户

net localgroup administrators /domain

# 获取域内所有计算机信息

net view /domain:test

# 查看域管理员用户组

net group "domain admins" /domain

系统自带的常见用户身份如下:

*Domain Admins :域管理员

*Domain Computers : 域内机器

*Domain Controllers:域控制器

*Domain Guests:域访客,权限较低

*Domain Users:域用户

*Enterprise Admins:企业系统管理员用户

默认情况下Domain Admins和Enterprise Admins对域内所有域控制器有完全控制权限

# 获取域信任列表

nltest /domain_trusts

2.3 判断是否存在域

ipconfig /all

systeminfo

net config workstation

net view /domain

正确输出,说明此台机器在域中;

若是此命令在显示域处显示 WORKGROUP,则不存在域;

若是报错:发生系统错误 5,则存在域,但该用户不是域用户

2.4 查找域控制器

net time /domain

会有以下三种情况:

存在域,当前用户不是域用户

存在域,且当前用户是域用户

当前网络环境为工作组,不存在域

2.4.1 判断域控制器和DNS 服务器是否在同一服务器上

nslookup test.lab

2.4.2 查看域控制器的机器名

nltest /dclist:test

2.4.3 查看域控制的主机名

nslookup -type=SRV _ldap._tcp

2.4.4 查看域控制器组

net group "domain controllers" /domain

实际网络中,一个域内一般存在两台或两台以上的域控制器,作为主备。

netdom query pdc

2.5 添加域用户

# 域管理权限下

# 添加普通域用户

net user test test /add /domain

# 将普通域用户提升为域管理员

net group "Domain Admins" test /add /domain

3 定位域管理员

Sysinternals Utilities - Windows Sysinternals | Microsoft Docs

常用域管理员定位工具有 PsLoggedon.exe, PVEFindADUser.exe, netsess.exe, 以及 hunter,NetView 等。

在 powershell 中常用的工具是 powerView

3.1 PsLoggedon.exe

C:\Softwares\SysinternalsSuite>PsLoggedon.exe /?

PsLoggedon v1.35 - See who's logged on

Copyright (C) 2000-2016 Mark Russinovich

Sysinternals - www.sysinternals.com

Usage: PsLoggedon.exe [-l] [-x] [\\computername]

or PsLoggedon.exe [username]

-l Show only local logons

-x Don't show logon times

-nobanner Do not display the startup banner and copyright message.

4 利用 PowerShell 收集域信息

Release PowerSploit v3.0.0 · PowerShellMafia/PowerSploit · GitHub

PS C:\WINDOWS\system32> Set-ExecutionPolicy unrestricted

执行策略更改

执行策略可帮助你防止执行不信任的脚本。更改执行策略可能会产生安全风险,如

https:/go.microsoft.com/fwlink/?LinkID=135170 中的 about_Execution_Policies

帮助主题所述。是否要更改执行策略?

[Y] 是(Y) [A] 全是(A) [N] 否(N) [L] 全否(L) [S] 暂停(S) [?] 帮助 (默认值为“N”): y

PS C:\WINDOWS\system32> cd C:\Users\f_carey\Desktop\PowerSploit-3.0.0\Recon\

PS C:\Users\f_carey\Desktop\PowerSploit-3.0.0\Recon> Import-Module .\PowerView.ps1

PowerView 常用命令:

Get-NetDomain 获取当前用户所在的域名称

Get-NetUser 返回所有用户详细信息

Get-NetDomainController 获取所有域控制器

Get-NetComputer 获取所有域内机器详细信息

Get-NetOU 获取域中OU信息

Get-NetGroup 获取所有域内组和组成员信息

Get-NetFileServer 根据SPN获取当前域使用的文件服务器

Get-NetShare 获取当前域内所有网络共享

Get-NetSession 获取在指定服务器存在的Session信息

Get-NetRDPSession 获取在指定服务器存在的远程连接信息

Get-NetProcess 获取远程主机的进程信息

Get-UserEvent 获取指定用户日志信息

Get-ADObject 获取活动目录的对象信息

Get-NetGPO 获取域所有组策略对象

Get-DomainPolicy 获取域默认或域控制器策略

Invoke-UserHunter 搜索网络中域管理员正在使用的主机

Invoke-ProcessHunter 查找域内所有机器进程用于找到某特定用户

Invoke-UserEventHunter 根据用户日志获取某域用户登陆过哪些域机器

相关创作

拔牙医院
cctv3直播365

拔牙医院

📅 10-21 👁️ 1786
方舟生存进化岛龟怎么驯服
beat365体育登陆网址

方舟生存进化岛龟怎么驯服

📅 12-03 👁️ 4875
英雄联盟秒表天赋怎么玩 有什么作用
正规365体育投注

英雄联盟秒表天赋怎么玩 有什么作用

📅 01-03 👁️ 3636