首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

有没有更好的方法可以从 Python 中的 Active Directory 域中获取用户/组信息?

有一种方法可以从 Python 中的 Active Directory 域中获取用户/组信息,那就是使用 ldap3 库。ldap3 是一个用于与 LDAP 服务器进行交互的 Python 库。

首先,需要安装 ldap3 库。可以使用以下命令安装:

代码语言:txt
复制
pip install ldap3

接下来,可以使用以下代码示例来获取用户和组信息:

代码语言:python
代码运行次数:0
复制
import ldap3

# 连接到 LDAP 服务器
server = ldap3.Server('your_ldap_server_url')
conn = ldap3.Connection(server, 'your_username', 'your_password', auto_bind=True)

# 搜索用户
user_search_base = 'your_user_search_base'
user_search_filter = '(objectClass=user)'
conn.search(user_search_base, user_search_filter)
users = conn.entries

# 搜索组
group_search_base = 'your_group_search_base'
group_search_filter = '(objectClass=group)'
conn.search(group_search_base, group_search_filter)
groups = conn.entries

# 输出用户和组信息
for user in users:
    print(user)

for group in groups:
    print(group)

需要将 your_ldap_server_urlyour_usernameyour_passwordyour_user_search_baseyour_group_search_base 替换为实际的值。

使用 ldap3 库可以方便地从 Python 中的 Active Directory 域中获取用户和组信息。

页面内容是否对你有帮助?
有帮助
没帮助

相关·内容

Active Directory获取域管理员权限攻击方法

攻击者可以通过多种方式获得 Active Directory 域管理员权限。这篇文章旨在描述一些当前使用比较流行。...由于经过身份验证用户(任何域用户或受信任域中用户)对 SYSVOL 具有读取权限,因此域中任何人都可以在 SYSVOL 共享搜索包含“cpassword” XML 文件,该值是包含 AES 加密密码值...不要将密码放在所有经过身份验证用户可以访问文件。 有关此攻击方法更多信息在帖子中进行了描述:在 SYSVOL 查找密码并利用组策略首选项。...Kerberos TGS Service Ticket离线破解(Kerberoast) Kerberoast 可以作为普通用户 Active Directory 中提取服务帐户凭据有效方法,而无需向目标系统发送任何数据包...访问 Active Directory 数据库文件 (ntds.dit) Active Directory 数据库 (ntds.dit) 包含有关 Active Directory 域中所有对象所有信息

5.1K10

内网协议NTLM之内网大杀器CVE-2019-1040漏洞

由于安装Exchange后,Exchange在Active Directory域中具有高权限,Exchange本地计算机账户会将我们需要提升权限用户拉入到用户Exchange Trusted Subsystem...Exchange Windows Permissions可以通过WriteDacl方式访问Active DirectoryDomain对象,该对象允许该任何成员修改域权限,从而可以修改当前域ACL...这可以是攻击者从中获取密码计算机帐户,因为他们已经是工作站上Administrator或攻击者创建计算机帐户,滥用Active Directory任何帐户都可以默认创建这些帐户。...Directory域中具有高权限,Exchange本地计算机账户EX$会被加入用户Exchange Trusted Subsystem,该用户又隶属于Exchange Windows Permissions...Exchange Windows Permissions可以通过WriteDacl方式访问Active DirectoryDomain对象,该对象允许该任何成员修改域权限,从而可以修改当前域ACL

6.4K31

Active Directory教程3

为防范这种威胁,默认情况下,RODC 不将密码哈希存储在其目录信息树 (DIT) 。因此,用户首次向特定 RODC 进行身份验证时,RODC 会将该请求发送给域中完全域控制器 (FDC)。...在通常情况下,域中每个 KDC 共享相同 KrbTGT 帐户,所以有可能***者窃得 DC 上获取这些密钥,然后使用它们***域其余部分。...信任角度讲,FDC 将 RODC 视为域中成员服务器。RODC 不是企业域控制器或域控制器成员。...域管理员使用 Active Directory 用户和计算机 MMC 管理单元预先在域中创建 RODC 计算机帐户,如下图中所示。...最后,如果林中其他域用户试图向 RODC 验证,RODC 必须能够访问其所在域完全 DC 来获取信任密码,以便将验证请求正确传递给用户域中 DC。

1.6K10

Cloudera安全认证概述

