AK/SK認證
云主機通過使用Access Key Id / Secret Access Key加密的方法來驗證某個請求的發送者身份。Access Key Id(AK)用于標示用戶,Secret Access Key(SK)是用戶用于加密認證字符串和云廠商用來驗證認證字符串的密鑰,其中SK必須保密。 AK/SK原理使用對稱加解密。
云主機接收到用戶的請求后,系統將使用AK對應的相同的SK和同樣的認證機制生成認證字符串,并與用戶請求中包含的認證字符串進行比對。如果認證字符串相同,系統認為用戶擁有指定的操作權限,并執行相關操作;如果認證字符串不同,系統將忽略該操作并返回錯誤碼。
AK/SK泄露
大部分的云服務器都支持AK/SK都認證方式,用于API調用等功能,由于開發的不規范,以及一些其它漏洞,會導致AK/SK泄露。在滲透中,如果發現目標泄露了AK/SK,可以通過AK/SK直接攻擊該服務器。
AK/SK利用
行云管家直接大部分主流的云廠商。
https://yun.cloudbility.com/
選擇對應廠商,通過AK/SK憑證對主機進行綁定。
AK/SK驗證通過,選擇綁定的云主機。
綁定成功,可以直接重置操作系統登錄密碼。(取得客戶授權后操作)
實戰利用
阿里云AK/SK泄露
如下,目標使用了spring boot 2.0框架,開放了env端點。
存在阿里云aliyun.accesskey和aliyun.secretKey屬性,其對應的value進行了脫敏處理。
嘗試獲取脫敏的屬性明文。
需要補課的參考我之前的文章。
http://www.lxweimin.com/p/ae4be3af5231
目標網站存在/actuator/jolokia 接口且使用了 jolokia-core 依賴,直接嘗試使用第一種方法獲取明文。(大多數情況通過下載應用實時的 JVM 堆信息,獲取明文)
修改arguments為想要獲取的屬性值。
成功獲取到aliyun.accesskey、aliyun.secretKey的明文信息。
使用行云管家輸入獲取的AK/SK綁定主機。可以查看到主機的實例ID,所屬地區等信息。
最終目的是獲取服務器權限,由于沒有取得客戶允許,不能隨意重置操作系統密碼。
查看阿里云官方的api使用。
https://api.aliyun.com/#/?product=Ecs
在左上方搜索框,搜索相關命令執行的操作方法。
RunCommand為執行命令。
CreateCommand是創建命令和InvokeCommand調用命令一起使用。
首先嘗試直接執行命令:
選擇熟悉的腳本語言,本次使用python
RegionId為地域ID,通過行云管家獲取到
RunShellScript:適用于Linux實例Shell腳本。
CommandContent:對bash反彈shell命令進行Base64編碼
InstanceId:通過行云管家獲取到實例ID
正確輸入后,可以調試SDK代碼執行腳本,也可以把腳本內容粘貼到本地執行。
執行成功后遠程vps沒有接收到反彈的shell,原因未知。
查看其他師傅的利用文章使用的CreateCommand創建命令和InvokeCommand調用命令進行反彈shell操作。
首先使用CreateCommand創建命令,輸入對應信息。
執行腳本,獲取到返回的CommandId
然后使用InvokeCommand調用命令,輸入得到的CommandId
執行腳本
vps成功接收到反彈的shell
工具自動化
可以直接使用網上自動化的利用工具,簡單便捷。
https://github.com/iiiusky/alicloud-tools
指定AK/SK 獲取主機列表
./AliCloud-Tools -a xxx -s xxx ecs --list
指定AK/SK,實例ID,和執行的命令。
./AliCloud-Tools -a xxx -s xxx ecs exec -I xxx -c "whoami"
成功接收到反彈的shell。
圖形化工具
https://github.com/mrknow001/aliyun-accesskey-Tools/releases/tag/1.0
其它云主機AK/SK利用
網上的大多數文章都是對阿里云的AK/SK進行利用。
然而實際情況中可能遇到其它的云主機AK/SK泄露。
如:
亞馬遜云
七牛云
在行云管家列表內的可以直接綁定去管理。
https://yun.cloudbility.com/
不在列表內的,需要去查看官方的API文檔,然后根據文檔進行進一步的利用。
以七牛云舉例,其官方開發者中心描述了如何使用AK/SK對服務器進行管理。
總結
多看官方的開發者文檔
參考鏈接:
https://www.freebuf.com/articles/web/255717.html
http://r3start.net/index.php/2020/10/23/738