镜像打包操作
1,打包镜像文件
bash
docker save -o ghidra_11.3.1.tar ghidra/ghidra:11.3.1_PUBLIC
命令注解:
docker save:导出镜像到文件
-o ghidra_11.3.1.tar:指定输出文件名(.tar格式)
ghidra/ghidra:11.3.1_PUBLIC:需打包的镜像名及标签
2,压缩文件(可选)
bash
gzip ghidra_11.3.1.tar # 生成 ghidra_11.3.1.tar.gz(体积减小约40%)
3,传输到目标机器
bash
scp ghidra_11.3.1.tar.gz user@目标机IP:/目标路径/
镜像加载操作
1,解压文件(若已压缩)
bash
gzip -d ghidra_11.3.1.tar.gz # 解压为 .tar 文件
2,加载镜像到Docker
bash
docker load -i ghidra_11.3.1.tar
命令注解:
docker load:从文件加载镜像
-i:指定输入文件路径
3,验证镜像
bash
docker images | grep ghidra
预期输出:
ghidra/ghidra 11.3.1_PUBLIC a9229af2b4dd X hours ago 1.36GB
使用镜像启动容器
bash
docker run \
--env MODE=headless \
--rm \
--cpus=2 --cpuset-cpus="4,5" \
-m 4g --memory-swap=4g \
--volume /usr/local/tckxsoc/work:/home/ghidra/myproject:rw \
--volume /usr/local/server/siem/python:/home/ghidra/python:ro \
ghidra/ghidra:11.3.1_PUBLIC \
/home/ghidra/myproject tckx_cet \
-import /home/ghidra/myproject/libc.so.6 -scriptPath /home/ghidra/python -preScript ins_options.py -postScript ins_analyze.py -overwrite -deleteProject
Ps:如果有权限报错类问题如:
ERROR Abort due to Headless analyzer error: Permission denied (HeadlessAnalyzer) java.io.IOException: Permission denied
执行下面命令给相关目录授权
bash
chmod -R 777 /usr/local/tckxsoc/work
chmod -R 777 /usr/local/server/siem/python