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

相关推荐
Lsir10110_7 小时前
【Linux】中断 —— 操作系统的运行基石
linux·运维·嵌入式硬件
醇氧8 小时前
【docker】mysql 8 的健康检查(Health Check)
mysql·docker·容器
darkb1rd8 小时前
八、PHP SAPI与运行环境差异
开发语言·网络安全·php·webshell
天若有情6738 小时前
【自研实战】轻量级ASCII字符串加密算法:从设计到落地(防查岗神器版)
网络·c++·算法·安全·数据安全·加密
技术路上的探险家8 小时前
Ubuntu下Docker与NVIDIA Container Toolkit完整安装教程(含国内源适配)
linux·ubuntu·docker
Doro再努力8 小时前
【Linux操作系统12】Git版本控制与GDB调试:从入门到实践
linux·运维·服务器·git·vim
darkb1rd8 小时前
七、PHP配置(php.ini)安全最佳实践
安全·php·webshell
全栈工程师修炼指南8 小时前
Nginx | stream content 阶段:UDP 协议四层反向代理浅析与实践
运维·网络·网络协议·nginx·udp
Lsir10110_8 小时前
【Linux】进程信号(上半)
linux·运维·服务器
开开心心就好9 小时前
发票合并打印工具,多页布局设置实时预览
linux·运维·服务器·windows·pdf·harmonyos·1024程序员节