编辑 payload.c 内的 HOST,然后用 make 编译。启动 nc,并在容器内运行 pwn.sh。
/usr/bin/docker-runc 二进制文件,同时也会覆盖容器内的 /bin/sh。docker exec <id> /bin/sh 时能工作。我编写此漏洞利用时所引用的原始提交在这里。
实际发现该漏洞的研究人员已在此处发布了分析文章(链接)。
我还添加了原始漏洞利用 CVE_2019_5736_tar_xz,其工作方式与我的不同。感谢 cyphar 向我指出这一点。