日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

docker remote api未授权访问漏洞(端口:2375)

發布時間:2025/3/15 编程问答 26 豆豆
生活随笔 收集整理的這篇文章主要介紹了 docker remote api未授权访问漏洞(端口:2375) 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

漏洞介紹:

該未授權訪問漏洞是因為docker remote api可以執行docker命令,從官方文檔可以看出,該接口是目的是取代docker 命令界面,通過url操作docker。

docker swarm是docker下的分布化應用的本地集群,在開放2375監聽集群容器時,會調用這個api

url輸入ip:2375/version就會列出基本信息,和docker version命令效果一樣。

同樣,url為ip:2375/v1.23/containers/json會列出容器信息,和docker ps -a效果一樣。

漏洞利用:

通過docker client執行目標服務器容器命令。

1.列出所有鏡像。

2.列出所用容器

3.進入容器兩種方法:

3.1.

start 啟動一個已經停止的容器

attach 連接一個已經停止的容器

當然這個容器默認entrypoint必須是/bin/bash,關于這點可以在json里看到,還有掛載,后面提權會用到,這個也可以在json文件里看到。

3.2.

新運行一個容器并將entrypoint設置為/bin/bash,掛載點設置為服務器的根目錄掛載至/mnt目錄下

注意:

docker run 只在第一次運行時使用,將鏡像放到容器中,以后再次啟動這個容器時,只需要使用命令docker start 即可。

docker run相當于執行了兩步操作:將鏡像放入容器中(docker create),然后將容器啟動,使之變成運行時容器(docker start)。

wooyun上lijiejie是因為docker client版本不一致調用api去create重構一個容器,并在attach、start后捕獲到輸出

4.服務器提權的幾種方法

4.1

啟動一個容器,掛載宿主機的/root/目錄,之后將攻擊者的ssh公鑰~/.ssh/id_rsa.pub的內容寫到入宿主機的/root/.ssh/authorized_keys文件中,之后就可以用root賬戶直接登錄了。

本地獲取ssh公鑰

將公鑰復制到被攻擊者的/root/.ssh/authorized_keys文件中

ssh連接遠程服務器

4.2

啟動一個容器,掛載宿主機的/etc/目錄,之后將反彈shell的腳本寫入到/etc/crontab中,攻擊機nc -vv -l -p Port會得到一個反彈的shell

因為沒有公網IP,就不試了。

目標機上:

攻擊機上:

4.3

也可以掛載var/spool/cron/目錄,將反彈shell的腳本寫入到/var/spool/cron/root(centos系統)或/var/spool/cron/crontabs/root(ubuntu系統)

總結

以上是生活随笔為你收集整理的docker remote api未授权访问漏洞(端口:2375)的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。