1安装虚拟机 靶场以及漏洞环境——docker

简介: 安装虚拟机 靶场以及漏洞环境——docker

安装Vmware

 

 

设置虚拟机网络——虚拟机的三种模式

 

 

桥接模式

image.png



使用物理机的网卡来接受和发送数据

 

 

NAT模式

image.png


vmnet1  vmnet8

虚拟机所有系统都可以设置该模式

仅主机

 

 image.png

 

自定义

 

 image.png 

 

 

 

安装靶场

 

 

1.Windows + Apache + Mysql +  Php安装

 

 

 

 

 

 

2.docker 安装

kali更新apt

apt-get update

纯文本

 

apt-get upgrade

纯文本

 

删除更新包

apt-get clean

纯文本

 

 

 

安装docker环境

apt-get install -y docker docker-compose

image.png

纯文本

查看docker docker-compose版本

docker --version
docker
-compose --version
docker
-v

image.png纯文本

 

启动  停止 重启 docker

systemctl start docker
systemctl stop docker
systemctl restart docker

纯文本

 

 

 

   配置加速器

使用Docker的时候,需要经常从官方获取镜像,但是由于显而易见的网络原因,拉取镜像的
过程非常耗时,严重影响使用Docker的体验。
$sudo vim
/etc/docker/daemon.json     //自动创建
{
"registry-mirrors":[
"https://dockerhub.azk8s.cn"
,
"https://reg-mirror.qiniu.com"
,
"https://1rqfztnd.mirror.aliyuncs.com"

]
}


纯文本

 

 

 

使配置器生效

$sudo systemctl daemon-reload #重新加载配置文件
$sudo systemctl restart docker #
重启docker


纯文本

 image.png

可以设置开机自启动

systemctl enable docker &&systemctl start dock

纯文本

 

 

 

漏洞靶场vulhub:

Vulhub是一个面向大众的开源漏洞靶场,无需docker知识,简单执行一条命令即可编译、运
行一个完整的漏洞靶场镜像。
项目地址:https://github.com/vulhub/vulhul
VulApps
:收集各种漏洞环境,统一采用Dockerfile 形式。
项目地址:https://github.com/Medicean/VulApps


克隆靶场
git clone https
://github.com/vulhub/vulhub

wget https
://github.com/vulhub/vulhub/archive/master.zip -O vulhub-master.zip
(我是本地下载,传上去的)

解压
unzip vulhub
-master.zip


纯文本

 

 

 

vulhub使用  (以tomcat弱口令漏洞靶场为例)

cd vulhub
ls

纯文本

 image.png 

 

建立容器

docker-compose build

纯文本

 image.png 

 

启动漏洞环境

docker-compose up -d

纯文本

 

 image.png

访问靶场环境

打开虚拟机浏览器——>  虚拟机ip:8080


 image.png

 

关闭漏洞环境

docker-compose down

纯文本

 image.png 

 

 

 

vulapps靶场搭建

$docker pull medicean/vulapps:s_shiro_1 #下载镜像 $docker run -d -p 0:8080 medicean/vulapps:s_shiro_1 #运行

纯文本

 image.png 

 

按照vulapps使用教程,可直接使用docker 命令拉取相关镜像,以 Struts2 S2-037 漏洞环境为例:  
获取镜像:

root@kali:~#  docker pull medicean/vulapps:s_struts2_s2-037

但在直接安装时出现了问题,提示  
Cannot connect to the Docker daemon at unix:///var/run/docker.sock.  
经查,可采用如下方法解决该错误:

root@kali:~# systemctl enable docker

root@kali:~# systemctl daemon-reload

root@kali:~# systemctl restart docker.service

再运行获取镜像的命令,成功下载了镜像。  
创建并启动容器:

root@kali:~# docker run -d -p 80:8080 medicean/vulapps:s_struts2_s2-037

def46cd77fae38bf26e3cf8e124789b94588e3df86a1ecac8d98093057af862c

#显示一串hash值,表示运行成功

参数说明:
  -d 表示守护形式后台一直运行该容器  
  -p 80:8080 把容器的8080 端口映射到本机的 80 端口(前面的 80 代表物理机的端口,可随意指定。)

二、使用:

访问方式:    http:// IP 地址:端口号/

实际碰到的问题:
安装好后,实际使用这个IP+端口的方式并不能打开  
使用docker ps命令查看,没有在运行

root@kali:~# docker ps
CONTAINER
ID        IMAGE               COMMAND             CREATED             STATUS              PORTS               NAMES

root@kali
:~# docker ps -a
CONTAINER
ID        IMAGE                               COMMAND                  CREATED             STATUS                      PORTS               NAMES
d976cbab9501        medicean
/vulapps:s_struts2_s2-037   "/usr/local/tomcat/b"   27 seconds ago      Exited (1)26seconds ago                       silly_napier

纯文本

 

 

 

使用docker ps -a 命令,发现服务启动后即退出了。

网上的一些办法都试了,但始终会退出,百思不得其解。

使用同样的命令,随便试了一下nginx,居然成功了

root@kali:~# docker run -d -p 8080:80--name webserver nginx

root@kali
:~# docker ps
CONTAINER
ID        IMAGE               COMMAND                  CREATED             STATUS              PORTS                  NAMES
2e04
aa6ba917        nginx            "nginx -g 'daemon of"   17 minutes ago      Up 17minutes       0.0.0.0:8080->80/tcp  webserver

