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

相关推荐
鲨莎分不晴2 分钟前
Nginx 部署前端项目实战指南
运维·前端·nginx
yunlong32671 小时前
吊装助理三维结构有限元分析操作教程
安全·有限元·方案·安全分析·吊装·起重·结构计算
羊羊羊i1 小时前
使用Informer监听K8s资源
云原生·容器·kubernetes
VermiliEiz2 小时前
二进制文件部署k8s方式(5)
云原生·容器·kubernetes
java_logo2 小时前
QWEN3 企业级 Docker 容器化部署指南
运维·docker·容器·qwen3部署·qwen3部署文档·qwen3部署教程·qwen3部署方案
huohaiyu2 小时前
网络中的一些基本概念
运维·服务器·网络
Kiyra2 小时前
虚拟机假死?SSH 能连却卡 Logo 界面
运维·ssh
蜂蜜黄油呀土豆2 小时前
计算机网络中的常见网络场景与问题排查
tcp/ip·计算机网络·网络安全·http请求与响应
taihexuelang2 小时前
大模型部署
人工智能·docker·容器
2301_810746313 小时前
CKA冲刺40天笔记 - day24 Kubernetes Clusterrole 和 Clusterrole Binding
笔记·容器·kubernetes