如何从Docker镜像中提取恶意文件
2023-11-18 00:51:28 Author: 白帽子(查看原文) 阅读量:2 收藏

当发生容器安全事件时,需要从容器或镜像中提取恶意文件进行分析和处理。

本文主要介绍3种常见的方法:

(1) 从运行的容器中复制文件

首先,需要从镜像运行启动一个容器,然后,使用docker cp命令从容器中提取文件到宿主机。

docker run -d --name test test:v1.0 //运行容器docker cp test:/tmp/evil.sh  /tmp/eill.shdocker rm test //删除容器

(2)从tar镜像压缩包提取文件

将镜像保存为tar文件,解压tar镜像文件到宿主机,从分层目录找到目标文件。

docker save -o test.tar test:v1.0tar -xvf test.tar tar -xvf cdbef1ee1b9602e5bd6c1897f0eb4f32c64380e97e0d456e85f7c0920b4d9e7b/layer.tareill.sh

(3)查找Docker容器内文件系统在宿主机上的具体位置

docker文件系统是分层的,镜像在宿主机上有自己的文件系统,可以通过docker inspect 快速定位容器文件系统在宿主机上对应的目录,直接从宿主机上获取目标文件。事实上,这也是最简单最安全的提取恶意文件的方式。

docker inspect  --format={{.GraphDriver}} test:v1.0cd /var/lib/docker/overlay2/f4mfds01uprpk0moaiz2vjg6m/diff


文章来源: http://mp.weixin.qq.com/s?__biz=MzAwMDQwNTE5MA==&mid=2650247135&idx=1&sn=eafddfe31d16a82867c3bb366cb4d2c7&chksm=82ea5476b59ddd60d30239d31a4c7a9f2298a681238f9128251b8f78a007e37f4eb66da84835&scene=0&xtrack=1#rd
如有侵权请联系:admin#unsafe.sh