前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >使用Docker环境快速搭建靶机环境

使用Docker环境快速搭建靶机环境

作者头像
FB客服
发布2018-03-01 10:43:30
2.9K0
发布2018-03-01 10:43:30
举报
文章被收录于专栏:FreeBufFreeBuf

在实际学习中,经常需要模拟不同的漏洞环境,而使用公网的实例的话,多多少少又存在一些风险,因此能搭建一个本地的模拟环境去测试漏洞是一个不错的方案。Docker是近两年来十分流行的开源容器引擎,因此也出现了很多使用Docker容器搭建的靶机环境供新手学习和使用。

这次我们来介绍两款使用docker进行搭建的集成了各种漏洞的靶机环境:

1. 由Phithon维护的Vulhub

项目地址:https://github.com/phith0n/vulhub

Vulhub是一个面向大众的开源漏洞靶场,无需Docker知识,简单执行两条命令即可编译、运行一个完整的漏洞靶场镜像。

2. 由 Medicean 维护的Vulapp项目地址:https://github.com/Medicean/VulApps

Vulapp收集各种漏洞环境,为方便使用,统一采用 Dockerfile 形式。同时也收集了安全工具环境。

下面来介绍下如果用Docker去搭建Vulhub和Vulapps

搭建Vulhub

准备环境:

以下在Ubuntu16.04中操作

1.在ubuntu16.04中安装pip

代码语言:javascript
复制
curl -shttps://bootstrap.pypa.io/get-pip.py | python3

2.安装docker

代码语言:javascript
复制
apt-get update && apt-getinstall docker.io

3.启动docker服务

代码语言:javascript
复制
service docker start

4.安装compose

代码语言:javascript
复制
pip install docker-compose

拉取vulhub

由于国内“不可描述的”原因,使用git clone拉取vulhub可能出现各类不可描述的情况。因此建议直接从github上下载项目就好了

当然,如果你的网络足够稳定的话,也可以使用下面的命令进行拉取。

代码语言:javascript
复制
git clone git@github.com:phith0n/vulhub.git

这里以struts环境为例,打开struts2下的s2-016目录

代码语言:javascript
复制
cd vulhub/struts/s2-016

在线自动化编译docker环境

代码语言:javascript
复制
docker-compose build

注意:

docker自身出错的情况,多出现在使用的docker/docker-compose版本较老时出现的BUG,最好使用最新版docker测试vulhub项目。源码编译失败的情况也可能出现,vulhub中的环境全部基于官方镜像编译,官方镜像可能会更新与升级,linux系统升级后可能造成编译上有一定差别,部分老原来就可能编译不成功了。

如果反复出现编译不了的情况的话,建议使用作者已经编译好并传到dockerhub的镜像:

https://hub.docker.com/u/vulhub/

使用方法是将docker-compose.yml里build: .替换成image:vulhub/xxxx

启动docker环境

代码语言:javascript
复制
docker-compose up -d

这时访问http://your-ip:8080/link.action就可以看到环境已经搭建好了。

这时再去使用struts2的利用工具就可以愉快的测试漏洞了

特别需要注意一点的是,vulhub里的漏洞并不是每一个都需要编译的,建议在运行之前到github上去看下关于特定漏洞的配置说明。

搭建Vulapp

对于没有docker基础的新手,建议使用vulapp的在线拉取镜像。如果国内访问速度很慢的话,建议将docker源替换成国内源:

推荐使用中科大源,替换方法可以参考中科大的说明文档。

Vulapp中每一个漏洞的readme.md文档中包含了详细的安装过程只需按照说明去拉取进行并启动环境即可。

按照使用说明教程搭建了wordpress的phpmailer漏洞复现环境

总结

虽然这里只是使用了github中开源的漏洞复现环境进行了介绍,但是也给很多新人学习漏洞和渗透测试的一个新的思路。Docker可以说是近两年一个特别火热的话题,它以轻巧、简单、开源著称,对于新人来说,使用docker去快速搭建一个靶机环境进行测试莫过于成本最低的一个方法,然而对于不太熟练docker的新手来说,vulapp和vulhub又是一个极为节省时间且十分高效的一个方案。

Vulhub和vulapp都是非常不错的一套靶机环境,这两款靶机环境都涵盖了最近一段时间比较流行的漏洞。特别值得一提的是vulapp不仅仅包含了漏洞还包含了漏洞利用的工具,这也给新人搭建环境测试漏洞提供了便利。这里也要给vulhub和vulapp的维护者点个赞,这两套靶机环境的最近更新时间均为半个月之内,同时也涵盖了最近两个月的漏洞,需要感谢他们的开源才使得更多新人能够更快学到更多知识。

本文参与 腾讯云自媒体同步曝光计划,分享自微信公众号。
原始发表:2017-08-14,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 FreeBuf 微信公众号,前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • 搭建Vulhub
    • 准备环境:
      • 拉取vulhub
        • 在线自动化编译docker环境
          • 注意:
            • 启动docker环境
            • 搭建Vulapp
            • 总结
            相关产品与服务
            容器服务
            腾讯云容器服务(Tencent Kubernetes Engine, TKE)基于原生 kubernetes 提供以容器为核心的、高度可扩展的高性能容器管理服务,覆盖 Serverless、边缘计算、分布式云等多种业务部署场景,业内首创单个集群兼容多种计算节点的容器资源管理模式。同时产品作为云原生 Finops 领先布道者,主导开源项目Crane,全面助力客户实现资源优化、成本控制。
            领券
            问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档