成人免费xxxxx在线视频软件_久久精品久久久_亚洲国产精品久久久_天天色天天色_亚洲人成一区_欧美一级欧美三级在线观看

如何恢復(fù)網(wǎng)絡(luò)令牌,你學(xué)會了嗎?

安全 應(yīng)用安全
在這篇文章中,我將介紹我在逆轉(zhuǎn)Office的身份驗證機(jī)制時發(fā)現(xiàn)的兩個問題,并提供一些不需要刪除內(nèi)存的POC工具來幫助恢復(fù)存儲的令牌。

在這篇文章中,我將介紹我在逆轉(zhuǎn)Office的身份驗證機(jī)制時發(fā)現(xiàn)的兩個問題,并提供一些不需要刪除內(nèi)存的POC工具來幫助恢復(fù)存儲的令牌。

微軟賬戶服務(wù)

我必須承認(rèn),當(dāng)我第一次開始研究這個問題時,刪除我正在運行的Word進(jìn)程的內(nèi)存并沒有發(fā)現(xiàn)文檔簽名eyJ0eX。這是當(dāng)前工具用來識別活動令牌的主要方法,我在Windows登錄時使用Microsoft 365帳戶。

事實證明,Microsoft Account (MSA)的身份驗證令牌處理方式與通常的Azure AD SSO帳戶不同。

讓我們從查看經(jīng)過MSA驗證的Office會話開始,啟動Microsoft Office并查看加載的DLL。其中最突出的是MicrosoftAccountWAMExtension.dll。將這個DLL加載到Ghidra中,我們可以開始尋找為MSA帳戶生成身份驗證令牌的原因。

如果我們在這個DLL中尋找RPC調(diào)用,就可以看到一堆被定向到名為wlidsvc的服務(wù):

如何恢復(fù)網(wǎng)絡(luò)令牌

不幸的是,微軟并沒有為RPC調(diào)用此服務(wù)提供IDL(或者根本沒有提供很多信息),所以我們將不得不做一些逆向工程來解決這個問題。

讓我們將WinDBG附加到wlidsc并監(jiān)視正在進(jìn)行的RPC調(diào)用。在任何Office進(jìn)程中進(jìn)行身份驗證之后,我們看到第一個調(diào)用是RPC方法WLIDCCreateContext以創(chuàng)建上下文,然后是WLIDCAcquireTokensWithNGC,最后是一系列其他調(diào)用,我們將暫時忽略這些調(diào)用。

如果我們在后一種方法中添加一個斷點,那登錄到Office中的MSA帳戶會導(dǎo)致命中:

如何恢復(fù)網(wǎng)絡(luò)令牌

步進(jìn)式(Stepping )直到我們點擊ret并檢查填充的參數(shù),在參數(shù)12的內(nèi)存區(qū)域中會顯示一些有趣的東西。

如何恢復(fù)網(wǎng)絡(luò)令牌

對我來說,這確實是一個象征!如果我們打開像Fiddler這樣的代理,我們會看到它與Office訪問web服務(wù)時使用的身份驗證令牌格式相匹配:

如何恢復(fù)網(wǎng)絡(luò)令牌

