云上攻防--云服务&&对象存储(域名接管)&&弹性计算(元数据泄露)
云上攻防--云服務&&對象存儲(域名接管)&&彈性計算(元數據泄露)
對象存儲
各個廠商對于對象存儲的叫法不同,但是除了叫法基本沒有其他區別。
- 對象存儲各大云名詞:
阿里云:OSS 騰訊云:COS 華為云:OBS
谷歌云:GCS 微軟云:Blob 亞馬遜云:S3
對于對象存儲的漏洞或者說錯誤配置點如下
權限配置錯誤
- 權限Bucket授權策略:設置ListObject顯示完整結構(類似于目錄遍歷)
- 權限Bucket讀寫權限:公共讀寫直接PUT文件任意上傳,由于管理員配置對象存儲時錯誤配置公共讀寫權限,使得任何人都可以進行寫入,通過PUT方法即可任意上傳文件。
域名接管
對象存儲可以配置域名映射,接管域名即是Bucket存儲桶綁定域名后,訪問域名即訪問對象存儲中的存儲桶,當存儲桶被刪除而域名解析未刪除,訪問域名時候顯示關鍵信息NoSuchBucket時可以嘗試接管。
接管流程:
1. 確認域名綁定存儲桶(通過ping命令出現對象存儲解析地址)
2. 通過域名訪問存儲桶提示NoSuchBucket(沒有這樣的桶)
3. 通過對象存儲地址信息推斷出存儲桶名稱、對象存儲廠商、云存儲所在城市
4. 去對應得廠商創建對應城市對應名稱的存儲桶
5. 再次訪問域名即可訪問到所創建的存儲桶
當Bucket顯示NoSuchBucket說明是可以接管的,如果顯示AccessDenied則不行。
參考文章
阿里云 OSS 對象存儲攻防
AK/SK泄漏:
通過泄露的AK/SK進行接管
- APP逆向源代碼
- 小程序反編譯
- JS代碼泄露
- 代碼托管平臺泄露
- 接口泄露
得到AK/SK之后可以利用云服務工具直接連接相應服務進行任意操作,例如各云廠商的官方工具、CF利用工具等。
云業務 AccessKey 標識特征整理
彈性計算
元數據泄露
- 元數據
關于什么是元數據以下引用阿里云對于元數據的解釋:
實例元數據(metadata)包含了彈性計算云服務器實例在阿里云系統中的信息,您可以在運行中的實例內方便地查看實例元數據,并基于實例元數據配置或管理實例。(基本信息:實例ID、IP地址、網卡MAC地址、操作系統類型等信息。實例標識包括實例標識文檔和實例標識簽名,所有信息均實時生成,常用于快速辨別實例身份。)
總的來說,元數據就是存儲了一些服務器的關鍵信息。每個廠商的服務器都存在元數據,但是各個廠商的獲取元數據的地址不同。
各廠商元數據獲取地址:
阿里云元數據地址:http://100.100.100.200/latest/meta-data/
騰訊云元數據地址:http://metadata.tencentyun.com/latest/meta-data/
華為云元數據地址:http://169.254.169.254/openstack/latest/meta_data.json
亞馬遜云元數據地址:http://169.254.169.254/latest/meta-data/
微軟云元數據地址:http://169.254.169.254/
谷歌云元數據地址:http://metadata.google.internal/
具體查詢方式可以查詢云廠商官方說明
查詢樣式如下圖:
- 訪問控制
訪問控制是云廠商提供的一種運維手段,可以將管理員用戶的權限進行拆分,將部分權限交給其他用戶。從而控制對于云服務資源的訪問。
各云廠商對于訪問控制的名稱不同,阿里云稱之為RAM。
- 利用條件
- 彈性計算配置RAM訪問控制管理角色
- 獲取服務器權限、發現SSRF漏洞、RCE等可以控制目標機器訪問其他地址
配置RAM訪問控制管理角色后獲取元數據會多一項RAM。
依次進行訪問特定地址后通過泄露的元數據信息得到AccessKeyId以及AccessKeySecret即可通過利用工具對目標賬號下的資源進行接管,接管資源根據AK/SK的權限而定,也就是當前彈性計算所配置RAM角色權限大小而定。
根據元數據中泄露的AK/SK可以使用利用工具進一步利用。
云滲透項目CF,目前工具已經閉源,最新開源版本在0.5,網上應該可以找到開源版本。
加固措施
- RAM角色權限過大導致控制臺被接管, 主要還是需要使用者嚴格遵守權限最小化的原則,在為 RAM 角色賦予權限時,避免賦予過高的權限,只賦予自己所需要的權限,這樣可以將影響程度降到最低,但是這并不能治本
- 將實例上的元數據訪問模式設置為加固模式 ,不過這種方法在攻擊人員拿下實例權限后依然會通過獲取token的方法來訪問元數據
參考文章
阿里云控制臺接管
阿里云 ECS 彈性計算服務攻防
總結
以上是生活随笔為你收集整理的云上攻防--云服务&&对象存储(域名接管)&&弹性计算(元数据泄露)的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 你是否想知道如何应对高并发?Go语言为你
- 下一篇: 生产升级JDK 17 必读手册