隨著生產(chǎn)科技的快速發(fā)展、計(jì)算能力的不斷提高,以分布式、虛擬化、云計(jì)算為核心技術(shù)的云平臺(tái)及云服務(wù)器服務(wù)ECS、對(duì)象存儲(chǔ)服務(wù)OSS、內(nèi)容分發(fā)服務(wù)CDN等各類衍生服務(wù)飛速興起。云平臺(tái)使用基于互聯(lián)網(wǎng)的云計(jì)算技術(shù)為用戶提供虛擬信息技術(shù)服務(wù),其規(guī)模經(jīng)濟(jì)、快速供應(yīng)、彈性服務(wù)等特點(diǎn)讓用戶能夠以低廉的價(jià)格享受優(yōu)質(zhì)計(jì)算能力等虛擬資源服務(wù),從而提高了企業(yè)和個(gè)人信息的使用效益。
在新冠肺炎的影響下,遠(yuǎn)程辦公需求激增,這也直接刺激了云計(jì)算行業(yè)的發(fā)展。根據(jù)Flexera公司的云計(jì)算趨勢(shì)報(bào)告,20%的企業(yè)每年在公有云上花費(fèi)超過1200萬美元,59%的企業(yè)由于疫情影響,對(duì)云服務(wù)的使用需求超過了預(yù)計(jì)。而微軟推出的Azure云平臺(tái)更是被廣泛采用,其企業(yè)普及率目前已經(jīng)達(dá)到了69%,僅次于亞馬遜的AWS平臺(tái)。
隨著云上解決方案被全球企業(yè)逐步采用,其所具有的分布式、虛擬化等技術(shù)特性和高度網(wǎng)絡(luò)依賴性也帶來了網(wǎng)絡(luò)和數(shù)據(jù)方面新的安全風(fēng)險(xiǎn),數(shù)據(jù)泄漏、非法濫用、針對(duì)服務(wù)和應(yīng)用漏洞的攻擊等問題層出不窮,在此背景下云平臺(tái)的安全研究顯得尤為重要。
01、Azure云平臺(tái)介紹
1.1 Azure的主要功能
無論是傳統(tǒng)的虛擬化、存儲(chǔ)等功能,還是前沿的區(qū)塊鏈、IoT、AI領(lǐng)域,Microsoft Azure都有較為完備的解決方案。目前,Azure平臺(tái)為用戶提供了豐富的服務(wù)種類,主要包括:
(1)計(jì)算服務(wù):虛擬機(jī)服務(wù)、桌面虛擬化服務(wù)、容器服務(wù)等。
(2)應(yīng)用服務(wù):支持Web和移動(dòng)應(yīng)用的App服務(wù)、Serverless的Logic App服務(wù)、支持大型應(yīng)用的App Fabric等。
(3)存儲(chǔ)服務(wù):支持四種基本存儲(chǔ)類型的Azure Storage服務(wù)和支持Redis、SQL Server等多種數(shù)據(jù)庫種類的數(shù)據(jù)庫服務(wù)。
(4)分析服務(wù):數(shù)據(jù)獲取(Event Hub、Data Factory、Stream Analytics等)、數(shù)據(jù)分析(HDInsight、Machine Learning等)和數(shù)據(jù)存儲(chǔ)(Data Lake)。
(5)網(wǎng)絡(luò)服務(wù):VPN網(wǎng)關(guān)、應(yīng)用程序網(wǎng)關(guān)、CDN、防火墻等。
(6)身份標(biāo)識(shí):Azure AD、Azure AD外部標(biāo)識(shí)等。
(7)管理服務(wù):Key Vault憑據(jù)管理器、自動(dòng)化服務(wù)、Security Center等。
1.2 Azure的資源管理器模式
早期Azure采用經(jīng)典模型管理云端資產(chǎn),在此模型中資源彼此獨(dú)立,因此在管理同一個(gè)解決方案時(shí)需要手動(dòng)將資源組織到一起。
從2014年起,Azure引入了資源管理器模型,該模型通過“管理組、訂閱、資源組和資源”四種范圍管理了彼此有關(guān)聯(lián)的資產(chǎn),通過資源管理模板優(yōu)化了解決方案的基礎(chǔ)結(jié)構(gòu),通過資源間的依賴關(guān)系確保了資源部署的正確順序,通過基于角色的訪問控制(Role-Based Access Control,RBAC)限制了資源的訪問權(quán)限,有效改進(jìn)了Azure云端資產(chǎn)的管理效率。
1.3 Azure的訪問控制
為了方便管理云上資源,Azure采用了基于角色的訪問控制(RBAC)。Azure RBAC的核心思想在于角色的分配,其中包含了三個(gè)要素:安全主體(Security Principal)、角色定義(Role Definition)和對(duì)象范圍(Scope),即安全主體在訪問某個(gè)范圍的對(duì)象時(shí)具備了哪些角色。
安全主體表示發(fā)起資源訪問請(qǐng)求的對(duì)象,可以是用戶、組、服務(wù)主體或托管標(biāo)識(shí)。用戶表示Azure AD中的一個(gè)用戶賬戶;組代表一組用戶,當(dāng)給用戶組分配角色時(shí),組中每個(gè)用戶都將繼承得到該角色;服務(wù)主體是應(yīng)用程序或服務(wù)發(fā)起資源訪問時(shí)所使用的賬戶;托管標(biāo)識(shí)用于云應(yīng)用程序向Azure服務(wù)進(jìn)行身份認(rèn)證。
角色定義用于列出某個(gè)安全主體所擁有的權(quán)限。Azure內(nèi)置了多種角色,最基礎(chǔ)的四種為:所有者(Owner)、參與者(Contributer)、讀取者(Reader)和用戶訪問管理員(User-access-administrator)。所有者具有所管理資源的完全訪問權(quán)限,參與者不擁有分配角色的權(quán)限,讀取者可以查看資源但不能修改,用戶訪問管理員僅管理其他用戶的訪問權(quán)限。除了內(nèi)置角色外,Azure還允許用戶創(chuàng)建自定義角色。
對(duì)象范圍采用父子關(guān)系結(jié)構(gòu),包括管理組、訂閱、資源組和資源四種范圍,用于定義所分配對(duì)象的范圍。父級(jí)別范圍分配的角色也會(huì)順次繼承給子范圍,同一范圍內(nèi)的角色采取疊加的計(jì)算方法。
02、信息收集
在滲透前期,信息收集是紅隊(duì)人員最常采用的手段之一。在對(duì)目標(biāo)掌握線索較少的情況下,開展全面、準(zhǔn)確的公開資產(chǎn)掃描往往能幫助紅隊(duì)建立對(duì)目標(biāo)資產(chǎn)規(guī)模、業(yè)務(wù)類型等最直觀的認(rèn)識(shí)。在了解目標(biāo)大致的服務(wù)類型后,針對(duì)單個(gè)服務(wù)或功能可以進(jìn)行進(jìn)一步的細(xì)化掃描,從而收集服務(wù)版本、已注冊(cè)賬戶、敏感文件泄露或可利用的公開漏洞等信息,以建立目標(biāo)的資產(chǎn)地圖,并確立大致的攻擊路徑。
2.1域名、服務(wù)信息收集
為了方便管理,Azure云平臺(tái)為常用的相關(guān)服務(wù)提供了用于便捷訪問的子域名。當(dāng)用戶在Azure Portal添加服務(wù)時(shí),Azure會(huì)自動(dòng)分配一個(gè)相應(yīng)的子域名用于服務(wù)的訪問或管理。目前已整理的Azure專用子域名和服務(wù)的對(duì)應(yīng)關(guān)系如表1所示。
表1 Azure平臺(tái)子域名及對(duì)應(yīng)服務(wù)表
例如,想探測(cè)Testdance公司在Azure平臺(tái)托管了哪些服務(wù),則需要在上述子域名前加上該公司的專屬域名。若testdance.file.core.windows.net域名存在,則代表有用戶申請(qǐng)創(chuàng)建了名為testdance的文件存儲(chǔ)服務(wù),且有可能歸屬該公司。
在確認(rèn)了目標(biāo)所使用的服務(wù)類型后,有以下幾種思路可開展進(jìn)一步利用。
(1)攻擊Web應(yīng)用服務(wù)。如前所述,azurewebsites.net子域指向目標(biāo)的Web站點(diǎn),安全人員可以利用可能泄露的敏感信息或已知的公開漏洞對(duì)此服務(wù)開展常規(guī)內(nèi)容的滲透測(cè)試。
(2)查看數(shù)據(jù)庫服務(wù)。在管理員配置不當(dāng)?shù)那闆r下,目標(biāo)的數(shù)據(jù)庫服務(wù)很可能沒有對(duì)訪問IP采取較嚴(yán)的訪問控制,導(dǎo)致數(shù)據(jù)庫暴露在公網(wǎng)上,若其中恰好保存了一些登錄信息或身份憑證,就很可能成為紅隊(duì)攻下其他服務(wù)的敲門磚。
(3)子域名接管攻擊。由于Azure的Web服務(wù)子域名是可任意申請(qǐng)且唯一的,紅隊(duì)人員可以時(shí)刻關(guān)注目標(biāo)子域名的過期情況,一旦發(fā)現(xiàn)有子域名指向失效的Azure域名,就可以主動(dòng)重新申請(qǐng)失效域名,從而接管目標(biāo)的一個(gè)有效子域名。
2.2文件存儲(chǔ)資源信息收集
Azure平臺(tái)中有四種存儲(chǔ)類型,分別是文件存儲(chǔ)、非結(jié)構(gòu)化Blob數(shù)據(jù)存儲(chǔ)、消息隊(duì)列Queue數(shù)據(jù)存儲(chǔ)和NoSql數(shù)據(jù)存儲(chǔ),四種存儲(chǔ)方式由唯一的命名空間——Storage Account(存儲(chǔ)賬戶)確定。每個(gè)存儲(chǔ)賬戶在core.windows.net中擁有子域名,且根據(jù)存儲(chǔ)的數(shù)據(jù)類型不同,相應(yīng)的唯一子域名也不同。例如,目標(biāo)擁有名為test的存儲(chǔ)賬戶,其用于存儲(chǔ)Blob類型數(shù)據(jù)的訪問接口為test.blob.core.windows.net。
Blob數(shù)據(jù)存儲(chǔ)服務(wù)常用于保存圖片、影音等多媒體數(shù)據(jù),因此往往是可以公開訪問的。Blob數(shù)據(jù)存儲(chǔ)的上級(jí)結(jié)構(gòu)稱為Container(容器),其本質(zhì)和文件夾類似。容器有三種訪問級(jí)別,當(dāng)某個(gè)容器被賦予名為“Container”權(quán)限時(shí),其中保存的所有文件不僅可以被訪問,還可以被枚舉。因此,若容器中保存了敏感文件,而訪問級(jí)別又被錯(cuò)誤配置為“Container”,則其中的敏感文件就會(huì)面臨被枚舉和泄露的風(fēng)險(xiǎn)。
03、數(shù)據(jù)獲取
在獲取了一定的賬戶權(quán)限后,利用已有權(quán)限開展數(shù)據(jù)獲取工作是尤為重要的步驟,通過Portal進(jìn)行交互操作、使用Azure Powershell命令集或?qū)Υ鎯?chǔ)介質(zhì)和網(wǎng)絡(luò)傳輸流量進(jìn)行取證等手段往往能搜集到應(yīng)用于Azure平臺(tái)各類服務(wù)和應(yīng)用的配置文件、登錄證書乃至用戶憑據(jù)。本節(jié)介紹了Azure平臺(tái)常見的憑據(jù)收集手段,在獲得了這些信息的條件下,就可以進(jìn)一步擴(kuò)展權(quán)限,加大對(duì)目標(biāo)系統(tǒng)的了解和控制程度,從而為接下來的滲透提供便利。
3.1 Azure存儲(chǔ)服務(wù)
前文介紹了Azure存儲(chǔ)服務(wù)提供的四種存儲(chǔ)類型。常見的訪問存儲(chǔ)服務(wù)的方式有兩種,除了使用Azure Portal進(jìn)行交互式操作,還可以針對(duì)四種不同的存儲(chǔ)方式使用其各自的REST API來進(jìn)行操作。
存儲(chǔ)訪問密鑰被用于請(qǐng)求Azure提供的存儲(chǔ)REST API,并可以獲取存儲(chǔ)服務(wù)中的各類數(shù)據(jù)。這種訪問方法區(qū)別于Azure Portal的操作,既可以繞過MFA認(rèn)證,也可以獲取對(duì)存儲(chǔ)賬戶的完全訪問權(quán)限,是較為理想的訪問手段。每個(gè)存儲(chǔ)賬戶都分配有兩對(duì)密鑰/連接字符串可用于存儲(chǔ)數(shù)據(jù)的完全訪問,當(dāng)重新生成其中一組密鑰時(shí),用戶程序可以使用另一組來保持和存儲(chǔ)賬戶的持續(xù)連接。該密鑰是由平臺(tái)自動(dòng)生成的64字節(jié)數(shù)據(jù),并經(jīng)過Base64編碼,因此很容易在開發(fā)人員的項(xiàng)目代碼或配置文件中進(jìn)行識(shí)別。由于存儲(chǔ)訪問密鑰默認(rèn)不會(huì)自動(dòng)過期,因此一旦被攻擊人員掌握,就很可能造成較為嚴(yán)重且持續(xù)的數(shù)據(jù)泄漏,從而危害云平臺(tái)其他服務(wù)的安全性。
3.2 Key Vault密鑰管理器
Key Vault是Azure提供的一項(xiàng)密鑰管理服務(wù),可用于各類密鑰、密碼和證書等憑證的安全存取。如果當(dāng)前用戶具有足夠權(quán)限,那么使用Key Vault來收集憑據(jù)信息是最為直接和便捷的方法。除了使用portal進(jìn)行管理,還可以使用Azure Powershell所提供的Get-AzureKeyVaultKey和Get-AzureKeyVaultSecret等方法查詢當(dāng)前Key Vault中存儲(chǔ)的單個(gè)憑證信息,并且可以直接編寫腳本批量導(dǎo)出明文密碼,嘗試使用這些密碼訪問云中的其他服務(wù)。
3.3應(yīng)用程序服務(wù)
App Service是Azure用于快速部署Web應(yīng)用的一項(xiàng)服務(wù),其支持構(gòu)建云端原生Web應(yīng)用和遠(yuǎn)程遷移兩種部署方式。用戶可以使用應(yīng)用服務(wù)快速管理Web應(yīng)用程序,并通過“應(yīng)用程序服務(wù)配置”來為Web應(yīng)用配置和推送諸如數(shù)據(jù)庫等服務(wù)的密碼。因此,在獲取了某個(gè)應(yīng)用程序參與者權(quán)限的情況下,可以利用“應(yīng)用程序服務(wù)配置”這項(xiàng)功能來收集Web應(yīng)用中的密碼。若要使用Portal來獲取該配置,可以在門戶頁面“App Service”服務(wù)的“獲取發(fā)布配置文件”處下載到。Azure Powershell中獲取App配置文件對(duì)應(yīng)的命令是Get-AzureRmWebAppPublishingProfile,若要批量導(dǎo)出所有應(yīng)用的配置文件,可以配合Get-AzureRmWebApp和Get-AzureRmResource兩個(gè)命令編寫用于遍歷查詢的腳本來實(shí)現(xiàn)。
3.4自動(dòng)化服務(wù)
Azure自動(dòng)化服務(wù)為用戶提供了定制化的管理功能,用戶可以通過部署Powershell或Python腳本來對(duì)云端資源進(jìn)行管理,常見的工作場(chǎng)景包括虛擬機(jī)資源配置、定時(shí)云端資產(chǎn)檢索和篩查、部署合規(guī)性檢查以及設(shè)置安全保護(hù)觸發(fā)條件等。Runbook是Azure自動(dòng)化的核心功能,其本質(zhì)是一段需要部署在Azure平臺(tái)上運(yùn)行的計(jì)劃任務(wù)腳本,用戶可以通過制定腳本內(nèi)容、輸入輸出格式、運(yùn)行間隔和觸發(fā)條件等參數(shù)來實(shí)現(xiàn)不同的功能。
由于自動(dòng)化服務(wù)常被用于云端資產(chǎn)的管理,因此其中保存的密碼、證書等憑據(jù)也具有較高的價(jià)值。自動(dòng)化賬戶中的憑據(jù)資產(chǎn)一旦添加,就只能查看名稱、介紹等基礎(chǔ)信息,要想查詢其明文密碼等詳細(xì)內(nèi)容,需要結(jié)合Get-AzAutomationCredential等Powershell命令并編寫runbook腳本進(jìn)行查詢和導(dǎo)出。由于在申請(qǐng)新的自動(dòng)化賬戶時(shí),Azure會(huì)默認(rèn)創(chuàng)建三個(gè)新手引導(dǎo)性質(zhì)的runbook腳本,因此在遠(yuǎn)程部署runbook腳本時(shí),可以將腳本名修改為“AzureAutomationTutorial”等類似的名稱,從而達(dá)到混淆視聽的目的。
04、權(quán)限提升
本節(jié)將介紹三種基于Azure平臺(tái)的權(quán)限提升思路,分別涉及自動(dòng)化、Azure存儲(chǔ)和Cloud Shell三種服務(wù)。在大多數(shù)場(chǎng)景下,滲透往往是從一個(gè)低級(jí)別的漏洞,或是低權(quán)限賬戶展開的,在獲取到一定的普通權(quán)限后,權(quán)限提升是需要嘗試的路徑之一,若平臺(tái)管理員沒有配置好資源的權(quán)限設(shè)置,就很可能為他人留下可乘之機(jī)。
4.1 runbook腳本提權(quán)
如前文所述,Key Vualt是Azure平臺(tái)極為重要的憑據(jù)管理服務(wù),若能導(dǎo)出其中信息,將對(duì)后續(xù)滲透提供極大的便利。而在實(shí)戰(zhàn)環(huán)境中,管理員很可能對(duì)用戶賬戶做了訪問控制,如紅隊(duì)人員可能控制了某個(gè)參與者賬戶A,但該A賬戶被限制了對(duì)Key Vault的訪問權(quán)限。由于缺少角色分配權(quán),該賬戶無法給自己授予對(duì)Key Vault的訪問權(quán)限。但如果管理員錯(cuò)誤地配置了權(quán)限,將該A賬戶添加為某個(gè)可以訪問Key Vault的自動(dòng)化賬戶的參與者,則紅隊(duì)人員就可以利用該自動(dòng)化賬戶創(chuàng)建或修改一個(gè)代理Runbook腳本并運(yùn)行,用間接的方法提升賬戶A的權(quán)限,從而批量導(dǎo)出Key Vault存儲(chǔ)的憑據(jù)信息。
4.2從VHD到遠(yuǎn)程登錄
在獲得存儲(chǔ)賬戶密鑰的前提下。紅隊(duì)人員可以通過獲取未被全盤加密的VHD副本,利用相關(guān)取證手段獲得虛擬硬盤中存儲(chǔ)的憑據(jù)或證書,并進(jìn)一步控制虛擬機(jī)。需要注意的是,若虛擬機(jī)正在運(yùn)行,則虛擬硬盤可能處于占用狀態(tài),此時(shí)需要首先使用Azure的快照API為虛擬硬盤創(chuàng)建一個(gè)副本文件。在獲取到虛擬硬盤的副本后,可以獲取硬盤中的SAM和SYSTEM文件用于本地hash的導(dǎo)出。若通過hash得到了虛擬機(jī)的明文密碼,則可以嘗試連接運(yùn)行中的虛擬機(jī)。
獲取虛擬機(jī)連接地址的方式有兩種:一是直接從虛擬硬盤的名稱中提取,如下載的虛擬硬盤文件名為testvolume20200101000001.vhd,則虛擬機(jī)的主機(jī)名稱通常為testvolume.cloudapp.net;二是直接通過虛擬硬盤副本中保存的注冊(cè)表鍵值獲取,虛擬機(jī)的主機(jī)名通常位于注冊(cè)表的computerName鍵下。獲得虛擬機(jī)的主機(jī)名稱后,即可使用憑據(jù)連接虛擬機(jī),并獲得進(jìn)一步的控制權(quán)限。
4.3 Azure Cloud Shell提權(quán)
Azure Cloud Shell服務(wù)是Azure Portal提供的命令行工具,可以幫助用戶通過瀏覽器快捷地操作云端資源,在首次啟用該服務(wù)時(shí),Azure會(huì)創(chuàng)建一個(gè)虛擬環(huán)境,并新建一個(gè)專屬于該用戶的存儲(chǔ)賬戶用于容器鏡像的存儲(chǔ)。若管理員為某個(gè)賬戶配置了對(duì)存儲(chǔ)服務(wù)的參與者權(quán)限,則該賬戶就可讀取存儲(chǔ)服務(wù)下的所有存儲(chǔ)賬戶,因此該賬戶也擁有了對(duì)該訂閱下所有其他用戶Cloud Shell鏡像存儲(chǔ)的訪問和修改權(quán)限。若要查找其他用戶可能存在的信息泄漏,可以讀取他人鏡像文件下的.bash_history和ConsoleHost_history.txt等文件內(nèi)容;若要獲得其他用戶Cloud Shell的執(zhí)行權(quán)限,則可以通過修改.bashrc或Microsoft.Powershell_ profile.ps1等開機(jī)啟動(dòng)腳本中的代碼來實(shí)現(xiàn)。
05、權(quán)限維持
本節(jié)將介紹兩種基于Azure云平臺(tái)的權(quán)限維持手段。在獲取目標(biāo)系統(tǒng)一定的權(quán)限以后,很可能因?yàn)槟承┕艉圹E被發(fā)現(xiàn)或?qū)Ψ綗o意中進(jìn)行了修改密碼、更新系統(tǒng)等操作而丟失已有的攻擊成果,而防止這種情況發(fā)生的最好辦法即是把握攻守中的主導(dǎo)權(quán),采取一些權(quán)限維持手段來加強(qiáng)控制。
5.1登錄繞過
在部分場(chǎng)景下,只要獲得了目標(biāo)賬戶的權(quán)限,或者用戶名和明文密碼,就可以維持長(zhǎng)時(shí)間的控制。但隨著安全防護(hù)手段的升級(jí),目前很多廠商都不再局限于僅驗(yàn)證用戶名和密碼,如Azure Portal就默認(rèn)開啟了MFA功能,若要登錄門戶獲取用戶權(quán)限,則需要至少使用短信、郵箱、Windows Hello之一的方式進(jìn)行二次認(rèn)證。
顯而易見的是,在有MFA的前提下想要直接通過Web交互來獲取賬戶權(quán)限是較不現(xiàn)實(shí)的,但Azure除了Web端以外,還支持了另一種基于Token的身份認(rèn)證方式。為了便于開發(fā)人員的測(cè)試和管理,Azure提供了Azure Powershell工具集用于直接從命令行管理Azure資產(chǎn)。當(dāng)用戶在命令行中使用Connect-AzAccount登錄賬號(hào)以獲取相應(yīng)權(quán)限時(shí),該工具集會(huì)自動(dòng)將認(rèn)證成功賬戶的上下文信息保存到$HOME/.Azure/AzureRmContext.json文件中,該文件中的TokenCache字段是一段經(jīng)過Base64編碼的用戶憑據(jù)。將這段憑據(jù)保存到文件中,并調(diào)用Import-AzureRmContext方法導(dǎo)入本地Powershell環(huán)境,即可繞過MFA直接獲取目標(biāo)賬戶的操作權(quán)限。
另一種繞過登錄的手段需要利用自動(dòng)化賬戶。前文介紹了如何利用自動(dòng)化賬戶的runbook功能導(dǎo)出用戶憑據(jù)的明文密碼,而runbook還支持另一類憑據(jù)利用方式,即RunAsConnection和RunAsCertificate,本節(jié)主要介紹后者的利用。在自動(dòng)化服務(wù)中添加新的RunAs證書資源時(shí),Azure會(huì)自動(dòng)為其創(chuàng)建一個(gè)服務(wù)主體賬戶,并賦予其Azure AD的參與者權(quán)限。由于Azure支持用證書進(jìn)行基于服務(wù)主體的身份認(rèn)證,因此紅隊(duì)人員可以利用Get-AutomationCertificate等方法導(dǎo)出已存在證書的相關(guān)信息,并在必要的情況下使用Import-PfxCertificate方法和ServicePrincipal選項(xiàng)進(jìn)行身份認(rèn)證,從而達(dá)到繞過用戶名密碼獲取訪問權(quán)限的目的。
5.2后門部署
創(chuàng)建后門權(quán)限是較為常用的權(quán)限維持手段之一。后門則要具備一定的隱蔽性和潛伏性,WebHook機(jī)制正是Azure平臺(tái)中具備此條件的一項(xiàng)功能,該功能可以創(chuàng)建一個(gè)用于接受POST請(qǐng)求的Url地址,并將該地址鏈接到某個(gè)runbook腳本上。紅隊(duì)人員可以創(chuàng)建用于添加新用戶的后門Runbook腳本,并使用WebHook機(jī)制獲取綁定的Url。在當(dāng)前權(quán)限丟失且需要重新奪取權(quán)限時(shí),只需向該Url發(fā)送一個(gè)POST包,即可觸發(fā)后門,令runbook腳本自動(dòng)運(yùn)行。
06、結(jié)語
隨著基礎(chǔ)設(shè)施的進(jìn)一步完善,云平臺(tái)解決方案逐漸成為用戶更加傾心的選擇。本文介紹了Azure云平臺(tái)的主要功能、管理模式和訪問控制等基本信息,并嘗試將常見的Azure云平臺(tái)滲透技術(shù)按照信息收集、數(shù)據(jù)獲取、權(quán)限提升以及權(quán)限維持這四個(gè)滲透測(cè)試的步驟進(jìn)行總結(jié)和分類,其中涉及了Azure的自動(dòng)化、存儲(chǔ)、Key Vault和App Service等一些服務(wù)。雖然Azure平臺(tái)的滲透技術(shù)已受到了部分安全研究人員的關(guān)注,但由于云平臺(tái)安全研究開始時(shí)間較晚,且Azure平臺(tái)各類服務(wù)更新快、關(guān)聯(lián)多、學(xué)習(xí)成本高,因此目前該領(lǐng)域還缺乏較為完備的理論指導(dǎo),而Azure平臺(tái)滲透技術(shù)體系的即時(shí)性、完整性和系統(tǒng)性也仍需進(jìn)一步的完善。