收集有关KDC所有配置详细信息(或在设置过程让Kerberos管理员可以帮助您)是与集群和Kerberos集成无关一项重要初步任务,而与部署模型无关。...但是,Active Directory将将访问集群用户主体存储在中央领域中用户必须先在此中央AD领域进行身份验证才能获得TGT,然后才能与集群上CDH服务进行交互。...必须本地Kerberos领域到包含要求访问CDH集群用户主体中央AD领域建立单向跨领域信任。无需在中央AD领域中创建服务主体,也无需在本地领域中创建用户主体。 ?...对于第三方提供商,您可能必须各自供应商处购买许可证。此过程需要一些计划,因为要花费时间来获取这些许可证并将这些产品部署在集群上。...您还需要在AD完成以下设置任务: Active Directory组织单位(OU)和OU用户 -应该在Active Directory创建一个单独OU,以及一个有权在该OU创建其他帐户帐户。

2.9K10

通过ACLs实现权限提升

Directory Changes All 当我们为用户帐户设置这些权限时我们能够请求域中任何用户密码散列,包括域中krbtgt帐户密码散列,关于权限提升技术更多信息可以在下面的GitHub页面上找到...,这需要一些时间来枚举,但最终可能会产生一个链来获取domain对象上writeDACL权限 计算完链后,脚本将开始利用链每一步: 用户被添加到必要 两个ACE被添加到域对象ACL Replicating...虽然这种方法可行但它没有考虑中继用户可能拥有的任何特殊权限,通过这篇文章研究,我们在ntlmrelayx引入了一种新攻击方法,这种攻击首先请求重要域对象ACL,然后将其二进制格式解析为工具可以理解结构...(几乎可以控制域中所有) 如果使用-upgrade-user标志指定了现有用户,则在可以执行ACL攻击情况下,该用户将被授予复制权限,如果使用攻击则该用户将被添加到高权限,如果没有指定现有用户...,可以使用PowerShell查询Windows事件日志,因此这里有一个ID为5136安全事件日志获取所有事件一行程序 [code lang=powershell] Get-WinEvent -

2.3K30

CDP私有云基础版用户身份认证概述

收集有关KDC所有配置详细信息(或在设置过程让Kerberos管理员可以帮助您)是与集群和Kerberos集成无关一项重要首要任务,而与部署模型无关。...但是,Active Directory将将访问集群用户主体存储在中央领域中用户必须先在此中央AD领域进行身份验证才能获得TGT,然后才能与集群上CDH服务进行交互。...必须本地Kerberos领域到包含要求访问CDH集群用户主体中央AD领域建立单向跨领域信任。无需在中央AD领域中创建服务主体,也无需在本地领域中创建用户主体。 ?...对于第三方提供商,您可能必须各自供应商处购买许可证。此过程需要一些计划,因为要花费时间来获取这些许可证并将这些产品部署在集群上。...您还需要在AD完成以下设置任务: Active Directory组织单位(OU)和OU用户 -应该在Active Directory创建一个单独OU,以及一个有权在该OU创建其他帐户帐户。

2.4K20

内网渗透测试研究:NTDS.dit获取域散列值

Ntds.dit 在域环境,活动目录是域中提供目录服务组件,其可以帮助用户快速准确地目录中找到其所需要信息。...在规模较大网络,要把网络众多对象,例如计算机、用户用户、打印机、共享文件等分门别类、井然有序存放在一个大仓库,并做好信息索引,一遍查找、管理和使用这些资源对象。...该工具不仅能够提取与用户对象、对象、计算机对象相关信息,同时还能从NTDS.dit文件删除对象。...提取到哈希值可以用hashcat等工具进行破解,详情请看我另一篇文章:《内网横向移动研究:获取域内单机密码与Hash》 由于Ntds.dit包括但不限于有关域用户和组成员身份和凭据信息、GPP等信息...Ntdsxtract还具有一个“dscomputers.py”工具可以分离出来表中提取域中计算机信息。这对于离线分析目标信息是非常有用

3.1K30

蜜罐账户艺术:让不寻常看起来正常

在大多数 Active Directory 环境,我们可以作为普通 AD 用户(在某些情况下没有有效 AD 凭据)扫描所有这些 AD 森林。...识别特权账户  让我们#1 开始。我们可以递归枚举 AD 森林中每个域中管理员,也可以扫描每个域中用户属性“AdminCount”设置为 1 所有 AD 用户帐户。...我通常将“旧密码”定义为超过 5 年,因为 Active Directory 安全性实际上只是在过去 5 年左右(大约 2014/2015 年左右开始)成为大多数组织关注点。...此信息使攻击者能够收集网络会话信息并识别正在使用哪些计算机特权帐户。借助此信息,攻击者可以确定如何破坏单台计算机以获取对管理员凭据访问权限并破坏 AD。...Active Directory 默认配置允许任何用户将 10 个计算机帐户添加到 AD 域(技术上更多,因为每个计算机帐户可以添加 10 个)。

1.7K10

谈谈域渗透中常见可滥用权限及其应用场景(二)

