该种绕过方式允许攻击者将已经协商签名的身份验证尝试中继到另外一台服务器,同时完全删除签名要求。所有不执行签名的服务器都容易受到攻击。...攻击者可以修改已经协商签名的身份验证流量,然后中继到另外一台服务器,同时完全删除签名要求。通过该攻击方式可使攻击者在仅有一个普通域账号的情况下,运程控制域中任意机器(包括域控服务器)。...4.构造请求使Exchange Server向攻击者进行身份验证, 并通过LDAP将该身份验证中继到域控制器,即可使用中继受害者的权限在Active Directory中执行操作。...3.使用中继的LDAP身份验证,将受害者服务器的基于资源的约束委派权限授予攻击者控制下的计算机帐户。 4.攻击者现在可以作为AD服务器上的任意用户进行身份验证。包括域管理员。...,请注意:从Active Directory服务器本身运行该证书以确保正确的私钥->证书关联 C:\> certreq -new request.inf client.csr 接着回到具有openssl
Active Directory 证书服务 (AD CS) Active Directory 证书服务 (AD CS) 提供公钥基础结构 (PKI) 功能,该功能支持 Windows 域上的身份和其他安全功能...攻击者可以通过中继到AD CS web界面来解决这些限制。攻击者可以使用NTLM中继访问AD CS web界面,并请求客户端身份验证证书作为受害者帐户。...Active Directory 企业 CA 与 AD 的身份验证系统挂钩,CA 根证书私钥用于签署新颁发的证书。...如果我们窃取了这个私钥,我们是否能够伪造我们自己的证书,该证书可用于(无需智能卡)作为组织中的任何人向 Active Directory 进行身份验证?...伪造证书时指定的目标用户需要在 AD 中处于活动状态/启用状态,并且能够进行身份验证,因为身份验证交换仍将作为该用户进行。例如,试图伪造 krbtgt 的证书是行不通的。
LDAP over TLS 如上图所示,使用开启SSL/TLS的LDAP客户端会使用公钥加密算法去检查服务器的证书和公共ID是否有效,发布该证书的证书机构(CA)是否在客户端保存的信任CA列表中。...此处因为使用的是活动目录集成的LDAP(Active-Directory integrated LDAP),服务器使用的是自签名的根证书。...因此,在没有配置LDAPS的域环境(默认LDAPS是被禁用的)中,攻击者无法通过LDAP创建新的计算机账号,便无法进行委派的配置,使得攻击链失效。...域控制器启用了LDAPS。...2WPAD 如果不需要使用WPAD,通过组策略禁用它并禁用WinHTTPAutoProxySvc服务。 3LDAP 启用LDAP签名和LDAP channel binding。
客户端身份验证(OID 1.3.6.1.5.5.7.3.2)- 证书用于对另一个服务器进行身份验证(例如,对 Active Directory 进行身份验证)。...只有由NTAuthCertificates对象定义的一个CA签署了进行身份验证的客户端证书,客户端应用程序才能使用证书进行对AD的身份验证。...然后,客户端使用其私钥对CSR进行签名,并将CSR发送到企业CA服务器。 CA服务器检查客户端是否可以请求证书。如果可以,它将通过查找CSR中指定的证书模板AD对象来确定是否发放证书。...默认情况下,所有AD CS服务器都启用了DCOM服务器,并且我们经常看到客户端通过此方法请求证书。...WinRM、RDP和IIS都支持使用Schannel进行客户端身份验证,但需要额外的配置,并且在某些情况下(例如WinRM),无法与Active Directory集成。
配置启用基于SSL/TLS的LDAP(LDAPS) 目录 安装证书服务ADCS 配置ADCS 证书配置 默认情况下,LDAP 通信未加密。...为了减少这种形式的数据泄露,微软提供了一个选项:您可以启用通过安全套接字层 (SSL)/传输层安全性 (TLS) 的 LDAP,也称为 LDAPS。利用 LDAPS,您可以提高整个网络的安全性。...安装证书服务ADCS 安装Active Directory证书服务 勾选第一个证书颁发机构 然后一直下一步,直到安装完成即可 配置ADCS 选择证书颁发机构 选择企业 选择根 创建新的私钥...下一步 如下配置完成 证书配置 打开AD CS,选择证书颁发机构 选择证书模板,右键管理 选择Kerberos身份验证,右键 复制模板 然后会有一个Kerberos身份验证的副本,...右键更改名称,更改为LDAPS 选择LDAPS,右键属性 设置模板属性,请求处理——>允许导出私钥(O) 创建证书模板 选择LDAPS,确定 然后打开控制台,输入MMC 添加或删除管理单元
该模式主要是用来还原Active Directory数据库,该密码必须符合密码策略 这里会提示“无法创建该DNS服务器的委派,因为无法找到有权威的父区域或者它未运行Windows DNS服务器”。...该模式主要是用来还原Active Directory数据库,该密码必须符合密码策略 这里会提示“无法创建该DNS服务器的委派,因为无法找到有权威的父区域或者它未运行Windows DNS服务器”。...如图所示,所有先决条件检查都通过,点击安装即可。 之后服务器会重启,重启后登录。登录成功后,打开 服务器管理器——>工具——>Active Directory用户和计算机。...如图所示,所有先决条件检查都通过,点击安装即可。 之后服务器会重启,重启后登录。登录成功后,服务器管理器——>工具——>Active Directory用户和计算机。...为了减少这种形式的数据泄露,微软提供了一个选项:您可以启用通过安全套接字层 (SSL)/传输层安全性 (TLS) 的 LDAP,也称为 LDAPS。利用 LDAPS,您可以提高整个网络的安全性。
在客户端和服务器进程相互证明各自的身份之后,对通信进行加密以确保隐私和数据完整性。...但是,Active Directory将将访问集群的用户主体存储在中央领域中。用户必须先在此中央AD领域进行身份验证才能获得TGT,然后才能与集群上的CDH服务进行交互。...但是,这只是一个宽松的准则。监视利用率并根据需要部署其他实例以满足需求。 默认情况下,Kerberos使用TCP进行客户端/服务器通信,这可以保证传递,但传递数据包的速度不如UDP。...通常,Cloudera建议在与集群相同的子网上设置Active Directory域控制器(Microsoft服务器域服务),并且永远不要通过WAN连接进行设置。...为AD启用SSL -Cloudera Manager应该能够通过LDAPS(TCP 636)端口连接到AD。
在本文中,我们将研究如何配置Kafka客户端以使用LDAP(而不是Kerberos)进行身份验证。 我们将不在本文中介绍服务器端配置,但在需要使示例更清楚时将添加一些引用。...身份目录服务(例如Active Directory,RedHat IPA和FreeIPA)支持Kerberos和LDAP身份验证,并且为Kafka集群启用了这两种功能,从而为客户端提供了处理身份验证的不同选择...因此,当为Kafka启用LDAP身份验证时,为Kafka客户端之间的所有通信启用并实施TLS加密非常重要。这将确保凭据始终通过网络加密,并且不会受到损害。...TLS连接(LDAPS)连接到LDAP服务器。...为确保Kafka代理可以信任LDAP服务器证书,请将LDAP服务器的CA证书添加到Kafka服务使用的信任库中。
Kerberos概述 简而言之,Kerberos是一种身份验证协议,它依赖于加密机制来处理客户端和服务器之间的交互的请求,从而极大地降低了模拟的风险。密码既不存储在本地,也不通过网络明文发送。...但是,Active Directory将将访问集群的用户主体存储在中央领域中。用户必须先在此中央AD领域进行身份验证才能获得TGT,然后才能与集群上的CDH服务进行交互。...但是,这只是一个宽松的准则。监视利用率并根据需要部署其他实例以满足需求。 默认情况下,Kerberos使用TCP进行客户端/服务器通信,这可以保证传递,但传递数据包的速度不如UDP。...通常,Cloudera建议在与集群相同的子网上设置Active Directory域控制器(Microsoft服务器域服务),并且永远不要通过WAN连接进行设置。...为AD启用SSL -Cloudera Manager应该能够通过LDAPS(TCP 636)端口连接到AD。
漏洞分析 默认情况下, AD 启用基于证书的身份验证。 要使用证书进行身份验证, CA 必须向账号颁发一个包含允许域身份验证的 EKU OID 的证书(例如客户端身份验证)。...当 账号使用证书进行身份验证时, AD 在根 CA 和 NT Auth Certificates 验证证书链对象指定的 CA 证书。...Active Directory 企业 CA 与 AD 的身份验证系统挂钩,CA 根证书私钥用于签署新颁发的证书。...如果我们窃取了这个私钥,我们是否能够伪造我们自己的证书,该证书可用于(无需智能卡)作为组织中的任何人向 Active Directory 进行身份验证? 作者命名为黄金证书 ?...伪造证书的过程可以在我们控制的主机中进行伪造。 伪造证书时指定的目标用户需要在 AD 中处于活动状态/启用状态,并且能够进行身份验证,因为身份验证交换仍将作为该用户进行。
文章前言 在内网渗透测试中我们经常会在几个小时内获得域管理权限,而造成这种情况的原因是系统加固不足和使用不安全的Active Directory默认值,在这种情况下公开的利用工具有助于发现和利用这些问题...,在默认配置中它是Exchange Windows Permissions组的成员,如果攻击者能够说服Exchange服务器对攻击者的机器进行身份验证,例如:使用mitm6进行网络级攻击,权限可以立即提升到域管理员...,从NT Authority\SYSTEM的角度连接到攻击者并使用NTLM进行身份验证,这足以对LDAP进行身份验证,下面的屏幕截图显示了用psexec.py调用的PowerShell函数Invoke-Webrequest...,它将从系统角度运行,标志-UseDefaultCredentials将启用NTLM的自动身份验证 应该注意的是,在Active Directory的默认配置中针对LDAP的中继攻击是可能的,因为LDAP...签名在一定程度上缓解了这种攻击,但在默认情况下是禁用的,即使启用了LDAP签名,仍有可能中继到LDAPS(SSL/TLS上的LDAP),因为LDAPS被视为已签名的通道,唯一的缓解方法是在注册表中为LDAP
在 Active Directory 的默认配置中,可以在其 WebClient 服务运行时远程接管工作站 (Windows 7/10/11) 和可能的服务器(如果安装了桌面体验)。...但是,如果已触发 WebClient 服务在工作站上启动(例如,通过某些 SharePoint 交互),您可以远程接管该系统。...RPC 到 RCE 的步骤 开始设置到 LDAPS 服务器的中继以配置 RBCD。...ntlmrelayx.py -t ldaps://dc.windomain.local --delegate-access 尝试通过 HTTP 向您的中继触发机器身份验证。...如果强制执行机器身份验证,您应该会看到成功中继到 LDAPS(假设 DC 上未启用通道绑定/签名)。这将导致创建一个为其配置了 RBCD 的计算机帐户。
及时复制可确保目录服务数据在支持相同客户端数据范围的所有服务器之间保持一致。在使用 AD 站点的 AD 实施中,域......V-8523 中等的 如果在 AD 实施中使用 V**,则必须通过网络入侵检测系统 (IDS) 对流量进行检查。 为了提供数据机密性,V** 被配置为对正在传输的数据进行加密。...虽然这可以保护数据,但某些实现不允许通过... V-8524 中等的 当域支持 MAC I 或 II 域时,目录服务必须由多个目录服务器支持。 在 AD 架构中,多个域控制器通过冗余提供可用性。...在 AD 中,以下组的成员身份可启用相对于 AD 的高权限和... V-8540 中等的 必须在传出林信任上启用选择性身份验证。 可以使用选择性身份验证选项配置出站 AD 林信任。...启用此选项通过要求显式授权(通过... V-8547 中等的 必须从 Pre-Windows 2000 Compatible Access 组中删除所有人和匿名登录组。
但是在部署了 Active Directory 认证服务 (AD CS) 的服务器的域中,可能会在发生入侵时被滥用以实现域持久性。通过窃取 CA 证书的私钥,红队可以伪造和签署证书以用于身份验证。...在部署 Active Directory 证书服务 (AD CS) 期间,域中默认启用基于证书的身份验证。因此,需要将这些系统视为第 0 层资产并得到适当保护。...certsrv – 提取的 CA 但是,还有多种其他方法可用于从服务器提取 CA 证书和私钥。使用参数“ Certificates ”执行Seatbelt可以枚举存储的CA证书。...该模块最初是为创建智能卡身份验证客户端证书而开发的。所需的参数是证书颁发机构的主题名称和将创建证书的用户的用户主体名称。可选项,“ /pfx ”参数可用于定义将要创建的证书的文件名。...C# 中开发的,它使红队能够使用 CA 证书为任何域用户伪造证书进行身份验证。
在本指南中,我们将向您展示如何设置自签名SSL证书,以便在Debian 9上与Apache Web服务器一起使用。 注意:自签名证书将加密服务器与任何客户端之间的通信。...但是,由于Web浏览器不包含任何受信任的证书颁发机构的签名,因此用户无法使用该证书自动验证服务器的身份。自签名证书提供了相同类型的加密,但没有域名验证公告。...关于自签名证书,你可以参考为Apache创建自签名SSL证书和如何为Nginx创建自签名SSL证书这两篇文章。 先决条件 在开始之前,您应该为非root用户配置sudo权限。...第1步 - 创建SSL证书 TLS / SSL通过使用公共证书和私钥的组合来工作。SSL密钥在服务器上保密。它用于加密发送给客户端的内容。SSL证书与请求内容的任何人公开共享。...我们想要创建一个新的X.509证书,所以我们使用这个子命令。 -x509:这通过告诉实用程序我们要创建自签名证书而不是生成证书签名请求(通常会发生)来进一步修改上一个子命令。
由于保密要求,无法展示真实场景数据,故在本地搭建域环境进行测试。 在深入了解如何通过证书服务攻击获取域控权限之前,我们先进入草莓时刻,了解一下什么是AD CS。...证书注册Web服务(CES) 证书注册 Web 服务是一种 Active Directory 证书服务 (AD CS) 角色服务,它使用户和计算机能够使用 HTTPS 协议来进行证书注册。...在仿冒受害者帐户时,攻击者可以访问这些Web界面,并根据用户或计算机证书模板请求客户端身份验证证书。...当上述操作完成后,我们就可以在Kali攻击机设置NTLM中继,通过已发现的漏洞,让域控向攻击中转机发起验证,将传入的身份验证从Kali转发到AD CS服务器进行身份验证。...简单总结一下本次攻防对抗的渗透流程: 通过Web打点进入内网,通过资产探测发现存在域环境。 尝试SPN服务扫描,获取部分可进行Kerberoasting的高权限账号,但是爆破无果。
检查有关 NTLM 身份验证中继的 LDAP 保护 概括 尝试在域控制器上中继 NTLM 身份验证 LDAP 时,有几个服务器端保护。...此工具尝试枚举的 LDAP 保护包括: LDAPS -通道绑定 LDAP -服务器签名要求 可以从未经身份验证的角度确定通过 SSL/TLS 对 LDAP 执行通道绑定。...但是,要确定是否强制执行标准 LDAP 的服务器端保护(服务器签名完整性要求),必须首先在 LDAP 绑定期间验证客户端凭据。识别执行此保护的潜在错误是从经过身份验证的角度识别的。...TL;DR - 可以未经身份验证检查 LDAPS,但检查 LDAP 需要身份验证。 用法 注意:DNS 需要正确解析。如果您正在通过 SOCKS 路由或在未加入域的主机上运行,请确保它正常工作。...Active Directory 域不是必需的,它将通过匿名 LDAP 绑定来确定。
,并从 Active Directory 证书服务获取允许提升权限的证书。...从本质上讲,该漏洞允许普通域用户在通过 Active Directory 证书服务 (AD CS) 服务器将权限提升到域管理员。 用户可以根据预定义的证书模板请求证书。...这些模板指定最终证书的设置,例如它是否可以用于客户端身份验证、必须定义哪些属性、允许谁注册等等。虽然 AD CS 可用于许多不同的目的,这次的漏洞出现在 AD CS 的客户端身份验证方面。...分析复现 利用条件 Active Directory启用AD CS 影响范围 Windows Server 2012 R2 (Server Core installation) Windows Server...换句话说,PKINIT 是允许使用证书进行身份验证的 Kerberos 扩展。为了使用证书进行 Kerberos 身份验证,证书必须配置“客户端身份验证”扩展密钥使用 (EKU),以及某种帐户标识。
安装ADCS服务 在讲解ADCS证书服务之前,先安装一个ADCS证书服务,如下: 这里在域控AD01上安装Active Directory证书服务。...点击“配置目标服务器上的Active Directory证书服务”。如图所示: 会弹出指定凭据以配置角色服务对话框,这里我们保持默认,然后点击下一步。...但是在域中基本都是使用企业CA,因为企业CA可以和活动目录域服务ADDS进行结合,其信息也存储在Active Directory数据库中。企业CA支持基于证书模块创建证书和自动注册证书。...在这个阶段,客户端发送包含证书内容的请求包,并使用证书私钥对其进行签名作为预认证数据。...而普通的kerberos协议的AS-REQ请求包是 pA-ENC-TIMESTAMP字段,是用用户Hash加密的时间戳 KDC在收到客户端发来的AS-REQ请求包后,使用证书的公钥对签名进行校验,校验通过后发送
我们还假设您已经在Debian 9服务器上完成了LAMP(Linux,Apache,MariaDB和PHP)安装。如果您还没有这样做,请按照我们在Debian上安装LAMP堆栈的指南进行设置。...这将要求您注册域名,为服务器创建DNS记录,以及设置Apache虚拟主机。 如果你没有域名,建议您先去这里注册一个域名,如果你只是使用此配置进行测试或个人使用,则可以使用自签名证书,不需要购买域名。...自签名证书提供了相同类型的加密,但没有域名验证公告。关于自签名证书,你可以参考为Apache创建自签名SSL证书和如何为Nginx创建自签名SSL证书这两篇文章。...以下内容将以常规用户权限运行您的MariaDB客户端,并且您只能通过身份验证获得数据库中的管理员权限: mariadb -u user -p 从那里,创建一个新用户并给它一个强大的密码: CREATE...最简单的方法之一是使用Apache的内置.htaccess身份验证和授权功能将网关放在整个应用程序的前面。 为此,您必须首先通过编辑Apache配置文件来启用.htaccess文件覆盖的使用。
领取专属 10元无门槛券
手把手带您无忧上云