Skip to content

Latest commit

 

History

History
23 lines (12 loc) · 1005 Bytes

Docker 容器逃逸漏洞(CVE-2020-15257).md

File metadata and controls

23 lines (12 loc) · 1005 Bytes

Docker 容器逃逸漏洞(CVE-2020-15257)

漏洞原理、基础知识请阅读以下链接,不再展开:

https://medium.com/nttlabs/dont-use-host-network-namespace-f548aeeef575

或者中文的:

https://mp.weixin.qq.com/s/iNziquZJxcox9453jF8LOg

简要来说,containerd->containerd-shim->runc 的通信模型中,containerd-shim的接口作为abstract unix socket暴露,在docker使用net=host参数启动、与宿主机共享net namespace时,其中的unix socket可以被容器内部访问到,容器中攻击者通过该socket可以通过API控制下游runc进程启动新的恶意镜像,并通过该镜像逃逸。

POC

这个漏洞POC比较简单,只要探测到docker内部有containerd-shim启动的unix socket即可确认。

https://github.com/summershrimp/exploits-open/tree/9f2e0a28ffcf04ac81ce9113b2f8c451c36fe129/CVE-2020-15257

https://github.com/Xyntax/CDK/releases/tag/0.1.6

来源:https://www.cdxy.me/?p=837