【网络法医】Docker取证

【网络法医】Docker取证

1.docker变更记录取证

如果怀疑docker容器被破坏。例如如下wordpress容器:

bash 复制代码
docker ps
CONTAINER ID        IMAGE               COMMAND             CREATED             STATUS              PORTS               NAMES
cc03e43a052a        lamp-wordpress      "./run.sh"          2 minutes ago       Up 2 minutes        80/tcp              wordpress

可以通过docker diff wordpress命令来查看容器的变更记录(记录的开头部分,C 代表 Changed,而 A 代表 Added):

bash 复制代码
docker diff wordpress
C /var
C /var/lib
C /var/lib/mysql
A /var/lib/mysql/ib_logfile0
A /var/lib/mysql/ib_logfile1
A /var/lib/mysql/ibdata1
A /var/lib/mysql/mysql
A /var/lib/mysql/mysql/time_zone_leap_second.MYI
A /var/lib/mysql/mysql/general_log.CSV

如果你发现某个文件,比如 /etc/shadow 被修改了,可以使用以下命令从容器中下载它,检查恶意活动:

bash 复制代码
docker cp wordpress:/etc/shadow.

也可以访问容器并检查:

bash 复制代码
docker exec -it wordpress bash

2.docker镜像取证

当我们只有一个导出的 docker 映像(可能是 .tar 格式)时,可以使用 container-diff 来提取修改记录:

bash 复制代码
container-diff analyze -t sizelayer image.tar
container-diff analyze -t history image.tar
container-diff analyze -t metadata image.tar

然后,可以解压缩映像并访问 blobs 以搜索可能在更改历史中发现的可疑文件:

bash 复制代码
tar -xf image.tar

3.工具取证

为了在docker镜像中查找添加/修改的文件,可以使用 dive 开源工具:

dive取证工具

使用命令:

bash 复制代码
sudo dive flask:latest

此工具能够浏览不同的 Docker 镜像块并检查哪些文件被修改/添加。红色表示添加,黄色表示修改。使用tab键切换到其他视图,使用space键折叠/打开文件夹

相关推荐
小义_5 分钟前
【Kubernetes】(七) 控制器2
linux·运维·云原生·kubernetes·红帽
WJ.Polar12 分钟前
Ansible任务控制
linux·运维·网络·python·ansible
小猿姐15 分钟前
数据库漏洞自动同步,KubeBlocks Addon 安全能力再升级
数据库·安全
计算机安禾25 分钟前
【Linux从入门到精通】第10篇:软件包管理——Linux如何安装与卸载软件
java·linux·运维·服务器·编辑器
wellc28 分钟前
Nginx作用以及应用场景
运维·nginx
其实防守也摸鱼29 分钟前
部署本地AI大模型--ollma
人工智能·安全·ai·大模型·软件工程·本地大模型
SilentSamsara29 分钟前
etcd 运维:数据一致性、备份恢复与性能调优
运维·服务器·数据库·kubernetes·kubectl·k8s·etcd
lclcooky33 分钟前
Nginx代理到https地址忽略证书验证配置
运维·nginx·https
深藏功yu名33 分钟前
Docker+FastAPI+千问API,复刻豆包式流式聊天界面
docker·容器·fastapi
前端达人36 分钟前
第12课:MCP 与 Hooks——给 Claude Code 装上插件和自动化引擎
运维·自动化