千家信息网

如何在MicrosoftExchange上冒充用户

发表于:2026-10-31 作者:千家信息网编辑
千家信息网最后更新 2026年10月31日,如何在MicrosoftExchange上冒充用户,相信很多没有经验的人对此束手无策,为此本文总结了问题出现的原因和解决方法,通过这篇文章希望你能解决这个问题。写在前面的话今天,我们一起看一看攻击者(
千家信息网最后更新 2026年10月31日如何在MicrosoftExchange上冒充用户

如何在MicrosoftExchange上冒充用户,相信很多没有经验的人对此束手无策,为此本文总结了问题出现的原因和解决方法,通过这篇文章希望你能解决这个问题。

写在前面的话

今天,我们一起看一看攻击者(未经身份验证的用户)如何利用这个Exchange漏洞来在Exchange服务器上冒充合法用户并进行恶意操作。

那么接下来我们直奔主题,我们将给大家详细分析这个服务器端请求伪造(SSRF)漏洞,并演示攻击者如何伪装成合法用户。

漏洞分析

在实施攻击的过程中,攻击者需要利用一个SSRF漏洞并结合其他安全缺陷来实现身份伪装。Exchange允许任意用户指定URL地址来实现订阅推送,而服务器会直接尝试向这个URL地址发送通知。漏洞之所以存在,是因为Exchange服务器使用了CredentialCache.DefaultCredentials来进行网络连接:

在Exchange Web服务中,CredentialCache.DefaultCredentials是以NT AUTHORITY\SYSTEM权限运行的。这将导致Exchange服务器向攻击者的服务器发送NTLM哈希。Exchange服务器还会默认设置下列注册表键:

HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Lsa\DisableLoopbackCheck= 1

此时,攻击者将能够使用这些NTLM哈希来进行HTTP身份验证。比如说,他们可以使用这些哈希来访问Exchange Web服务(EWS)。因为它是以NT AUTHORITY\SYSTEM权限运行的,攻击者就可以利用TokenSerializationRight获取到特权"会话",并使用一个SOAP头来冒充特定用户。

下面给出的SOAP头样本中,攻击者使用了SID(S-1-5-21-4187549019-2363330540-1546371449-500)来伪装成管理员用户:

漏洞利用

为了方便演示,我们使用了下面这两个Python脚本:

1、 serverHTTP_relayNTLM.py:它可以从入站连接中获取NTLM哈希,并将其用于EWS身份验证。

2、 Exch_EWS_pushSubscribe.py:让PushSubscription调用我们的serverHTTP_relayNTLM.py。

脚本下载地址:【传送门】(还需Python-ntlm模块)

首先,我们需要获取到目标用户的SID,大致方法如下:

1、 以认证用户的身份登录OWA:

2、 接下来,创建新的文件夹,我们这里使用"tempFold"。点击下拉菜单中的"Permissions":

3、 添加需要冒充的用户电子邮件地址,这里我们使用victim@contoso.local:

4、 按下F12键,选择"Network"标签,然后再次点击新创建文件夹下拉菜单中的"Permissions":

5、 我们需要检查第一个service.svc?action=GetFolder请求返回的响应,查看方法:

Body->ResponseMessages->Items->0->Folders->0->PermissionSet->Permissions->N->UserId->SID

样本中的N为2,但是你可以根据你自己的情况来选择正确的。PrimarySmtpAddress为目标用户的邮件地址,如果响应中不包含PermissionSet参数,我们就需要查看另一个service.svc?action=GetFolder请求了:

6、 我们选择使用serverHTTP_relayNTLM.py中的SID来进行操作,我们还需要选择一个没有被屏蔽的TCP端口来转发Exchange服务器上的出站连接。比如说,TCP端口8080可用的话。

接下来,使用真实信息修改serverHTTP_relayNTLM.py:

设置好正确的脚本变量后,我们就可以开始了:

7、 下一步就是设置Exch_EWS_pssushSubscribe.py脚本中的变量了:

完成后,我们就可以执行脚本了:

8、 最后一步,我们需要利用事件触发机制来推送通知。我们可以进行类似创建和发送新邮件,或者删除新创建的文件夹来实现:


成功后,我们的serverHTTP_relayNTLM.py就可以从Exchange服务器那里收到入站连接了:

攻击成功后,我们将在响应中看到UpdateInboxRulesResponse ResponseClass="Success"。这也就意味着,入站规则已经成功添加进目标用户的邮箱了,所有的入站邮件都会被转发给攻击者。

接下来,我们需要测试这个新规则。我们需要利用任意邮箱账号来给目标用户发送一封邮件,但不要用我们新添加的规则(attacker@contoso.local),因为如果转发地址和目的地址相同的话规则就无效了。现在,登录管理员账号,发送某些信息给目标用户:

检查攻击者的收件箱,我们就可以看到这封邮件了:

看完上述内容,你们掌握如何在MicrosoftExchange上冒充用户的方法了吗?如果还想学到更多技能或想了解更多相关内容,欢迎关注行业资讯频道,感谢各位的阅读!

用户 攻击 服务 攻击者 服务器 地址 漏洞 邮件 目标 脚本 身份 接下来 方法 规则 哈希 选择 成功 文件 文件夹 验证 数据库的安全要保护哪些东西 数据库安全各自的含义是什么 生产安全数据库录入 数据库的安全性及管理 数据库安全策略包含哪些 海淀数据库安全审计系统 建立农村房屋安全信息数据库 易用的数据库客户端支持安全管理 连接数据库失败ssl安全错误 数据库的锁怎样保障安全 江苏根荣互联网科技 科技股互联网 互联网科技有限公司经营范围 深圳互联网络科技有限公司 互联网科技小贷 华中科技大学互联网 人人互联网科技是培训 上海电发互联网科技有限公司 博兴的互联网电子科技公司 济南华为互联网科技产业总部基地 黑科技闪耀互联网之光 开一家科技互联网公司需要多少钱 深圳育鹏互联网科技有限公司招聘 高科技互联网套路 互联网金融科技元年 广州千川互联网科技有限公司 广州富喜互联网络科技 领航科技大厦互联网公司 有人说阿里系是互联网科技企业 同城互联网络科技 哈尔滨大商圈互联网科技有限公司 上海挚品互联网科技 苏州互联网科技贷款公司 宁波青枫互联网科技有限公司 小米互联网科技园设置 湖北码尼互联网科技有限公司电话 注册互联网科技公司经营范围大全 华夏恒生科技与互联网科技 互联网科技的前景 北京瑞云互联网科技有限公司
0