SSRFmap Docker 部署指南:容器化渗透测试环境搭建
SSRFmap 是一款自动化 SSRF 模糊测试与漏洞利用工具,通过 Docker 容器化部署能快速搭建安全、隔离的渗透测试环境。本文将详细介绍如何使用 Docker 一键部署 SSRFmap,让你无需复杂配置即可开展 SSRF 漏洞检测工作。
准备工作:Docker 环境搭建
在开始部署前,请确保你的系统已安装 Docker 和 Docker Compose。如果尚未安装,可以通过官方文档或系统包管理器完成基础环境配置。
克隆项目仓库
首先需要获取 SSRFmap 的源代码,执行以下命令克隆项目:
git clone <repository_url>
cd SSRFmap
构建 Docker 镜像
项目根目录中已提供 Dockerfile,包含完整的环境配置流程。构建命令如下:
docker build -t ssrfmap:latest .
Dockerfile 采用 Alpine 基础镜像,通过多阶段构建安装了 Python 3.12.4 环境、定制化 curl(7.71.0 版本)及项目依赖包(如 Flask、requests 等),确保环境一致性和安全性。
启动容器化测试环境
使用以下命令启动 SSRFmap 容器:
docker run -it --rm ssrfmap:latest ssrfmap.py --help
基础使用示例:网络扫描模块
SSRFmap 提供多种预置模块,例如网络扫描模块可探测内部网络存活主机。执行以下命令启动网络扫描:
docker run -it --rm -v $(pwd)/data:/usr/src/app/data ssrfmap:latest ssrfmap.py -r data/request2.txt -p url -m networkscan
文件读取模块实战
通过 readfiles 模块可利用 SSRF 漏洞读取目标系统文件,例如读取 /etc/passwd:
docker run -it --rm -v $(pwd)/data:/usr/src/app/data ssrfmap:latest ssrfmap.py -r data/request.txt -p url -m readfiles
常用模块路径参考
SSRFmap 提供丰富的漏洞利用模块,主要存放在 modules/目录下,包括:
- 网络扫描模块
- 文件读取模块
- 端口扫描模块
- 数据库访问模块
容器持久化与数据共享
为保存测试结果和配置文件,建议使用数据卷挂载:
docker run -it --rm -v $(pwd)/data:/usr/src/app/data -v $(pwd)/results:/usr/src/app/results ssrfmap:latest ssrfmap.py [参数]
安全注意事项
- 仅在授权环境中使用 SSRFmap 进行渗透测试

