Az - PTA - Pass-through Authentication
Last updated
Last updated
学习与实践 AWS 黑客技术:HackTricks 培训 AWS 红队专家 (ARTE) 学习与实践 GCP 黑客技术:HackTricks 培训 GCP 红队专家 (GRTE)
来自文档: Azure Active Directory (Azure AD) 透传身份验证允许您的用户使用相同的密码登录本地和基于云的应用程序。此功能为您的用户提供了更好的体验——记住的密码少了一项,并且减少了 IT 帮助台的成本,因为您的用户不太可能忘记如何登录。当用户使用 Azure AD 登录时,此功能直接验证用户的密码与您的本地 Active Directory。
在 PTA 中,身份是同步的,但密码****不是,与 PHS 不同。
身份验证在本地 AD 中进行验证,云端的通信由在本地服务器上运行的身份验证代理完成(不需要在本地 DC 上)。
为了登录,用户被重定向到Azure AD,在这里他发送用户名和密码
凭据被加密并放入 Azure AD 的队列中
本地身份验证代理从队列中收集凭据并解密它们。这个代理被称为**“透传身份验证代理”或PTA 代理**。
代理将凭据与本地 AD进行验证,并将响应****返回给 Azure AD,如果响应是积极的,完成用户的登录。
如果攻击者破坏了PTA,他可以查看队列中的所有凭据(以明文形式)。 他还可以验证任何凭据到 AzureAD(类似于 Skeleton key 的攻击)。
如果您对运行PTA 代理的Azure AD Connect 服务器具有管理员访问权限,您可以使用AADInternals模块插入后门,这将验证所有输入的密码(因此所有密码都将有效进行身份验证):
如果安装失败,这可能是由于缺少 Microsoft Visual C++ 2015 Redistributables。
还可以使用以下 cmdlet 在安装了之前后门的机器上查看发送到 PTA 代理的明文密码:
This backdoor will:
创建一个隐藏文件夹 C:\PTASpy
复制 PTASpy.dll
到 C:\PTASpy
将 PTASpy.dll
注入到 AzureADConnectAuthenticationAgentService
进程中
当 AzureADConnectAuthenticationAgent 服务重新启动时,PTASpy 会被“卸载”,必须重新安装。
在云端获得 GA 权限 后,可以通过在 攻击者控制的机器 上设置 注册一个新的 PTA 代理。一旦代理 设置完成,我们可以 重复 之前 的步骤来 使用任何密码进行身份验证,并且 获取明文密码。
可以使用 PTA 的无缝 SSO,这对其他滥用行为是脆弱的。请查看:
Az - Seamless SSOLearn & practice AWS Hacking:HackTricks Training AWS Red Team Expert (ARTE) Learn & practice GCP Hacking: HackTricks Training GCP Red Team Expert (GRTE)