基于docker的网络安全靶场搭建

VSole2021-10-27 06:36:08

#1背景介绍

在学习网络安全技术过程中,我们往往需要有一个自己的操作机与多个用来搭建环境的靶机,使用VM虚拟机模拟资源占用较大,成本高、局限性大且使用十分不便。

这时我们可以使用一台安装好Docker环境的linux虚拟机来完成桌面版操作机与WEB靶机的搭建与实验操作。

Docker 包括三个基本概念:

● 镜像Image)

● 容器(Container)

● 仓库Repository)

操作机与靶机制作:

● kali操作机:kali-top10、xfce、xrdp 

 web靶机:tomcat、mysql、ssh

~不用纠结 操作机肯定是有图形化桌面,简单易懂安装步骤与复制粘贴的操作命令。

事先准备一台linux主机,并且已安装好docker环境。centos安装docker环境如下:

查询可安装版本:
yum list docker-ce --showduplicates | sort -r
安装docker-ce:
yum install docker-ce-20.10.6 docker-ce-cli-20.10.6  containerd.io
查看是否安装成功:
docker version或者docker info
安装启动docker: 
systemctl start docker
开机自启:
systemctl enable docker

#2操作机制作

一、操作机基础工具安装

操作机:拉取kali基础镜像,安装基础工具包、GUI,配置XRDP进行远程控制。

1、搜索kali基础镜像:


docker search kali

图中kalilinux/kali-rollingkalilinux/kali镜像都可使用。

2、拉取基础镜像:

docker pull kalilinux/kali-rolling

3、查看拉取镜像:

docker images

4、启动容器:

docker run -itd -p 3399:3389 kalilinux/kali-rolling /bin/bash

 

输出容器ID表示启动成功。

5、查看容器信息:

docker ps

6、进入容器:

docker attach ID

7、安装基础环境包:

apt-get -y update && apt-get -y upgrade && \
   DEBIAN_FRONTEND=noninteractive apt-get install -y \
   kali-tools-top10 \
   pciutils \
   vim \
   iputils-ping \
   bash-completion && \
   apt-get autoremove -y && \
   apt-get clean

●kali-tools-top10:最常用的工具,推荐其他kali-Metapackages kali-linux-default:“默认”桌面 (amd64/i386) 图像包括这些工具、kali-linux-large:我们以前用于 amd64/i386 图像的默认工具、kali-linux-everything:这里列出的每个元包和工具(选择安装自己需要的软件包)。

 pciutilslspci工具

● bash-completion :命令自动补全

● vim :文本编辑器

● iputils iputils软件包是linux环境下一些实用的网络工具的集合

等待安装完成......

8、生成镜像:

docker commit ID kali-2021

在容器内安装需要的基础工具与命令后,将容器重新打包成新的镜像。

二、远程桌面环境安装

1、使用新镜像生成容器并进入容器:

docker run -itd -p 3399:3389 kali-2021

这次运行容器需映射xrdp的端口,不带bash因与xfce存在冲突。

2、进入容器:

docker exec -it ID /bin/bash

临时开启bash, 如果从这个容器退出,容器不会停止。

3、更换Kali源:

vi /etc/apt/source.list
deb http://mirrors.ustc.edu.cn/kali kali-rolling main non-free contrib
deb-src http://mirrors.ustc.edu.cn/kali kali-rolling main non-free contrib
apt-get update

4、安装桌面环境相关服务:

apt-get -y install kali-desktop-xfce xorg xrdp

● kali-desktop-xfce :安装远程桌面环境

● xrdp :远程桌面服务

 xorg:xorg是x11的一个实现,xorg提供X server

访问 Kali GUI 的一种简单方法是安装 Xfce 并设置 XRDP。

5、配置xrdp实现远程连接图形界面

sed -i 's/port=3399/port=3389/g' /etc/xrdp/xrdp.ini
service xrdp restart

