如何从Docker镜像中提取恶意文件

共 841字,需浏览 2分钟

 ·

2023-09-18 12:53

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

本文主要介绍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

浏览 1326
点赞
评论
收藏
分享

手机扫一扫分享

分享
举报
评论
图片
表情
推荐
点赞
评论
收藏
分享

手机扫一扫分享

分享
举报