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