Docker釋出一個容器逃逸漏洞,攻擊者利用該漏洞可以實作容器逃逸,提升特權并破壞主機。 containerd使用的抽象套接字僅使用UID做驗證,即任意UID為0的程序均可通路此API。
當使用docker run --net=host 拉起一個容器時,容器将擷取主控端的網絡權限,此時可以通路containerd的API,執行危險操作。
containerd 1.2.x
containerd < 1.4.3
containerd < 1.3.9
可能還會有其他版本
注意:安裝更新前,請做好資料備份、快照和測試工作,防止發生意外
1. 更新 containerd 至最新版本。
containerd >= 1.4.3
containerd >= 1.3.9
2. 通過添加如 deny unix addr=@**的AppArmor政策禁止通路抽象套接字。
https://research.nccgroup.com/2020/11/30/technical-advisory-containerd-containerd-shim-api-exposed-to-host-network-containers-cve-2020-15257/