6、打开远程桌面进行登录:

这时就可以打开远程桌面连接对docker版kali操作机的XRDP进行连接。第一次连接一般会出现登录错误,需修改容器的root用户密码。

7、修改root用户密码:

passwd root

修改成功。

8、再次登录XRDP:

输入修改账号密码。

访问成功,开始使用吧。

#3WEB靶机制作

WEB靶机 :mysql数据库、tomcat服务、搭建JAVAWEB应用。

1、拉取基础镜像:

docker run -d --name="tomcat-mysql-run" -e MYSQL_PASSWORD=root -p 1306:3306 -p 1080:8080 aallam/tomcat-mysql

数据密码为root,映射端口 1306 、1080 。

2、进入已运行容器:

docker exec –it ID /bin/bash

3、进入容器修改mysql配置信息:

● 新建文件夹:mkdir -p /data/mysql

● 修改MYSQL数据库配置文件:vi /etc/mysql/my.cnf

● datadir =/data/mysql

因容器对数据库的数据存放文件路径进行本地映射,不存放在的容器里,如不修改数据存放文件,容器关闭时数据也将丢失。

4、连接mysql数据库:

输入主机、端口(1306)、用户名、密码,连接成功。

5、导入数据库,运行.sql文件:

6、访问主机的1080 端口:

7、进入tomcat的管理界面,上传WAR包文件:

8、点击访问上传的war网站:

访问成功,开始测试吧。

#4

文章总结

文章主要讲述docker实验环境搭建,从无到有定制化自己的操作机与靶机,无docker命令基础也可以按照文章一步步搭建环境,以制作环境为目的而不是单纯的命令使用。主要掌握在制作过程中使用到的docker命令。

docker操作机
本作品采用《CC 协议》,转载必须注明作者和本文链接
事先准备一台linux主机,并且已安装好docker环境。centos安装docker环境如下:查询可安装版本:
事先准备一台linux主机,并且已安装好docker环境。centos安装docker环境如下:查询可安装版本:
1) Namp收集信息 2) 简单文本文件登录脚本 (SiTeFiLo) 1.0.6 - 文件泄露/远程文件包含 3) 空间越权(CVE-2018-18955) 4) hydra爆破 5) Vim提权 2.漏洞 1) CVE-2008-5763/2008-5762 2) CVE-2018-18955
Bughound是一款开源的静态代码分析工具,可以帮助广大研究人员分析自己的代码,并将结果发送至Elasticsearch和Kibana,以更好地审查代码中潜在的安全漏洞。
前言实际渗透测试中,有些漏洞因为没有回显导致无法准确判断漏洞是否存在,可能导致渗透测试人员浪费大量精力在一个并不存在的漏洞上,因此为了验证一些无回显漏洞,
02WiresharkWireshark是一种流行的网络协议分析器,可在各大操作系统上运行。Jok3r的说明文档尚在完善中,但模块组合使其成为一款强大的工具。08sqlmapSQL注入是一种常见的攻击途径,主要针对接受用户动态值的数据驱动型Web应用程序实施攻击,因此sqlmap之类的工具必不可少。11Aircrack-ngAircrack-ng是一整套Wi-Fi网络安全测试工具,旨在评估Wi-Fi网络的安全。所有工具都是命令行工具,以便编写大量脚本,许多GUI利用了这项功能。无论选择哪一款工具,都应确保它们仍受到积极支持。
安全测试是一项工作量很大的任务,安全团队没有时间或足够人手完成这项任务。
前言获取某个系统shell后发现其是docker,这时候我们就需要进行docker逃逸来拿到其真正宿主的权限
这篇文章主要收集一些常见的未授权访问漏洞。未授权访问漏洞可以理解为需要安全配置或权限认证的地址、授权页面存在缺陷导致其他用户可以直接访问从而引发重要权限可被操作、数据库或网站目录等敏感信息泄露。
VSole
网络安全专家