您现在的位置是:网络安全 >>正文
如何恢复网络令牌,你学会了吗?
网络安全1人已围观
简介在这篇文章中,我将介绍我在逆转Office的身份验证机制时发现的两个问题,并提供一些不需要删除内存的POC工具来帮助恢复存储的令牌。微软账户服务我必须承认,当我第一次开始研究这个问题时,删除我正在运行 ...
在这篇文章中 ,何恢我将介绍我在逆转Office的复网身份验证机制时发现的两个问题 ,并提供一些不需要删除内存的络令POC工具来帮助恢复存储的令牌 。
微软账户服务我必须承认,牌学当我第一次开始研究这个问题时 ,何恢删除我正在运行的复网Word进程的内存并没有发现文档签名eyJ0eX 。这是络令当前工具用来识别活动令牌的主要方法,我在Windows登录时使用Microsoft 365帐户 。牌学
事实证明,模板下载何恢Microsoft Account (MSA)的复网身份验证令牌处理方式与通常的Azure AD SSO帐户不同 。
让我们从查看经过MSA验证的络令Office会话开始 ,启动Microsoft Office并查看加载的牌学DLL。其中最突出的何恢是MicrosoftAccountWAMExtension.dll。将这个DLL加载到Ghidra中,复网我们可以开始寻找为MSA帐户生成身份验证令牌的络令原因。
如果我们在这个DLL中寻找RPC调用,就可以看到一堆被定向到名为wlidsvc的服务 :

不幸的高防服务器是,微软并没有为RPC调用此服务提供IDL(或者根本没有提供很多信息),所以我们将不得不做一些逆向工程来解决这个问题。
让我们将WinDBG附加到wlidsc并监视正在进行的RPC调用 。在任何Office进程中进行身份验证之后 ,我们看到第一个调用是RPC方法WLIDCCreateContext以创建上下文,然后是WLIDCAcquireTokensWithNGC,最后是一系列其他调用 ,我们将暂时忽略这些调用 。
如果我们在后一种方法中添加一个断点 ,那登录到Office中的源码下载MSA帐户会导致命中:

步进式(Stepping )直到我们点击ret并检查填充的参数,在参数12的内存区域中会显示一些有趣的东西。

对我来说 ,这确实是一个象征 !如果我们打开像Fiddler这样的代理 ,我们会看到它与Office访问web服务时使用的身份验证令牌格式相匹配 :

那么,我们如何从我们自己的工具中调用它呢?让我们使用James Forshaw的NtObjectManager生成一个可以使用的存根。云计算

生成的RPC存根根据Windows版本的不同而不同,这是毫无价值的,例如,在Windows 10中 ,我们发现字段计数在输入结构上发生了变化 ,因此,如果你收到可怕的(0x800706F7) - The stub received bad data. 错误,请多家留意 。
使用RPC客户端存根创建一个快速的C#应用程序,我们将重播我们之前观察到的源码库入站RPC调用,并添加参数 ,这将给我们提供如下内容:

如果我们称之为 :

由于这是MSA身份验证请求,我们将不得不使用Substrate等服务来访问Microsoft 365服务 。旋转一个代理并在Office中导航是确定调用什么以及这些web服务采用什么参数的最佳方式 。但你可以看到,passport令牌返回后 ,我们可以很好地进行身份验证和交互:

现在我们已经了解了如何恢复MSA,那么Azure AD呢 ?通过Lee Christensen的帖子知道 ,我们可以很容易地按需请求新令牌 ,但是我们在Office进程中看到的亿华云缓存令牌被转储了 ,它们是如何在启动时加载的呢?
让我们提供一个新的主机并将我们的用户帐户与AzureAD相关联 ,然后登录到Office,再尝试找出令牌存储的位置。

为了确保我们在正确的轨道上 ,让我们从内存中转储一些字符串 ,并确保eyJ0eX签名存在。

