【网络法医】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键折叠/打开文件夹

相关推荐
阿虎儿1 小时前
Docker安装(非sudo用户可用)
docker
甲鱼9293 小时前
MySQL 实战手记:日志管理与主从复制搭建全指南
运维
用户962377954481 天前
DVWA 靶场实验报告 (High Level)
安全
数据智能老司机1 天前
用于进攻性网络安全的智能体 AI——在 n8n 中构建你的第一个 AI 工作流
人工智能·安全·agent
数据智能老司机1 天前
用于进攻性网络安全的智能体 AI——智能体 AI 入门
人工智能·安全·agent
用户962377954481 天前
DVWA 靶场实验报告 (Medium Level)
安全
red1giant_star1 天前
S2-067 漏洞复现:Struts2 S2-067 文件上传路径穿越漏洞
安全
用户962377954481 天前
DVWA Weak Session IDs High 的 Cookie dvwaSession 为什么刷新不出来?
安全
fetasty1 天前
rustfs加picgo图床搭建
docker
蝎子莱莱爱打怪2 天前
GitLab CI/CD + Docker Registry + K8s 部署完整实战指南
后端·docker·kubernetes