它使用图形理论来自动化Active Directory 环境搞清楚大部分人员关系和细节。...在没有启用 AD 回收站域中,当 Active Directory 对象被删除时,它会变成一个墓碑 。其在指定时间段内保留在分区 Deleted Objects 容器 tombstone 。...与墓碑一样,它大部分属性都被删除,并且在 tombstoneLifetime 属性指定时间段内持续存在于 Active Directory 。...然后它会被 Active Directory 垃圾收集器清理掉。在启用回收站情况下删除对象生命周期如下所示: 简介: AD Recycle Bin是一个著名 Windows 。...Active Directory 对象恢复(或回收站)是 Server 2008 添加一项功能,允许管理员恢复已删除项目,就像回收站对文件所做一样。

72220

Active Directory 域安全技术实施指南 (STIG)

AD 信任关系配置是用于允许一个域中用户访问另一个域、林或 Kerberos 领域中资源步骤之一。当信托被定义... V-36435 高 必须禁止授予特权帐户。...V-8549 中等 必须所有高特权删除不属于同一织或不受相同安全策略约束外部目录帐户。 某些默认目录成员资格分配了访问目录高权限级别。...V-8547 中等 必须 Pre-Windows 2000 Compatible Access 删除所有人和匿名登录。...V-25997 中等 只读域控制器 (RODC) 体系结构和配置必须符合目录服务要求。 RODC 角色为内部网络到 DMZ 选定信息提供单向复制方法。...V-8521 低 具有委派权限用户帐户必须 Windows 内置管理删除或帐户删除委派权限。 在 AD 可以委派帐户和其他 AD 对象所有权和管理任务。

1.1K10

Kerberos 黄金门票

在包括在伪造票证 SID 历史记录包含任意 SID 功能。 SID 历史记录是一项旧功能,可实现跨 Active Directory 信任回溯。...在单个域 Active Directory 林中,不存在此限制,因为 Enterprise Admins 托管在此域中(这是创建黄金票证地方)。...在迁移方案 DomainA 迁移到 DomainB 用户将原始 DomainA 用户 SID 添加到新 DomainB SIDHistory 属性。...更新: 已经注意到,在 Active Directory 林中信任之间启用 SID 过滤可以缓解这种情况,因为 SID 历史记录不起作用。...这些可能看起来像小问题,但我已经看到几个大型企业 AD 环境在采用非标准方法时会中断,因为开发人员在测试时没有考虑配置。 请注意,Active Directory 域不是 安全边界;AD森林是。

1.3K20

攻击 Active Directory 托管服务帐户 (GMSA)

当我们在 Trimarc 执行 Active Directory 安全评估时,我们发现在 AD 环境托管服务帐户使用有限。应尽可能使用 GMSA 将用户帐户替换为服务帐户,因为密码将自动轮换。...管理服务帐户 (GMSA) 创建用作服务帐户用户帐户很少更改其密码。托管服务帐户 (GMSA)提供了一种更好方法 Windows 2012 时间框架开始)。密码由 AD 管理并自动更改。...托管 GMSA 服务帐户计算机 Active Directory 请求当前密码以启动服务。 配置 GMSA 以允许计算机帐户访问密码。...破坏其中一个,GMSA 帐户就会受到破坏,并且由于它是域中管理员成员,因此我们拥有该域。 一旦我们破坏了能够提取明文密码用户(或计算机!)帐户。...我在实验室执行下一步是确认 DSInternals 提供 NT 密码散列与 Active Directory 匹配。

1.9K10

【内网安全】域信息收集&应用网络凭据&CS插件&Adfind&BloodHound

将不同电脑按功能分别列入不同,以方便管理。默认情况下所有计算机都处在名为 WORKGROUP 工作,工作资源管理模式适合于网络中计算机不多,对管理要求不严格情况。...可以简单把域理解成升级版“工作”,相比工作而言,它有一个更加严格安全管理控制机制,如果你想访问域内资源,就必须拥有一个合法身份登陆到该域中,而你对该域内资源拥有什么样权限,还需要取决于你在该域中用户身份...因此,域渗透思路就是:通过域成员主机,定位出域控制器IP及域管理员账号,利用域成员主机作为跳板,扩大渗透范围,利用域管理员可以登陆域中任何成员主机特性,定位出域管理员登陆过主机IP,设法域成员主机内存...BloodHound使用可视化图来显示Active Directory环境隐藏和相关联主机内容。攻击者可以使用BloodHound轻松识别高度复杂攻击路径,否则很难快速识别。...防御者可以使用BloodHound来识别和防御那些相同攻击路径。蓝队和红队都可以使用BloodHound轻松深入了解Active Directory环境权限关系。