纯文本

 

考虑是否和kali2020不兼容?对这个真的是不熟悉,只能用笨办法,在kali2019环境安装下docker试试。参照下面几条命令可以安装:

root@kali:~# curl -fsSL http://mirrors.zju.edu.cn/docker-ce/linux/debian/gpg | sudo apt-key add -

纯文本

 

root@kali:~#echo'deb http://mirrors.zju.edu.cn/docker-ce/linux/debian/ buster stable'| sudo tee /etc/apt/sources.list.d/docker.list

纯文本

 

root@kali:~#apt-get update

纯文本

 

root@kali:~#apt-get install docker-ce

纯文本

 

安装完成,检测一下版本:

root@kali:~# docker -v

纯文本

 

Docker version 19.03.6, build 369ce74a3c

纯文本

 

老方法启动模块:

root@kali:~# docker run -d -p 80:8080medicean/vulapps:s_struts2_s2-037

纯文本

 

0c1c0cfa6a513182048d50979641e172ea2caf281f2731e54c991796a601df3b

纯文本

 

root@kali:~# docker ps

纯文本

 

CONTAINERID        IMAGE                               COMMAND                  CREATED             STATUS              PORTS                  NAMES

纯文本

 

0c1c0cfa6a51        medicean/vulapps:s_struts2_s2-037   "/usr/local/tomcat/b"   4 seconds ago       Up 3 seconds        0.0.0.0:80->8080/tcp  lucid_montalcini

纯文本

 

居然成功了!为搭建这个环境绕了好几天,真心累,不过看到终于可以成功访问,再累也值了。

网络图片:https://ucc.alicdn.com/images/user-upload-01/2020052215295667.png?x-oss-process=image/watermark,type_ZmFuZ3poZW5naGVpdGk,shadow_10,text_aHR0cHM6Ly9ibG9nLmNzZG4ubmV0L3hnY2hlbmdoYWk=,size_16,color_FFFFFF,t_70

附其他漏洞模块地址:BashImageMagickOpenSSLStruts2WordPressZabbix


image.png


访问虚拟机ip:端口号

docker ps


image.png

 

 image.png

 

 

提升建议:

1phpstudyLAMP环境搭建漏洞靶场 2、自己搭建DVWAsqli-labsupload-labs靶场 3、使用docker搭建vulhubvulapps靶场

 

 

git clone https://github.com/vulhub/vulhub

相关文章
|
3月前
|
消息中间件 监控 Docker
Docker环境下快速部署RabbitMQ教程。
就这样,你成功地用魔法召唤出了RabbitMQ,还把它和你的应用程序连接了起来。现在,消息会像小溪流水一样,在你的系统中自由流淌。别忘了,兔子们不喜欢孤独,他们需要你细心的关怀,不时地监控它们,确保他们的世界运转得井井有条。
208 18
|
3月前
|
存储 NoSQL MongoDB
Docker中安装MongoDB并配置数据、日志、配置文件持久化。
现在,你有了一个运行在Docker中的MongoDB,它拥有自己的小空间,对高楼大厦的崩塌视而不见(会话丢失和数据不持久化的问题)。这个MongoDB的数据、日志、配置文件都会妥妥地保存在你为它精心准备的地方,天旋地转,它也不会失去一丁点儿宝贵的记忆(即使在容器重启后)。
317 4
|
3月前
|
Ubuntu 机器人 开发者
Docker环境下的ROS Noetic:Ubuntu 20.04 系统下的解决方案
这就是在Docker环境下安装ROS Noetic在Ubuntu 20.04系统的一种简单方法,希望能对你有所帮助。
349 16
|
3月前
|
Linux iOS开发 Docker
MyEMS开源系统安装之Linux/macOS上的DOcker
本指南详细介绍了如何在Linux/macOS上使用Docker部署MyEMS系统。主要内容包括:前置条件(如安装Docker、npm和MySQL),以及分步骤部署各个组件(如myems-api、myems-admin、myems-modbus-tcp等)。每个步骤涵盖源代码复制、环境配置、镜像构建、容器运行及日志管理等操作,并提供了多平台构建的支持。最后,指南还说明了默认端口和登录凭据,帮助用户快速启动并访问MyEMS的管理界面和Web界面。
112 1
|
4月前
|
关系型数据库 MySQL 数据库
Docker 安装常用软件相关命令
本文介绍了在CentOS 7.9系统上安装Docker的详细步骤,包括添加阿里云镜像源、安装Docker及相关组件、启动服务以及配置镜像加速。同时,还展示了如何通过Docker安装MySQL 5.7版本数据库,涵盖拉取镜像、创建数据目录、运行容器及配置挂载点等操作,并提供验证安装成功的命令和截图。适合需要部署Docker与MySQL环境的用户参考。
275 6
|
4月前
|
存储 弹性计算 Linux
安装Docker
常见操作系统安装docker步骤
448 15
|
4月前
|
Docker 容器
在openEuler 22.03 LTS上安装Docker CE和Docker Compose
以上就是在openEuler 22.03 LTS上安装Docker CE和Docker Compose的过程。希望这个指南能帮助你顺利完成安装。
854 12