vulhub是一个漏洞集成平台,将漏洞环境 docker 镜像,放入即可使用,开箱即用。
一、前置环境准备
(一)系统要求
- 操作系统:openEuler 20.03 LTS
- 部署平台:天枢一体化虚拟仿真平台
(二)安装Docker环境
vulhub通过Docker容器部署,需先在openEuler系统中安装并配置Docker:前期在平台已经制作好了包含Docker环境的设备模版,这里我们就直接拖拽出来使用。
1、一键安装docker-compose
|----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------|
| #下载 Docker Compose 二进制文件 sudo curl -L "https://1ms.run/install/docker-compose/latest/$(uname -s)/$(uname -m)" -o /usr/local/bin/docker-compose #添加执行权限 sudo chmod +x /usr/local/bin/docker-compose #创建软链接 sudo ln -s /usr/local/bin/docker-compose /usr/bin/docker-compose |

2 、 配置Docker镜像加速
由于默认Docker镜像源在国外,拉取镜像可能缓慢,需配置国内镜像加速器(如1ms.run、阿里云等):
|----------------------------------------------------|
| # 编辑Docker守护进程配置文件 sudo vi /etc/docker/daemon.json |
在文件中添加以下内容(若文件不存在则创建):
|-------------------------------------------------------------------------------------------------------------------------|
| { "registry-mirrors": [ "https://registry.docker-cn.com", "https://mirror.baidubce.com", "https://docker.1ms.run" ] } |
保存退出后,重启Docker使配置生效:
|------------------------------------------------------------|
| sudo systemctl daemon-reload sudo systemctl restart docker |
二、 vulhub 部署
(一)拉取 vulhub
|-----------------------------------------------------|
| git clone --depth 1 https://gitee.com/vulhub/vulhub |
(二)vulhub 访问与配置
下载完成后进入vulhub目录
1、核心目录说明
- activemq :Apache ActiveMQ 相关漏洞环境,如 CVE-2016-3088 等反序列化漏洞。
- apache-cas :Apereo CAS 单点登录系统的漏洞环境,如身份验证绕过等问题。
- appweb :Embedthis AppWeb 嵌入式 Web 服务器的漏洞环境,如 CVE-2018-8715 远程代码执行。
- aria2 :轻量级下载工具 Aria2 的漏洞环境。
- bash :Bash Shell 的漏洞环境,最典型的就是 Shellshock(CVE-2014-6271)。
- cacti :网络监控工具 Cacti 的漏洞环境,如 SQL 注入、远程代码执行等。
- cassandra :Apache Cassandra 数据库的漏洞环境。
- coldfusion :Adobe ColdFusion 企业级应用平台的漏洞环境,如文件读取、代码执行。
- confluence :Atlassian Confluence 协作平台的漏洞环境,如 CVE-2022-26134 等远程代码执行。
- contributors.md / contributors_zh-cn.md :项目贡献者名单(英文 / 中文)。
- couchdb :Apache CouchDB 数据库的漏洞环境,如权限绕过、远程代码执行。
- discuz :Discuz! 论坛程序的漏洞环境,如 SQL 注入、代码执行。
- django :Django Web 框架的漏洞环境,如 CVE-2018-14574 等漏洞。
- docker :Docker 自身的漏洞环境,如容器逃逸等。
- drupal :Drupal CMS 的漏洞环境,如 CVE-2018-7600 远程代码执行。
- ecshop :ECShop 电商系统的漏洞环境。
- elasticsearch :Elasticsearch 搜索引擎的漏洞环境,如 CVE-2014-3120 远程代码执行。
- electron :Electron 框架的漏洞环境,如 XSS、代码执行。
- fastjson :Fastjson JSON 解析库的漏洞环境,如反序列化远程代码执行(CVE-2017-18349 等)。
- flask :Flask Web 框架的漏洞环境,如调试模式 PIN 码绕过等。
- fpm :PHP-FPM 的漏洞环境,如 CVE-2019-11043 远程代码执行。
- ghostscript :Ghostscript 文档处理工具的漏洞环境,如命令执行。
- git :Git 版本控制系统的漏洞环境。
- gitea :Gitea Git 服务的漏洞环境。
- gitlab :GitLab DevOps 平台的漏洞环境。
- glassfish :Oracle GlassFish 应用服务器的漏洞环境。
- goad :Active Directory 渗透测试环境。
- hadoop :Apache Hadoop 大数据平台的漏洞环境,如未授权访问、命令执行。
- httpd :Apache HTTP Server 的漏洞环境,如解析漏洞、目录遍历。
- imag :ImageMagick 图片处理工具的漏洞环境,如命令执行。
- influxdb :InfluxDB 时序数据库的漏洞环境。
- jackson :Jackson JSON 解析库的漏洞环境,如反序列化漏洞。
- java :Java 相关通用漏洞环境,如反序列化、JNDI 注入等。
- jenkins :Jenkins CI/CD 平台的漏洞环境,如权限绕过、远程代码执行。
- jira :Atlassian JIRA 项目管理工具的漏洞环境。
- jmeter :Apache JMeter 性能测试工具的漏洞环境。
- joomla :Joomla CMS 的漏洞环境。
- jupyter :Jupyter Notebook 的漏洞环境。
- kibana :Kibana 数据可视化工具的漏洞环境,如未授权访问、代码执行。
- libssh :libssh 库的漏洞环境,如认证绕过(CVE-2018-10933)。
- LICENSE :项目许可证(MIT License)。
- liferay-portal :Liferay Portal 门户系统的漏洞环境。
- log4j :Log4j 日志框架的漏洞环境,即著名的 Log4Shell(CVE-2021-44228)。
- magento :Magento 电商平台的漏洞环境。
- mini-httpd :mini-httpd 服务器的漏洞环境。
- mojarra :Mojarra JSF 框架的漏洞环境。
- mongo-express :MongoDB 管理工具 mongo-express 的漏洞环境,如未授权访问。
- mysql :MySQL 数据库的漏洞环境。
- nexus :Sonatype Nexus 仓库管理工具的漏洞环境。
- nginx :Nginx Web 服务器的漏洞环境,如解析漏洞、目录遍历。
- node :Node.js 相关漏洞环境,如命令执行、XSS。
- ofbiz :Apache OFBiz 电商系统的漏洞环境。
- openssh :OpenSSH 服务的漏洞环境。
- openssl :OpenSSL 库的漏洞环境,如 Heartbleed(CVE-2014-0160)。
- phpmyadmin :phpMyAdmin 数据库管理工具的漏洞环境,如文件包含、SQL 注入。
- phpunit :PHPUnit 测试框架的漏洞环境,如代码执行。
- postgresql :PostgreSQL 数据库的漏洞环境。
- python :Python 相关通用漏洞环境,如 pickle 反序列化。
- rails :Ruby on Rails 框架的漏洞环境,如 CVE-2019-5418 文件读取。
- rce :通用远程代码执行漏洞的演示环境。
- redis :Redis 数据库的漏洞环境,如未授权访问、命令执行。
- ruby :Ruby 相关通用漏洞环境。
- saltstack :SaltStack 自动化运维工具的漏洞环境,如 CVE-2020-11651 远程代码执行。
- scrapy :Scrapy 爬虫框架的漏洞环境。
- shiro :Apache Shiro 权限框架的漏洞环境,如密钥泄露导致的命令执行。
- solr :Apache Solr 搜索引擎的漏洞环境,如未授权访问、命令执行。
- spark :Apache Spark 大数据计算框架的漏洞环境。
- spring :Spring 框架的漏洞环境,如 Spring Cloud Function(CVE-2022-22965)、Spring Boot Actuator 未授权访问。
- struts2 :Apache Struts2 框架的漏洞环境,如 S2-045(CVE-2017-5638)、S2-057 等远程代码执行。
- tests :项目测试脚本。
- thinkphp :ThinkPHP PHP 框架的漏洞环境,如历史版本的 RCE 漏洞。
- tomcat :Apache Tomcat 服务器的漏洞环境,如 CVE-2020-1938 文件读取、后台管理弱口令。
- unomi :Apache Unomi 客户数据平台的漏洞环境。
- uwsgi :uWSGI 应用服务器的漏洞环境。
- weblogic :Oracle WebLogic 应用服务器的漏洞环境,如反序列化远程代码执行(CVE-2020-14882 等)。
- webmin :Webmin 服务器管理工具的漏洞环境。
- wordpress :WordPress CMS 的漏洞环境,如插件漏洞、主题漏洞。
- xxl-job :XXL-JOB 任务调度平台的漏洞环境。
- zabbix :Zabbix 监控系统的漏洞环境。
每个环境目录都包含一个详细的README 文件 ,其中包含重现步骤和使用说明,这里就不作出详细说明。
2、以 appweb 为例
进入appweb找到 README 文件

执行
docker compose up -d
启动成功后登录测试

测试后的清理工作:
docker compose down -v