6810

红队战术-域管理员到企业管理员

基础知识补充 企业管理员:是域森林根域中企业管理员组成员,该成员在域森林中每一个域内administrators成员,对所有的域控制器具有完全访问权限。...这些包括身份验证协议,网络登录服务,本地安全机构(LSA)和Active Directory存储受信任域对象(TDO)。...TDO密码 信任关系两个域共享一个密码该密码存储在Active DirectoryTDO对象。作为帐户维护过程一部分,信任域控制器每三十天更改一次存储在TDO密码。...但是,域B用户不能访问域A资源。 Active Directory林中所有域信任都是双向可传递信任。创建新子域时,将在新子域和父域之间自动创建双向传递信任。...,我们仍然可以通过可以使用sidHistory方法来获得信任。

1K20

使用Adidnsdump转储Active Directory DNS

DNS域传送漏洞是在黑客常用一种漏洞攻击手段。要实现域传送漏洞,就需要一个不安全配置DNS服务器,允许匿名用户传输所有记录并收集有关网络主机信息。...然后网络上任何用户可以获取所有传送记录并收集有关网络中服务器信息。然而,目前还很少有人知道,如果使用Active Directory集成DNS,任何用户可以默认查询所有DNS记录。...本文,我会给你介绍了一个默认查询所有DNS记录工具——Adidnsdump ,即使你是一个没有读取传送记录权限用户,也可以使用以下方法获得域环境所有DNS解析记录。...0x03 在LDAP查询DNS记录最明显方法是执行查询,选择该类所有对象,这些对象dnsNode表示DNS区域中条目。...0x04 使用adidnsdump,您可以GitHub获取可以枚举DNS区域中所有记录。首先,首先显示您当前所在域中区域--print-zones。这将显示存在哪些区域。

1.5K20

BloodHound

BloodHound 使用图形理论,自动化地在Active Directory环境理清大部分人员之间关系和细节。...使用指南 采集数据 使用BloodHound进行分析,需要来自Active Directory环境三条信息,具体如下: 哪些用户登录了哪些机器? 哪些用户拥有管理员权限?...该用 户属于 Domain Admins 可以通过 PTH 方法获取域管理员和域控制器。...第四节点是第五个 节点计算机本地管理员,在该计算机可以获取第五个节点用户(属于 Domain Admins 散列值,进而获取域控制器权限 这里用一个第三方图片来看看: ?...BloodHound可以以图表形式将这些信息展示出来,并列出该用户域中权限信息,方便Red Team成员更快地在域中进行横向渗透,提升权限,获取域管理员权限,如下图所示: ?

96510

内网渗透 | 利用拷贝卷影提取ntds.dit

ntds.dit文件是一个数据库,用于存储Active Directory数据,包括有关用户对象,和组成员身份信息。它包括域中所有用户密码哈希。...ntds.dit是一个二进制文件,存储位置为域控制器%SystemRoot%\ntds\ntds.dit。ntds.dit包含用户名、散列值、、GPP、OU等与活动目录相关信息。...数据表 数据表包含Active Directory数据存储所有信息用户,特定于应用程序数据,以及安装后在Active Directory存储任何其他数据。...链接表 链接表包含代表链接属性数据,这些属性包含引用Active Directory其他对象值。一个示例是用户对象上MemberOf属性,其中包含引用用户所属值。链接表比数据表小得多。...这是因为PEK是使用BOOTKEY加密,该BOOTKEY在所有域控制器(实际上在域中所有计算机)上都是不同。 为了解密PEK,必须NTDS.DIT获取ATTk590689字段。

1.5K10

获取域内信息工具哪家强 | 三款常用工具横向对比

文章来源|MS08067 内网安全知识星球 本文作者:掉到鱼缸里猫(Ms08067内网安全小组成员) 情景 在测试过程通过漏洞获取了边界节点控制权,但该主机不在域中,或者不是windows主机(...本文将介绍利用 ldapsearch 工具,通过端口转发方式,获取域内用户信息方法,主要是获取域中用 户、主机、用户、指定用户用户信息,以及超大规模(10W)用户目录情况(极端情况,估计这辈子都遇不到...(kali默认安装) LDAP和Windows AD关系:Active Directory = LDAP服务器+LDAP应用(Windows域 控)。...Active Directory先实现一个LDAP服务器,然后自己先用这个LDAP服务器实现了自己 一个具体应用(域控) 验证用户是否有效: ldapsearch -D 用于验证binddn -w...导出域中全部用户信息: 导出指定部分记录,利用过滤规则,过滤 objectClass=User 就可以,但是由于域内主机在AD 也有一个对应机器账号,所以这里查询结果也会包含主机。

3K20
领券