那么,我們?nèi)绾螐奈覀冏约旱墓ぞ咧姓{(diào)用它呢?讓我們使用James Forshaw的NtObjectManager生成一個可以使用的存根。

如何恢復(fù)網(wǎng)絡(luò)令牌

生成的RPC存根根據(jù)Windows版本的不同而不同,這是毫無價值的,例如,在Windows 10中,我們發(fā)現(xiàn)字段計數(shù)在輸入結(jié)構(gòu)上發(fā)生了變化,因此,如果你收到可怕的(0x800706F7) - The stub received bad data. 錯誤,請多家留意。

使用RPC客戶端存根創(chuàng)建一個快速的C#應(yīng)用程序,我們將重播我們之前觀察到的入站RPC調(diào)用,并添加參數(shù),這將給我們提供如下內(nèi)容:

如何恢復(fù)網(wǎng)絡(luò)令牌

如果我們稱之為:

如何恢復(fù)網(wǎng)絡(luò)令牌

由于這是MSA身份驗證請求,我們將不得不使用Substrate等服務(wù)來訪問Microsoft 365服務(wù)。旋轉(zhuǎn)一個代理并在Office中導(dǎo)航是確定調(diào)用什么以及這些web服務(wù)采用什么參數(shù)的最佳方式。但你可以看到,passport令牌返回后,我們可以很好地進(jìn)行身份驗證和交互:

如何恢復(fù)網(wǎng)絡(luò)令牌

令牌緩存

現(xiàn)在我們已經(jīng)了解了如何恢復(fù)MSA,那么Azure AD呢?通過Lee Christensen的帖子知道,我們可以很容易地按需請求新令牌,但是我們在Office進(jìn)程中看到的緩存令牌被轉(zhuǎn)儲了,它們是如何在啟動時加載的呢?

讓我們提供一個新的主機(jī)并將我們的用戶帳戶與AzureAD相關(guān)聯(lián),然后登錄到Office,再嘗試找出令牌存儲的位置。

如何恢復(fù)網(wǎng)絡(luò)令牌

為了確保我們在正確的軌道上,讓我們從內(nèi)存中轉(zhuǎn)儲一些字符串,并確保eyJ0eX簽名存在。

如何恢復(fù)網(wǎng)絡(luò)令牌

我們再次深入搜索dll,但這次我們將重點關(guān)注Windows.Security.Authentication.Web.Core.dll。

這是一個WinRT庫,因此我們需要深入Ghidra了解正在發(fā)生的事情。

AddWebTokenResponseToCache方法如下:

如何恢復(fù)網(wǎng)絡(luò)令牌

如果我們進(jìn)一步研究,會發(fā)現(xiàn)此方法實際上負(fù)責(zé)將憑據(jù)緩存到序列化文件,這些文件可以在%LOCALAPPDATA%\Microsoft\TokenBroker\Cache中找到。

如何恢復(fù)網(wǎng)絡(luò)令牌

好的,讓我們看看這些TBRES文件:

如何恢復(fù)網(wǎng)絡(luò)令牌

如果我們使用ProcMon,我們會看到這些文件確實在進(jìn)程啟動時被Office訪問:

如何恢復(fù)網(wǎng)絡(luò)令牌

可以看到,這就是我們的身份驗證信息存儲的地方!查看JSON會發(fā)現(xiàn)一個IsProtected字段。在WinDBG中,我們將附加到Office,在CryptUnprotectData上添加斷點并重新啟動。果然,我們發(fā)現(xiàn)base64解密數(shù)據(jù)的內(nèi)容被解密了。

如何恢復(fù)網(wǎng)絡(luò)令牌

JSON文件中我們特別感興趣的字段是ResponseBytes,我添加了一個帶有快速工具的repo,該工具可以解密這些文件,可以在這里找到。

在使用ProtectedData.Unprotect解密此數(shù)據(jù)后,我們看到了明文JWT。果然,解密它們會得到我們之前從內(nèi)存中看到的相同信息:

如何恢復(fù)網(wǎng)絡(luò)令牌

來自不同提供者和應(yīng)用程序的其他令牌也存儲在這些文件中,包括MSA令牌,這也是毫無價值的。

現(xiàn)在我們知道了,Windows和Office用于Live和Azure的認(rèn)證和緩存會話的幾種不同方法。

POC可以在https://github.com/xpn/WAMBam上找到。

本文翻譯自:https://blog.xpnsec.com/wam-bam/如若轉(zhuǎn)載,請注明原文地址

責(zé)任編輯:武曉燕 來源: 嘶吼網(wǎng)
相關(guān)推薦

2023-08-01 12:51:18

WebGPT機(jī)器學(xué)習(xí)模型

2024-01-02 12:05:26

Java并發(fā)編程

2024-09-30 09:05:46

Linux網(wǎng)絡(luò)延遲

2024-01-19 08:25:38

死鎖Java通信

2024-02-04 00:00:00

Effect數(shù)據(jù)組件

2023-07-26 13:11:21

ChatGPT平臺工具

2023-01-10 08:43:15

定義DDD架構(gòu)

2022-09-22 12:03:14

網(wǎng)絡(luò)安全事件

2024-05-29 09:20:41

2021-11-26 11:30:07

身高重建隊列

2024-08-21 08:27:30

擴(kuò)展數(shù)據(jù)庫服務(wù)器

2023-09-12 07:26:46

2023-04-26 00:41:36

A/B測試郵件數(shù)量

2024-08-09 08:17:07

SSH服務(wù)器架構(gòu)

2024-03-06 08:28:16

設(shè)計模式Java

2022-06-16 07:50:35

數(shù)據(jù)結(jié)構(gòu)鏈表

2022-12-06 07:53:33

MySQL索引B+樹

2023-01-31 08:02:18

2023-10-06 14:49:21

SentinelHystrixtimeout

2022-07-13 08:16:49

RocketMQRPC日志
點贊
收藏

51CTO技術(shù)棧公眾號

主站蜘蛛池模板: 国产欧美日韩综合精品一区二区 | 天堂在线www | 精品久久久网站 | 国产精品一区二区av | 午夜三区| 在线播放国产一区二区三区 | 国产精品色一区二区三区 | 中文字幕 亚洲一区 | 精品美女| 四虎成人在线播放 | 欧美色综合一区二区三区 | 538在线精品 | 亚洲欧美另类在线 | 天天天堂 | 免费在线观看91 | 国产一级免费视频 | 午夜视频一区二区 | 99精品欧美一区二区三区 | 国产黄色在线观看 | 999免费网站 | 亚洲欧美国产一区二区三区 | 成人精品一区二区户外勾搭野战 | 中文av在线播放 | 日本a级大片 | 国产一区二区三区四区五区加勒比 | 精品成人69xx.xyz | 日韩视频专区 | 黄色毛片一级 | 国产精品一区一区三区 | 亚洲国产精品99久久久久久久久 | 国产第一亚洲 | 亚洲精品视频在线 | 日韩精品一区二区三区在线播放 | 久久精品综合 | 欧美一区二区三区的 | 欧美亚洲一级 | 亚州一区二区三区 | 亚洲国产精品一区 | 国产三级 | 成年无码av片在线 | 国产目拍亚洲精品99久久精品 |