我们再次深入搜索dll ,但这次我们将重点关注Windows.Security.Authentication.Web.Core.dll。
这是一个WinRT库,因此我们需要深入Ghidra了解正在发生的事情 。
AddWebTokenResponseToCache方法如下 :

如果我们进一步研究,会发现此方法实际上负责将凭据缓存到序列化文件 ,这些文件可以在%LOCALAPPDATA%\Microsoft\TokenBroker\Cache中找到。

好的,让我们看看这些TBRES文件 :

如果我们使用ProcMon,我们会看到这些文件确实在进程启动时被Office访问:

可以看到,这就是我们的身份验证信息存储的地方!查看JSON会发现一个IsProtected字段。在WinDBG中,我们将附加到Office,在CryptUnprotectData上添加断点并重新启动 。果然,我们发现base64解密数据的内容被解密了。

JSON文件中我们特别感兴趣的字段是ResponseBytes ,我添加了一个带有快速工具的repo,该工具可以解密这些文件 ,可以在这里找到。
在使用ProtectedData.Unprotect解密此数据后,我们看到了明文JWT。果然,解密它们会得到我们之前从内存中看到的相同信息 :

来自不同提供者和应用程序的其他令牌也存储在这些文件中,包括MSA令牌 ,这也是毫无价值的。
现在我们知道了,Windows和Office用于Live和Azure的认证和缓存会话的几种不同方法。
POC可以在https://github.com/xpn/WAMBam上找到。
本文翻译自 :https://blog.xpnsec.com/wam-bam/如若转载,请注明原文地址
Tags:
转载:欢迎各位朋友分享到网络,但转载请说明文章出处“信息技术视野”。http://www.bziz.cn/news/105e799887.html
相关文章
Gartner:生成式人工智能对中国CIO和安全团队的影响
网络安全ChatGPT的热烈炒作、广泛使用和快速蔓延提升了最终用户对LLM和GenAI的认识,引发了一波商业实验和AI初创企业的浪潮。2023年4月的Gartner网络研讨会发现,381名中国参会人员有70% ...
【网络安全】
阅读更多施耐德电气遭勒索软件攻击重创,TB级数据泄漏
网络安全近日,能源管理和自动化巨头施耐德电气遭受Cactus勒索软件攻击,导致公司数据大规模泄漏。据Bleepingcomputer报道,本次勒索软件攻击始于1月17日,攻击目标是施耐德的可持续发展业务部门, ...
【网络安全】
阅读更多20款“小而美”的免费网络安全工具推荐
网络安全在很多企业管理者的眼里,网络安全工作依然是一个成本中心,会增加内部的工作摩擦并降低业务效率。而事实上,在网络安全领域也有许多开源的安全工具和项目可供企业安全团队和分析师们免费使用。借助这些开源工具,企 ...
【网络安全】
阅读更多
热门文章
最新文章
友情链接
- 小米Note2(小米Note2在市场上受到广泛关注,销量持续飙升)
- 飞利浦面条机(轻松制作多种口感面条,让你爱上自制美食)
- HTC M8口袋模式如何开启
- 联想B41-80优盘安装系统教程(快速、简单地为联想B41-80电脑安装操作系统)
- 开博尔Q1(探索开博尔Q1的性能、安全和可靠性,让你爱上电动出行)
- 改变logo,创造独特品牌形象的教程(简单易学的Logo设计教程,助你打造独特品牌)
- 探索苹果7P10.33系统的卓越性能与特点(一探苹果7P10.33系统的强大功能和用户体验)
- 第七代i57500的卓越表现(一款出色的处理器推动电脑性能提升)
- 公牛LED灯泡的优势与特点(节能环保,持久耐用,高亮度可调节的智能照明选择)
- 索尼手提电脑大白菜重装系统教程(详细步骤教你轻松重装索尼手提电脑系统) 亿华云香港物理机b2b信息平台源码库云服务器网站建设企业服务器